问题标签 [wix3.7]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
996 浏览

wix - 如何将文件添加到 WiX Burn 中的 Container 元素?

我想在Burn中附加一个文件。我使用以下代码,但它不起作用。

我正在使用 WiX 3.7 RTM

0 投票
1 回答
3521 浏览

.net - 在 WiX 中重新启动后继续安装

我正在尝试使用 WixStandardBootstrapperApplication 创建引导应用程序。除了处理重启之外,它完成了我需要它做的所有事情。

我需要安装一组 EXE 文件。只有第一个是 .NET 4.5,需要重新启动。我会延迟重启,但我不能,因为其他程序之一依赖于它。我尝试使用退出代码强制重启,但是当计算机重新启动时,引导程序每次都会卡在该退出代码上,我无法安装其他任何东西。当且仅当程序尚未重新启动(或任何其他逻辑方式)时,是否有方法应用退出代码?

这就是我正在做的...

0 投票
2 回答
1378 浏览

xml - WiX - 查找 .msi 目录的父级

我正在使用 WiX 创建自定义安装程序。我想从 .msi 的目录向上导航一个目录,以便找到可执行文件的路径。经过一番研究,我发现 [OriginalDatabase] 指向 .msi 的位置,但我不知道如何从该位置向上而不是向下搜索。这是我的搜索代码:

WiX 不允许我在预设目录路径前添加“..\”。我不知道如何从该文件夹向上导航。任何建议将不胜感激!

0 投票
1 回答
520 浏览

wix - 如何为多个 MSI 文件构建引导程序?

我遇到了以下问题:使用 WiX 3.7,我构建了一个安装程序,它创建了几个本地化的 MSI 文件,例如:

此外,我创建了一个Burn引导程序项目,该项目应确保安装 .NET 4.5:

现在我预计 Burn bootstrapper 项目会创建:

但 MsiPackage 需要一个文件。

通常是否可以使 Burn 项目按我的预期工作?

如果不是这种情况,是否有可能知道创建的 MSI 文件的确切名称?我无法对 MSI 文件名进行硬编码,因为输出名称可能会有所不同。

0 投票
1 回答
754 浏览

wix - Wix 安装然后立即尝试修复

我正在尝试使用 WixStandardBootstrapperApplication 运行引导程序应用程序。到目前为止,它适用于我需要它做的一切,甚至在安装过程中处理重启。过程是这样的——我检查计算机上是否安装了 .net 4.5,如果没有,则安装 .net 4.5。安装后,burn 然后知道要重新启动,因为我处理了退出代码。恢复后,安装程序会处理另外三个 .exe 文件,其中一个取决于 .net 安装。在重新启动之前,这一切都运行良好,此时引导程序会尝试修复每个 exe 的安装后运行时间加倍。这不会那么糟糕,除了安装 .net 4.5 需要很长时间以至于翻倍是非常不可取的。我试过省略一个修复命令,我' 我注意到没有任何形式的 RepairCondition 像安装和检测条件。有什么方法可以阻止修复过程?

这是引导程序代码:

我知道让这些其他.exe的行为成功基本上是一种黑客行为,但是在修复问题得到处理之前,他们需要否则安装程序会说它失败。我也尝试从这些命令中删除修复命令,但这似乎根本没有帮助,所以我让它们安静下来,至少它们不会弹出并让用户感到困惑。

0 投票
1 回答
518 浏览

wix - WiX 引导程序用户界面

我用扩展的 WiX 引导程序应用程序 (v3.7.4844.29798) 创建了一个捆绑包。一切正常,但我有一个小问题。我已更改用户将在“进度页面”上看到的文本。在 .wxl 文件中,我将文本更改为“正在复制和安装所需的程序文件。”

安装时,用户会看到“正在复制和安装所需的程序文件”。在进度页面上没关系。但是在卸载程序时,用户也会看到此文本,因为捆绑包使用了进度页面。

我想在安装 Bundle 然后卸载 Bundle 时再输入一个文本。可以使用条件或其他东西吗?

0 投票
4 回答
1071 浏览

wix - 无法将 WixBundleProviderKey 变量传递给 msipackage

我对刻录内置变量 WixBundleProviderKey 有疑问。我需要将此变量的值传递给 msi 包。我的问题是这个变量的值没有被评估,并且 msi 只会收到一个空字符串。我已经用其他内置变量进行了测试,它按预期工作。

任何想法为什么这不起作用?有解决方法吗?

例子:

提前致谢

0 投票
0 回答
1155 浏览

wix - 使用 Heat.exe 注册 .ocx 和 .dll 文件(替代 regsvr32)

我对 WiX 很陌生,并且无法弄清楚如何注册 .ocx 和 .dll 文件。起初我以为我会使用带有“ExeCommand”属性的自定义操作。但是,我无法让它工作,我在网上所做的研究表明,有更好的方法可以做到这一点,包括 heat.exe 和注册表项。

我对 Windows 注册表或 heat.exe 的经验很少。如果有人能指出我正确的方向,那就太好了!

0 投票
2 回答
4856 浏览

wix - WiX v3.7 - 如何删除安装后创建的卸载文件

我正在为使用 WiX 的程序创建安装程序。程序在配置过程中(完成安装后)在程序目录中创建一个日志文件和一个.dat文件。如果在安装过程中这些文件不存在,我如何告诉 WiX 在卸载过程中删除这些文件?

任何建议将不胜感激。

0 投票
0 回答
154 浏览

wix - 使用 EnsureTable 元素修复警告 TRCH1115

我们有一堆 3rd 方合并模块附加到我们的 WiX 安装程序,在构建过程中我们收到一堆 TRCH1115 警告。我在看Trying to use EnsureTable in WiX to fix Validation Errors

但是在本文中,他们看到的验证错误的警告/错误是指具有验证错误的表。在我的情况下,它提到的唯一表是它自己的 _validation 表。因此,如果我要尝试使用 EnsureTable 元素来修复这些警告,那么我将如何找出应该在 EnsureTable 元素中使用的表 ID?

我收到的警告如下所示:

警告 TRCH1115:根据列的验证信息,表 '_Validation'、列 'KeyColumn' 中的值 '0' 无效。反编译的输出包括该值的尽力表示。

感谢您对此问题的任何帮助。