恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

Ruffle 如何用 WiX 构建 Windows 的 .msi 安装包?

  • 首页
  • 资讯中心
  • /
  • Ruffle 如何用 WiX 构建 Windows 的 .msi 安装包?

相关资讯

Vitest 测试上下文完全指南:内置上下文、test.extend 夹具与源码级实现解析 2026/9/14 16:54:10
AI替代白领劳动:技术路径与生存策略 2026/9/14 16:54:10
脉冲神经网络研究现状与顶刊论文价值分析 2026/9/14 16:49:09

最新资讯

自举开关原理与SAR ADC高精度采样设计实战
STM32矩阵键盘扫描与GPIO中断优化实战
增量式状态空间MPC在工业控制中的优势与实现
SQP优化器原理与MATLAB实现详解
gpui-kit 中 `readonly` 与 `read_only` 的 API 命名决策:跨生态调研与源码实践
算力不够怎么办?毕设深度学习、渲染、仿真应急方案指南

今日推荐

ASP+Access库存管理系统源码部署与IIS配置实战指南
基于SSM框架的毕业季旧物分类处理系统设计与实现
MATLAB FFT频谱仿真:从DFT原理到参数设置与窗函数选择

本周热门

AI SDK Harness 依赖更新指南:掌握 harness 包 SDK 依赖的升级、桥接同步与一致性校验
Refine v5 Ant Design NumberField 组件实战:基于 Intl 的本地化数字格式化
Flutter应用改名全指南:从Android到iOS的配置与工具实践

本月精选

自研推理加速器Redwood:两周内实现PyTorch模型高效部署的实战教程
V4L2摄像头采集实战:从camera_client.rar到出图全流程解析
从“谁发明了钢琴键”到知识问答智能体:RAG与记忆工程实践

Ruffle 如何用 WiX 构建 Windows 的 .msi 安装包?

发布时间:2026/9/14 16:54:10
Ruffle 如何用 WiX 构建 Windows 的 .msi 安装包? Ruffle 如何用 WiX 构建 Windows 的 .msi 安装包【免费下载链接】ruffleA Flash Player emulator written in Rust项目地址: https://gitcode.com/GitHub_Trending/ru/ruffle如果你需要把 Ruffle 桌面版打包成 Windows 的.msi安装包仓库里已经备好了完整的 WiX 工程desktop/packages/windows/wix/目录下的 ruffle.wxs 是安装包定义文件dialog.wxi 是自定义安装界面README 说明了前置条件、环境变量和构建命令。整条路径是装好 WiX 命令行工具 → 准备好已编译的ruffle_desktop.exe→ 设置RUFFLE_VERSION环境变量 → 在 wix 目录下执行wix build得到.msi文件。准备 WiX 命令行环境按照 wix 目录 README 的 Prerequisites 一节需要安装 WiX Toolset 命令行工具并添加两个扩展dotnet tool install --global wix wix extension add -g WixToolset.UI.wixext wix extension add -g WixToolset.Util.wixext两个扩展的用途可以从ruffle.wxs里看出来UI扩展提供ui:WixUI_InstallDir_NoLicense这套安装向导Util扩展提供util:PermissionEx用于给安装目录授权见 ruffle.wxs 中的EnsureDirectoryWritable组件。另外构建安装包的前提是要有一个 Ruffle 桌面版可执行文件。README 给出两条路完整构建cargo build --release即仓库 README 中 Building from source 一节的桌面构建流程要求最新 stable 版 Rust以及 PATH 上可用的java或者已经有现成的exe放在仓库根目录下的target/release/ruffle_desktop.exe即可。设置构建所需的环境变量构建前必须处理两个环境变量README 的 Environment variables 一节对此有明确说明变量是否必需说明RUFFLE_VERSION必需本 MSI 所包含的 Ruffle 版本格式为1.2.3或1.2.3.4第四段值在 Windows 判断是否同版本或更新时会被忽略CARGO_BUILD_DIR可选ruffle_desktop所在文件夹默认值是 wix 目录相对仓库根的../../../../target/releaseRUFFLE_VERSION会被 ruffle.wxs 直接读取为Package的Version属性没有它构建会失败CARGO_BUILD_DIR则在 ruffle.wxs 中通过?ifdef env.CARGO_BUILD_DIR?分支解析未设置时回退到默认路径。执行 wix build 生成 .msi在desktop/packages/windows/wix目录下执行 README 给出的构建命令wix build ruffle.wxs -ext WixToolset.UI.wixext -ext WixToolset.Util.wixext -arch x64命令中各参数的作用以 README 为准-arch x64将 msi 标记为 x64 架构。改成-arch x86会把它标记为 x86例如安装到Program Files (x86)-o foo.msi控制 MSI 输出位置例如-o setup.msi-pdbtype none可选禁用.wixpdb生成。构建成功后.msi会出现在-o指定的位置未指定-o时由 WiX 使用默认输出位置。从产物内容上核对是否构建正确可以对照 ruffle.wxs 的打包内容安装包会把$(CargoBuildDir)/ruffle_desktop.exe以ruffle.exe的名称装进安装目录的bin子目录附带根目录的 LICENSE.md、开始菜单与桌面快捷方式并把安装目录加入PATHEnvironment子功能。安装包行为的关键细节阅读ruffle.wxs时有几个直接影响打包结果的设计值得知道UpgradeCode 决定是否是同一个包。ruffle.wxs 中UpgradeCode固定为C6A4BA50-FA08-4B87-9B55-D81A1C730D25MajorUpgrade配置了AllowSameVersionUpgradesyes和降级提示语。源码注释明确提示把UpgradeCode改成别的值msi 就会被视为一个不同的包适合本地测试安装而不干扰正式版本。文件关联。安装时注册Ruffle.swf、Ruffle.spl、Ruffle.ruf三个ProgId及对应的.swf/.spl/.ruf扩展名并向OpenWithProgids写入条目使 Ruffle 出现在打开方式对话框中见 ruffle.wxs 的Associations与ApplicationInfo组件。自定义安装对话框。dialog.wxi 基于 WiX 的WixUI_InstallDir改写去掉了许可协议页并在安装目录页RuffleInstallDirDlg即文首截图对应界面加入了在桌面创建快捷方式的勾选框由INSTALLDESKTOPSHORTCUT属性控制。与发布流水线的差异仓库的发布工作流 .github/workflows/release.yml 展示了 CI 环境下同一套构建的完整形态可作为对照WiX 版本被固定为 5.0.2dotnet tool install --global wix --version 5.0.2两个扩展也锁定WixToolset.UI.wixext/5.0.2和WixToolset.Util.wixext/5.0.2本地手动构建时 README 未指定版本装到最新即可可执行文件来自--profile dist的构建CARGO_BUILD_DIR因此设置为../../../../target/${{ matrix.target }}/dist而不是默认的target/release输出命令为wix build ruffle.wxs -ext WixToolset.UI.wixext -ext WixToolset.Util.wixext -arch ${{ matrix.MSI_ARCH }} -o ../../../../package/setup.msi -pdbtype none即发布产物落在package/setup.msi随后被7z压缩进最终的PACKAGE_FILE分发包RUFFLE_VERSION取流水线输出的四位版本号version4。也就是说发布产物除了用distprofile 构建的 exe 之外与上面手动构建的流程是同一份ruffle.wxs。限制与边界架构只能在x64和x86之间选择-arch参数决定 msi 的架构标记与默认安装目录构建本身不会改变 exe 的位数ruffle_desktop.exe必须与所选-arch匹配RUFFLE_VERSION的第四段版本号在 Windows 的版本比较中会被忽略这是 Windows 自身的版本判定行为不是 WiX 的取舍本文只覆盖桌面版 MSI 打包。浏览器扩展、Web 版和 Android 版走的是 README 中各自独立的构建路径与本流程无关。【免费下载链接】ruffleA Flash Player emulator written in Rust项目地址: https://gitcode.com/GitHub_Trending/ru/ruffle创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号