wix3相关内容

如何在 WiX 3 中注册 Win32 COM DLL 文件?

我找到了一个关于注册 DLL 的示例,注册带有 Windows Installer XML 工具集的 MSI 文件中的 COM Interop 程序集.,而 WiX 抱怨“AssemblyRegisterComInterop"属性. 我删除了它并将“Assembly"属性更改为 win32,它说我需要指定 AssemblyManifest 属性,但我应该在那里放什么? 解决方案 最简 ..
发布时间:2021-12-25 15:47:13 其他开发

如何在没有许可证页面的情况下构建最小的 WiX 安装程序 UI?

我想使用 WixUI_Minimal 安装程序,但我不想要许可证页面.我该怎么做? 解决方案 关键是做一个自定义的 UI,把不同的页面挂起来.请参阅 WixWiki 上的页面 您想获取 WixUI 最小代码,稍微修改一下.您想要使用 WelcomeDlg,而不是 WelcomeEulaDlg 欢迎对话框.调整引用,并将 WelcomeDlg 上的 Next 按钮连接到堆栈中的下一个对话 ..
发布时间:2021-12-23 17:55:15 其他开发

MSI 引用计数:两个产品安装相同的 MSI

当产品 A 和 B 都安装了多个 MSI 并且其中一些 MSI 相同时,卸载 A 或 B 是否会影响另一个?安装位置重要吗? 此外,如果产品 B 中的通用 MSI C 版本较高,而 B 在安装时升级 C,会发生什么情况?现在卸载 B 将删除破坏产品 A 的常见 MSI C.您如何在不使用永久标志的情况下优雅地处理这个问题? 解决方案 遇到这个问题,首先想到的是相关产品是否按照应有的方 ..
发布时间:2021-12-23 17:49:38 其他开发

在 wix 中更改我的组件 GUID?

我应该何时更改或不更改 WIX 中的组件 GUID? Microsoft SDK 信息混乱. Glytzhkof 编辑:澄清一下,问题涉及何时应为 MSI 组件更改组件 GUID.组件可能会随着以下方面的变化而变化:更改的目标路径、向/从同一组件添加或删除文件、添加注册表数据等……这会导致所谓的组件引用出现问题,即 在 MSI 中创建组件的最佳实践. 解决方案 MSI 的总体概念 ..
发布时间:2021-12-23 17:34:55 其他开发

使用 Wix 从一个 .wxs 文件创建 32 位和 64 位安装程序

我希望在构建 32 位和 64 位安装程序时保持我的顶级 .wxs DRY.我正在使用 candle.exe 的 -arch 参数来控制正在构建的默认安装程序架构. 我现在遇到的问题是,ProgramFilesFolder 在 32 位和 64 位(ProgramFiles64Folder)架构之间似乎有所不同.这是我第一次尝试解决: ..
发布时间:2021-11-25 05:25:57 C#

WIX:如何在安装过程中不调用 ActionStart(Name=StartMetabaseTransaction)

我的安装程序在没有安装 IIS 的机器上安装时会失败.将要安装的功能不需要 IIS.错误提示“无法连接到 Internet 信息服务器". 除此之外.安装程序文件还有一项需要 IIS 的功能.但是当我取消选择该功能时,安装程​​序仍会查找 IIS.下面是它生成的日志. MSI (s) (D0:F8) [11:39:12:437]: Note: 1: 2318 2: C:\Program ..
发布时间:2021-09-27 20:14:00 其他开发

WiX:如何打包 exe 或 dll 仅在安装期间使用

我需要在生成的 MSI(通过 WiX 项目创建)中包含一个 dll/exe,但我不想在安装过程中部署它们:我只想在某些 CustomAction 中使用它们我的目的是包含一个现有的 exe/dll,并在安装过程中从 wxs 代码(而不是从 CustomAction dll)调用它. 是否可以包含安装过程中未部署的文件?我的意思是,只将它们打包在生成的 MSI 中,并在它们在 %temp% 文件夹 ..
发布时间:2021-09-27 20:13:26 其他开发

运行两次并卸载该应用程序时,Wix Installer 应用程序不会安装

我用gui编写了一个简单的wix安装程序,安装得很好.但是当我第二次运行同一个 .msi 文件时,它会引导我完成 gui 中的正常安装过程,但最后卸载了我的应用程序.然后,如果我第三次运行相同的 .msi 文件,安装程序仍然会通过安装 gui 正常运行,但最终会执行“卸载". 我不明白为什么它不像其他所有安装程序那样运行并优雅地处理安装和卸载. 这是我的产品 xml 的一部分 ..
发布时间:2021-09-27 20:12:16 C#/.NET

WiX:如何立即重新启动 explorer.exe?

我是软件打包的初学者.我正在使用 cpack + Wix.我试图找到关于 util:RestartResource 的有用信息或好的文档,但找不到任何关于我的问题的 awnser. 问题:我必须安装一个 ShellExtension,它需要在设置一些注册表值后重新启动 explorer.exe.因此我使用命令 (https://wixtoolset.org/文档/手册/v3/xsd/util ..
发布时间:2021-09-27 20:11:59 其他开发

WiX:如何防止将绑定文件的多个副本添加到 MSI?

我有一个安装程序,它链接了一个 wixlib.wixlib 将一个可执行文件安装到多个目录中. 当我打开 wixlib 的“将文件绑定到库文件"(使用 -bf 开关)时,lit.exe 会将可执行文件添加到 wixlib.但是,当我在 MSI 中链接 wixlib 时,可执行文件会多次添加到 MSI 文件中,从而使安装程序的大小变得臃肿. 当我关闭“将文件绑定到库文件"时,问题不会发生 ..
发布时间:2021-09-27 20:11:21 其他开发

获取生成的 ProductCode 作为 Wix 中的变量

在我们的产品中,我们在 Wix 中使用 Product Id="*" 来告诉它为每个新版本生成一个新的产品代码.我们现在需要在安装期间将 MSI 的产品代码记录到我们的注册表项之一中.我们可以通过在“卸载"注册表项中循环查找我们的产品名称和版本来在运行时推断产品代码,但在安装时直接记录此信息会更清晰. Wix 有没有办法告诉我它生成了什么 ProductCode,以便我可以将它作为变量添加到 ..
发布时间:2021-09-27 20:09:57 其他开发

是否可以包括“来源"?wixlib 中的文件?

是否可以在 wixlib 中包含“源"文件? 我有许多 c++ 解决方案,每个解决方案都包含一个或多个项目和一个 wixlib,其中一个片段包含以下条目: 我想收集“foo.exe"并将其包含在 wixlib 中,然后创建一个 WiX 项目,将多个此类 wix ..
发布时间:2021-09-27 20:09:46 其他开发

Wix 安装程序 - 调整致命错误对话框的大小或使用自定义对话框代替致命错误对话框

在 WiX 安装程序中 - 如何自定义或覆盖致命错误对话框 ()?我想显示详细的错误消息,而不是默认设置失败消息. 选项: 是否可以在 WiX 中调整致命错误对话框的大小? 如果没有,我如何使用自己的对话框代替致命错误对话框? 解决方案 要调整大小或以其他方式修改任何现有对话框,本质上您需要替换它.幸运的是,您可以从 git 存储库下载原始源代码并根据需要进行修改. 首 ..
发布时间:2021-09-27 20:09:08 其他开发

Wix 升级:预选功能

我们正在使用 Wix 来创建我们的安装程序.我们正在使用用户界面,您可以在其中选择需要安装的功能.默认情况下,某些功能处于启用状态,而其他功能处于禁用状态. 但是,当我们运行升级时会保留这些默认值.我们希望安装程序记住安装了哪些功能,并在功能树中启用它们以进行升级.应禁用所有其他功能. 我们有这段代码,它看起来有效,但实际上并没有: ..
发布时间:2021-09-27 20:07:52 其他开发

WIX 和 IIS 中的证书

我正在尝试设置我的安装,以便使用 WIX 配置我的站点的证书. 我可以在 IIS 中查看证书并可以访问 .cer 文件.这就是我对证书的了解,所以请把任何答案都写下来.(即我不知道我的“BinaryKey"是什么). 证书已安装在机器上.理想情况下,我只想在 wix 中有一种方法来配置要使用的已安装证书.如果有人知道怎么做,请在此处发布! 如果不能这样做,那么我会喜欢一个关于如何 ..
发布时间:2021-09-27 20:07:47 其他开发

WiX:在一个非常大的应用程序中使用多个驾驶室

我最近开始学习和使用 WiX,我的第一个真正的 WiX 项目是重新打包 Qt 的自定义配置.这是一个相当大的挑战,因为 Qt 项目非常庞大. 我在整个过程中设法以非常不雅的方式粉碎了我的方式,但最近在链接过程中遇到了障碍.我一直收到 Light.exe 错误“LGHT0296",很可能是因为我创建的 CAB 远大于 2 GB.在尝试了最高压缩级别并且没有任何区别之后,剩下的唯一选择是将安装包 ..
发布时间:2021-09-27 20:06:46 其他开发