问题标签 [wix3.10]

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 回答
1075 浏览

wix - 如果 DisplayInternalUI="yes",Wix 引导程序在卸载期间不会调用 msi 文件

我有一个具有完整 UI 的现有 wix msi 项目。我创建了一个 wix 包并在此引导程序项目中引用了 msi 项目。它完美地安装了 msi,但在卸载过程中,当 msi 包的 DisplayInternalUI="yes" 时,它不会调用 msi。但是当 DisplayInternalUI="no" 为msi,它通过调用 msi 包正确卸载。如何解决这个问题。因为,我无法将 DisplayInternalUI 设置为 no,因为我希望在安装过程中显示 msi UI。有没有办法将 DisplayInternalUI 设置为 no在卸载期间和安装期间是。这是我的捆绑代码:

这是 Product.wxs 文件。

0 投票
1 回答
255 浏览

wix - WIX 父文件夹在卸载过程中没有被删除,但没有留下任何文件

我有这个 MSI,它包含在我的刻录引导程序 EXE 中。当我卸载此 MSI 并且没有安装其他 MSI 时,卸载此 MSI 不会删除父安装文件夹 (testInstallDir)。下面是我的wix文件。

我在这里做错了什么?没有文件了。只剩下空的 test2.0 文件夹。请指教。

0 投票
1 回答
115 浏览

c# - 是否可以在不创建服务项目的情况下使用 WIX 通过 Windows 服务运行 EXE?

我有这个 mosquitto.exe,我需要使用 WiX 将其安装为 Windows 服务。当我创建一个 Windows 服务项目并通过其启动方法运行 EXE 时,一切正常。但是是否可以仅使用 ServiceControl 和 ServiceInstall 行并且没有单独的 Windows 服务项目来运行 mosquitto.exe?我试过这个,但服务无法启动,虽然它不是很好。

我在这里做错了什么还是我真的需要通过使用 Windows 服务项目创建的另一个 exe 来启动这个 mosquitto.exe?任何帮助将非常感激。

0 投票
1 回答
4402 浏览

xml - WiX 工具集在安装后执行自定义操作并等待完成

我想执行我的 .exe 文件,该文件MessageBox在单击“确定”时显示并退出。CustomAction应在安装完成后,但在显示Finish对话框之前执行。问题是,我无法将主安装程序窗口设置为等待单击“确定”按钮(Finish直接显示对话框,因此无需单击“确定”按钮即可完全关闭主窗口)。WiX 工具集版本:v3.10

产品源代码:

组件源代码:

0 投票
0 回答
88 浏览

wix - DiskCost 上路径未知的 WiX CopyFile

我需要复制外部文件,我从对话框中获取的位置。文件应该在安装时复制,所以我正在尝试使用CopyFileelement. 问题是,安装SourceProperty程序CopyFile启动时没有设置,所以它Error 1606. Could not access network location .CostFinalize. 我假设,该安装程序正在尝试获取外部文件的大小。有没有办法强制安装程序不计算CopyFile元素的大小,或者我必须执行自定义操作来复制文件,所以安装程序不会知道它?

我的文件组件:

安装前对话框中填写的属性:

文档规定SourceProperty

安装程序不应该默认忽略它吗?

我的工具集版本:WiX v3.10.3(稳定版)

0 投票
1 回答
963 浏览

jenkins - Jenkins 和 Wix 的 CI/CD:找不到源

我正在尝试使用Jenkins Wix 工具集插件来构建 msi。我已经在构建机器上安装了 Wix 3.10。

Jenkins 工作从 GitHub 中检查项目,我可以看到它运行良好。有 wxs 文件,但似乎找不到它们。

我已经在构建机器上安装了 Wix 并在 Jenkins 中配置了插件。 在此处输入图像描述

不确定它在这里查看哪个目录,但配置了 Jenkins 插件以通过 Ant 样式文件模式 \*.wxs 获取 wxs 源文件: 在此处输入图像描述

为什么我看到文件(包括 wxs 文件)被添加到 Jenkins 的“工作区”中,但 Wix 仍然无法找到它们?

当 Jenkins 构建运行时,我得到以下输出:

[wix] 找到来源:0 <--- 索引超出范围的原因

编辑1: 我设法克服了这个例外。原来我的 \*.wxs 的 Ant 样式文件模式不正确。相反,我使用了 **\*.wxs 并找到了该文件。原来还有一个问题。在我的 wxs 文件中,我引用了变量名称,例如“$(var.SolutionDir)”。Wix 抱怨它找不到这个:

这是在 .wixproj 文件中定义的,但 Jenkins Wix 插件似乎忽略了这一点......

那么我如何让 Jenkins 插件知道它应该知道还有一个 .wixproj 呢?

0 投票
1 回答
1091 浏览

wix - WiX ComponentGroup Condition

I have a Feature, which references a ComponentGroup. That ComponentGroup is defined in a Fragment in another file and contains number of Components.

This project is shared across multiple versions of the product and I would like to maintain one version of the Product.wxs file (the codebase is common between the product versions).

Can I set a Condition on a ComponentGroup to determine whether or not to include it in the installer?

0 投票
1 回答
1890 浏览

wix - WiX 和合并模块 - 是否包含策略文件?

我将 VS 2005 合并模块包含在 MSI 中。代码就位,MSI 构建。

在我的 Product.wxs 中:

我担心两个警告:

两条消息,因为我同时包含 32 位和 64 位合并模块。

我没有添加策略文件,因为wix 页面建议不要添加。MS 博客页面也支持这一点。但是,还有一些页面,比如这个,建议将它们包括在内。

所以,我不确定如何进行。是否应该包含策略文件?如果没有,为什么不呢?

0 投票
1 回答
163 浏览

visual-studio - wix 扩展中的冲突:NetFxExtension

我正在尝试使用 Wix 在 Visual Studio 2015 中创建一个引导程序项目。

引导程序的项目名称是 MTEBootstrapper,MSI 的 wix 项目的项目名称是 MTESetup。对于 MTEBootstrapper,我从 Wix 3.10 添加了对 WixNetFxExtension.dll 的引用;在 MTEBootstrapper 的属性中,我添加了-ext WixNetFxExtension.dll. 现在,当我尝试构建 MTEBootstrapper 时出现此错误:

我不知道是什么原因造成的。我如何解决它?

0 投票
1 回答
514 浏览

wix - Wix - ICE 64 错误:链接外部组件组

我使用热量来收集我需要的文件作为我的安装程序中的组件,并将它们写入一个单独的 wxs 文件,它工作得很好。

生成文件示例:

... 等等....

现在我在我的 SetupMain 中使用它们:

不幸的是,我的所有组件和目录都出现了 ICE64 错误:

ICE64 错误:目录 XX 在用户配置文件中,但未在 RemoveFile 表中列出 ICE64 错误:组件 xxenter code here安装到用户配置文件它必须在 HKCU 下注册一个注册表项作为其密钥路径,而不是文件...

我该如何解决?我在互联网上搜索了一段时间,但找不到提示。这似乎是一件非常简单的事情,基本上我忘了在我的 main.js 中定义。我的目标是构建一个简单的安装程序,它在安装时使用 heat 命令复制文件构建中定义的目录结构,并在卸载时将其删除。

更新 1: 小更新我如何使用 RemoveFolder 和 RegistryValue 标签在以下答案的帮助下修复错误:

...我不知道这是否是最好的方法,但它现在可以工作。感谢您在将其与heat.exe 自动化一起使用时的任何改进建议或最佳实践。

最后一点是我仍然有警告:

ICE91:文件 x 将安装到每个用户目录 y 中,该目录不会根据 ALLUSERS 值而变化。即使需要按机器安装,此文件也不会复制到每个用户的配置文件中。

我读到这个警告是无害的。但无论如何,很高兴了解将来某个时候可能解决警告的原因。