【问题标题】:Wix setup project's exe "app can't run on your PC"Wix 安装项目的 exe “应用程序无法在您的 PC 上运行”
【发布时间】:2015-01-16 13:42:10
【问题描述】:

在 VS2012 中,我为应用程序创建了一个 Wix3.6 安装项目。安装程序输出类型在属性选项卡上设置为 可执行包 (.exe)。安装项目按预期编译并生成 .exe。

双击 .exe 会产生以下消息:

此应用无法在您的 PC 上运行。

以管理员身份执行 .exe 并授予提升权限,机器说:

Windows 找不到“C:\abc\xyz.exe”。请确保您输入的名称正确,然后重试。

谷歌搜索显示错误消息可能与架构相关。

事实:

  • 机器是 Windows 8,64 位。
  • 设置项目设置为 x86 平台。
  • 相同的安装项目生成一个工作 x86 .msi

关于不正确的设置、参考或配置的任何想法?

【问题讨论】:

  • 应用程序驻留在机器的哪个位置..?你也可以在VS2012中运行.exe ..在调试或运行模式下..?您可以使用 Windows 资源管理器手动找到 .exe 文件吗?看着你的最后一行,我看到你提到相同的 .msi 与 x86 应用程序一样工作,听起来像是一个兼容性问题你看过如何为 64 位操作系统/平台创建 .msi ..?是否有任何 .config 文件设置需要通知安装程序它不是 win32 应用程序与 win64 位应用程序。?
  • 它不在 C:\ 上,它在另一个分区上。我无法从 VS2012 运行 .exe - 没有调试选项。我手动找到 .exe 文件来运行它。我尝试创建一个 64 位 msi,但无法通过更改安装程序构建的配置平台来使其工作。我不知道需要通知安装程序它的位数,不。 =/
  • 你是否厌倦了谷歌搜索,我发现一些链接在谷歌搜索C# create msi vs2012
  • 您可以尝试像这样手动运行它msiexec YourInstaller.msi

标签: c# windows-8 wix wix3.6


【解决方案1】:

有点晚了,但我自己也遇到了这个问题,这是我的解决方案。

基本上,可以通过尝试在项目设置中将 WIX 设置项目从“MSI”输出更改为“EXE”来创建此场景。 WIX 设置项目只能从其 Product.wxs 生成 MSI。 WIX 生成的 EXE 实际上是使用引导程序项目创建的,其中包含一个 Bundle.wxs,然后可以在内部将您的 MSI 捆绑到引导程序的 EXE 中。

因此,为了解决这个问题,请将您的安装项目改回 MSI 输出,然后创建一个额外的引导项目(带有 EXE 输出)并在 Bundle XML 的“链式包”部分中添加安装项目的构建 MSI 输出。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-20
    • 1970-01-01
    相关资源
    最近更新 更多