【问题标题】:Really struggling to get how WiX works真的很难理解 WiX 的工作原理
【发布时间】:2021-04-24 07:35:22
【问题描述】:

我正在开发一个 WPF 项目。我创建了一个与主项目一起运行的 Wix 项目,它有一个 program.cs 组件以及 XML 文件。

虽然我可以看到它在重新构建项目时创建了安装程序,但我不清楚的是为什么我没有实际的 WPF 项目在其中或作为其中的一部分。所以当我运行它时,我真的没有安装任何东西。只是一个 shell program.cs 文件,它是 Wix 项目的一部分。

我根本没有得到实际的项目。那么如何有效地将 WPF 项目“添加”到 WiX 项目中,以便生成 .exe 或 .msi 文件。

当我使用 Windows 原生构建项目时,我能够得到这个,但是它真的很乏味。

谢谢, 易卜拉欣

【问题讨论】:

  • 这段 YT 视频对我帮助很大,当我想在我的 VS 解决方案中包含一个 WiX 安装程序时......我希望它也能帮助你......youtube.com/watch?v=-wyUxQux7xY
  • 我建议阅读github.com/iswix-llc/iswix-tutorials 并观看youtube.com/watch?v=nnV_OU6fk8c。我是 IsWiX 的作者。如果你能找到我的电子邮件地址,请联系我。我提供免费的 1 小时 MSI/WIX 教程课程,可以帮助您入门。如果您希望其他人做我提供的咨询工作。
  • WiX Quick Start Short VersionWiX Quick Start link collection。您编译二进制文件,然后将它们作为完成的二进制文件而不是源文件包含在 WiX 源文件中。 Random sample from Github.com
  • 您可以将代码和设置项目包含在同一个解决方案中。从 WiX 项目中添加对代码项目的引用,您可以使用以下构建变量:$(var.ProjectName.TargetFileName) 根据调试和发布版本以及位数等解析输出位置...

标签: c# wpf installation wix windows-installer


【解决方案1】:

了解 WiX 的工作原理主要是了解 Windows Installer 的工作原理。 WiX 主要是一种用于创作和构建 Windows Installer (.MSI) 数据库文件的语言和编译器。它确实有一些额外的扩展和创建引导程序/链接程序 (.EXE) 的能力,这是需要理解的额外技术。

MSI 和 WiX 应该被认为是声明式编程而不是命令式编程。您描述产品、UI 体验、功能/组件/资源关系或需要安装的“什么”,MSI 处理“如何”安装它。

【讨论】:

    【解决方案2】:

    这里也是 WiX 新手。我发现本教程对入门很有帮助:Create a simple setup。它会引导您在 Visual Studio 中创建一个新的 WiX 项目。它创建了一个非常简单的安装程序(例如,甚至没有向“开始”菜单添加快捷方式),但我认为这将有助于您了解 WiX 的工作原理。

    在您完成上述示例后,我建议您阅读本教程:How To: Create a Shortcut on the Start Menu。注意:我发现在页面底部复制/粘贴整个代码示例,替换 WiX Visual Studio 项目中默认 Product.wxs 文件中的所有内容,然后根据需要替换对您自己文件的引用更容易。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-22
      • 2012-12-17
      • 1970-01-01
      • 2014-02-03
      • 2015-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多