wix 相关问题

WiX工具集(以前称为Windows Installer XML)是一个工具集,可以从XML源代码构建Windows安装包和WiX引导程序。该工具集支持一个命令行环境,开发人员可以将其集成到他们的构建过程中,以构建MSI和MSM安装程序包以及EXE引导程序。对于基于云的Web开发平台,请使用[wixcode]标记。

WixToolset v4 - 在没有提升权限的情况下,范围为“perUser”的安装失败

我有一个小应用程序,我为其进行了 wix 3 设置,将其安装到本地 AppData 文件夹。这从来不需要管理员权限,并且工作完美。 最近我升级到了 Wix 4...

回答 1 投票 0

在安装/卸载之前启动/停止 Windows 服务的最佳方法是什么?

我目前有一个 bootstrapper wix 项目,其中包含两个 msi 项目。我试图找出执行以下安装/卸载/修改/修复操作的最佳方法。 提示用户...

回答 1 投票 0

如何让wix安装程序在运行时根据reg键值安装特定文件夹

我正在开发一个 WiX 安装程序,它将根据 reg 键值安装 2 个文件夹中的 1 个。 我愚蠢地忽略了这样一个事实,即我所做的方式,它将检查 reg 键值并更改热量

回答 1 投票 0

为什么我的 WiX 安装程序不更新我的 XML 配置文件?

我正在尝试创建一个用 WiX 编写的安装程序,虽然根据我发现的其他示例,我认为我的代码是正确的,但 XML 文件在安装时并未更新。我正在尝试使用

回答 1 投票 0

WiX 安装程序 InstallPrivileges="elevated" 不起作用

当我运行安装程序时,出现以下问题。 我正在执行一些需要访问注册表的自定义操作,我只能认为这是因为 WiX 配置无法使其重新...

回答 4 投票 0

WIX,InstallExecuteSequence 中的自定义操作是否会在静默模式下运行?

InstallExecuteSequence 是否以静默模式运行? 我基本上使用 wixsharp 但 wix 也很好。

回答 1 投票 0

WiX 安装程序 InstallPrivelges="elevated" 不起作用

当我运行安装程序时,出现以下问题。 我正在执行一些需要访问注册表的自定义操作,我只能认为这是因为 WiX 配置无法使其重新...

回答 4 投票 0

WiX:如何升级“每用户”安装(包括服务)

我有这个产品,使用 WiX 3.11 构建。它包括一项服务(请注意,不存在命名问题”,如下所示): 我有这个产品,使用 WiX 3.11 构建。它包括一项服务(请注意,不涉及命名问题”,例如here或here): <Component Id="fetcher_90_service_wrapper" Guid="ee31673b-1695-463c-896a-ef737ee206b8"> <File Id="acme_fetcher_9_0_service.exe" Source="acme-wrapper\acme-fetcher-9_0-service.exe" DiskId='2' KeyPath='yes'/> <ServiceInstall ErrorControl='normal' Name='acme-fetcher-9_0' DisplayName="Acme 9.0 Fetcher" Start='auto' Type='ownProcess' Account='NT Service\acme-fetcher-9_0'> <util:ServiceConfig FirstFailureActionType='restart' SecondFailureActionType='restart' ThirdFailureActionType='restart' RestartServiceDelayInSeconds='30' ResetPeriodInDays='1'/> </ServiceInstall> <ServiceControl Id="Fetcher90StartService" Start="install" Stop="both" Remove="uninstall" Name="acme-fetcher-9_0" Wait="yes"/> </Component> WiX 出于某种原因决定(请参阅我的问题此处)“按用户”安装此版本。我确实没有那样配置它,因为我刚刚了解到这是一件需要注意的事情。安装程序已发货,以上操作无法撤消。 现在我想升级此安装,目前正在尝试使用 WiX 4.0.3。服务本身没有变化。但 WiX 决定升级安装程序现在“每台机器”安装 - 由于此限制,它无法实际升级(除了现有版本之外,它还安装新版本): 如果应用程序安装在每用户安装上下文中,则应用程序的任何主要升级也必须使用每用户上下文执行。如果应用程序安装在每台计算机安装上下文中,则该应用程序的任何主要升级也必须使用每台计算机上下文执行。 Windows Installer 不会跨安装上下文安装主要升级。 因此我再次手动设置要为每个用户安装的 Package 元素。但这个安装程序甚至没有完成,因为“每用户”安装在没有“提升权限”的情况下自动运行(我也尝试过perUserOrMachine),这不允许我停止服务(即使是我的“自己的”服务): 实际工作原理:从管理命令启动安装程序 - 这对我们的客户来说似乎有点麻烦。所以我寻找一种方法来强制 WiX 4“每用户”安装以特权运行 - 毕竟,上面提到的文档是这样的 将程序包的 InstallPrivileges 属性设置为“受限”。 ,所以我只是覆盖InstallPrivileges,对吧?不,因为该属性不仅不再记录,而且“被消除”。由于 Windows 决定删除 “以管理员身份运行”:WiX 升级以前安装的“每用户”产品的方式是什么? WiX v3 中的默认安装范围是每个用户。 WiX v3 模板都设置了 Package/@InstallScope='perMachine'。根据反馈,WiX v4 中的默认设置已更改为每台机器。 每个用户的提升是一个非常奇怪的组合。如果 WiX v4 阻止这种无意义的配置来避免此类问题,我不会感到惊讶。 Windows Installer 在这种情况下无法提供太多帮助。我想我可能会发布一个适当的每台机器包,并添加一个自定义操作来检测何时从每用户升级并强制该包为每用户。这延续了奇怪的每用户软件包安装到每台计算机位置的行为,但最大限度地减少了对最终用户的影响。

回答 1 投票 0

WiX 如何决定安装范围(perUser、perMachine)?

我有两个产品,ProdU 和 ProdM。 ProdU “每个用户”安装(= 在 Computer\HKEY_CURRENT_USER\SOFTWARE\Microsoft\Installer\Products\ 下注册),ProdM “每个

回答 1 投票 0

WiX 工具集使用用户定义的变量

我想在我的 WiX 工具集项目中使用用户定义的变量。 如果我尝试使用它们,构建过程将失败,并且我收到错误消息 WIX0150 未定义的预处理器变量 '$(MyVaria...

回答 1 投票 0

使用 Wix v4 嵌入多个机柜

我有一个使用 Wix v4 创建的 MSI 安装程序,它的大小已经增大,现在已超过 2GB。现在,它不再起作用了。 事实上,Wix 输出以下警告: 警告 WIX11...

回答 1 投票 0

WiX:在 WiX 4 中实施重大升级,以使用 WiX 3 构建安装程序

我在 WiX v3.11 安装程序中进行了重大升级,遵循本教程并学习了很多内容(仅限德语)。 但现在 WiX 4 来了,我想尝试从 2.0.0 开始更新(b...

回答 1 投票 0

WIX 相当于 C# 文本框?

我盯着这个页面想知道哪个控件是文本框。 看起来这应该是显而易见的,但我没有看到。 http://wix.sourceforge.net/manual-wix2/wix_xsd_control.htm 还有,有没有...

回答 3 投票 0

使用 MSI 无需升级代码即可升级

我有一台机器,其中安装了使用 InstallShield 创建的软件,并且该项目不包含 UpgradeCode。我知道升级代码从未被分配。如果我是...

回答 1 投票 0

如何运行在取消/中止安装时运行的自定义操作?

如何运行在取消/中止安装时运行的 CA? 我想在取消/中止的情况下运行命令。 我也需要它支持安静模式。 另外,我如何检测它处于取消模式?

回答 1 投票 0

如何从.msi文件详细信息中删除WixToolset程序名称?

我正在使用 WixToolset 4.0.3 构建 .msi Windows Installer 文件。构建后,它会在文件详细信息中显示一条注释: 构建 .msi 文件时是否有机会删除此注释?

wix
回答 1 投票 0

错误 2911:无法删除文件夹 C:\Config.Msi\

我有一个创建桌面快捷方式的安装: 我的安装会创建桌面快捷方式: <Shortcut Id="SC.Desktop" Directory="DesktopFolder" Name="!(bind.Property.ProductName)" WorkingDirectory="INSTALLDIR" Target="[INSTALLDIR]testfile.txt" /> <RegistryValue Root="HKCU" Key="Software\[Manufacturer]\[ProductName]" Type="integer" Name="DesktopIcon" Value="1" KeyPath="yes" /> 安装后一切正常,详细日志中没有错误。 在卸载时,我在详细日志中收到错误: DEBUG: Error 2911: Could not remove the folder C:\Config.Msi\. 如何解决这个问题? 这不是真正的错误消息。这只是 Windows 安装程序在自言自语。类似的文件和文件夹通常会在重新启动时清理。

回答 1 投票 0

如何获取 Wix v4 中的 MSVC 运行时库位置?

在我的 Wix 安装程序中,由于文件较小,我集成了 MSVC 可再发行运行时库,而不是完整的 VC Redist 包。在我的机器上,这些文件位于 C:\Program Files\

回答 1 投票 0

wix 托管引导程序:回滚失败

我的托管引导程序中链接了多个 EXECPackages,例如: 我的托管引导程序中链接了多个 EXECPackages,例如: <ExePackage Id="Test1" SourceFile="D:\Test\TestBatch.bat" Vital="yes" Compressed="yes" InstallCommand="Testinstall1" UninstallCommand="Testuninstall1" /> <ExePackage Id="Test2" .../> 我希望回滚执行卸载命令。 生成的日志文件包含以下信息: 回滚:卸载。应用回滚包:Test2,操作: 卸载,路径:C:\ProgramData\Package 缓存\AD944C8E8D75C79F57819C331F46D15B4CFD9172\TestBatch.bat, 参数: '"C:\ProgramData\Package 缓存\AD944C8E8D75C79F57819C331F46D15B4CFD9172\TestBatch.bat” Testuninstall2' [24F4:246C][2013-06-05T14:45:10]e000: 错误 0x80070003:无法在路径上创建进程:C:\ProgramData\Package 缓存\AD944C8E8D75C79F57819C331F46D15B4CFD9172\TestBatch.bat [24F4:246C][2013-06-05T14:45:10]e000:错误0x80070003:无法 执行EXE包。 [1654:27A8][2013-06-05T14:45:10]e000:错误 0x80070003: 无法配置每台机器的 EXE 包。 我意识到,当触发回滚时(Result.Cancel),包含Exe包有效负载的缓存文件夹将从C:\ProgramData\Package Cache中删除。 但是这以前是有效的。 如果正在安装软件包,则在回滚时执行UninstallCommand。我发现当同一个可执行文件用于单个 ExePackage 中的多个 Chain 元素时,会出现此问题。 Burn 引擎缓存包的方式使用可执行文件的哈希来确定位置。因此,如果您将相同的可执行文件放入 Chain 中,它可能会被过早删除。确保您的 Bundle 中的每个可执行包都是唯一的。 PS:强烈建议您在ExePackage上有一个DetectCondition

回答 1 投票 0

使用 WIX 3.5 在 IIS 7/7.5 中添加/启用处理程序映射

WIX 3.5 使用 IIS6 添加通配符,但对于 IIS7/7.5 有 2 个问题。 默认情况下禁用处理程序映射 必须导航到“编辑功能权限”并选中“脚本”以...

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.