gpt4 book ai didi

visual-studio-2012 - 是否可以使用 Visual Studio 2012 编译器针对 Windows Installer 3.0?

转载 作者:行者123 更新时间:2023-12-04 14:46:32 24 4
gpt4 key购买 nike

最近,Microsoft 放弃了放弃对带有 Visual Studio 2012 Update 1 的 Windows XP 支持的决定。我们的产品经理告诉我,我可以转而使用提供的 Visual Studio 2012 编译器:

  • 我们将继续支持我们的 Windows XP 客户。
  • 除了 Windows XP SP3,我们不会引入任何额外的先决条件(因为我们与一些客户签订了这方面的契约(Contract))。

  • 我尝试将我们的解决方案转换为使用 VC2012 XP 工具集,现在从代码的角度来看,一切都运行良好。但是,我们的 WiX 安装程序项目提示我们现在试图包含 VC2012 运行时合并模块并且这些仅支持 Windows Installer 4.5。此版本的 Windows Installer 在 Windows XP SP3 中不可用,因此这意味着我们的客户必须安装 Windows Installer 4.5 Redistributable 软件包才能安装我们的产品。

    是否可以解决此问题并仍然以支持 Windows Installer 3.0 的方式使用这些合并模块?

    所以我们目前正在设置:
    <Package InstallerVersion="300" />

    但是合并模块似乎需要我们设置:
    <Package InstallerVersion="405" />

    这意味着我们无法开箱即用地支持 Windows XP SP3。

    这是来自 WiX 的错误:

    warning LGHT1104: Merge module 'Microsoft_VC110_ATL' has an installer version of 405 which is greater than the product's installer version of 300. Merging a module with a higher installer version than the product it is being merged into can result in invalid values in the resulting msi. You must set the Package/@InstallerVersion attribute to 405 or greater to merge this merge module into your product.

    最佳答案

    随您的产品安装 Windows Installer 4.5。 It is available适用于 Windows XP SP2 和 SP3。毕竟,VC 2012 运行时也不随 Windows XP 一起提供。

    您可能会坚持认为您只能将产品安装为 MSI。与任何需要的合并模块。使用 WiX 的 Bootstrapper 项目(WiX 3.6 及更高版本),您可以轻松创建一系列安装程序并将它们捆绑到一个 EXE 文件中。该引擎(称为 Burn )也可以处理任何需要的重新启动。如果您安装了最新版本的 WiX,那么您已经看到了实际效果。

    如果你走这条路,你也可以从你的 MSI 中删除合并模块,而不是所有 VC 2012 runtime到你的链条。

    关于visual-studio-2012 - 是否可以使用 Visual Studio 2012 编译器针对 Windows Installer 3.0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17042380/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com