把 .swf 默认关联到 Ruffle 与命令行参数
把 .swf 默认打开方式改成 Ruffle
Windows
- 右键任意一个
.swf文件 - 选「打开方式 → 选择其他应用」
- 找到
ruffle.exe所在位置(建议解压到固定路径比如C:\Tools\ruffle\) - 勾选「始终使用此应用打开 .swf 文件」
- 点「确定」
设置完之后双击任何 .swf 都会直接进 Ruffle。以后想改回别的(比如临时想换 Flashpoint 打开),同样的流程在「选择其他应用」里换一下。
macOS
- 右键
.swf→「显示简介」 - 展开「打开方式」,选
Ruffle.app - 点下面的「全部更改」→ 在弹窗里确认
Linux
不同发行版的文件管理器 GUI 操作略有差异,最稳的是命令行:
mkdir -p ~/.local/share/applications
cat > ~/.local/share/applications/ruffle.desktop <<'EOF'
[Desktop Entry]
Type=Application
Name=Ruffle
Exec=/path/to/ruffle %f
MimeType=application/x-shockwave-flash
EOF
update-desktop-database ~/.local/share/applications
常用命令行参数
Ruffle 桌面版支持的命令行参数,在 ruffle.exe --help 里有完整列表。日常用得最多的几个:
| 参数 | 作用 |
|---|---|
game.swf | 直接加载指定的 SWF |
--url https://... | 加载远程 SWF(等价于 url: 前缀) |
--verbose | 打印详细日志到控制台,排查 bug 必备 |
--fullscreen | 启动后直接全屏 |
--mute | 启动后静音 |
--volume N | 设置音量 0~100 |
--scale-mode NAME | 强制缩放模式(showAll / exactFit / noBorder / noScale) |
--force-scale | 配合 scale-mode 强制覆盖 SWF 内部设置 |
--width N --height N | 强制初始窗口尺寸 |
--backend NAME | 强制渲染后端(wgpu / cpu) |
--language NAME | 强制 UI 语言 |
--headless | 无头模式,不弹窗口——跟 Exporter / Scanner 配合用 |
--version | 只打印版本号,退出 |
--help | 打印完整帮助 |
批量加载与脚本示例
一次加载多个文件:
ruffle.exe game1.swf game2.swf game3.swf
Ruffle 会把它们排进最近打开列表,你可以在「文件 → 打开最近」里快速切换。
用 PowerShell 脚本批量启动并加载日志:
$swf = "C:\games\old-flash.swf"
ruffle.exe --verbose --fullscreen $swf 2>&1 | Tee-Object -FilePath ruffle.log
Tee-Object 会同时把日志打到控制台和落盘到 ruffle.log,方便事后翻。
进阶:让 .swf 关联带参数
Windows 下可以改注册表让所有双击启动的 Ruffle 都自动带 --verbose:
- Win+R 跑
regedit - 找到
HKEY_CLASSES_ROOT\.swf\OpenWithProgids(如果没有.swf就新建) - 在
HKEY_CLASSES_ROOT\Applications\ruffle.exe\shell\open\command里把默认值改成:"C:\Tools\ruffle\ruffle.exe" --verbose "%1"
改完后双击任何 .swf 都会自动开 verbose 日志。