我已经对此做了一些阅读,但我开始怀疑这是越来越多的工作。我想我可以简单地扫描注册表以查找有问题的修补程序。在尝试这样做的过程中,我了解到修补程序ID不再存储在注册表中。相反,MSFT鼓励用户使用他们的WindowsUpdateAPI。显然,WIX本身并不支持WindowsUpdateAPI。这是否意味着我需要利用自定义操作、与WindowsUpdateAPI交互、将结果返回给WIX,然后使用该结果控制代码流? 最佳答案 查看WMI的Win32_QuickFixEngineering类(class)。您必须编写一个自定义操作来对该类进
我正在尝试将Windows桌面搜索设置为使用不同于系统默认过滤器(nlhtml.dll)的html过滤器。当我查找PersistentHandler(HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.html\PersistentHandler)时,它指向HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{eec97550-47a9-11cf-b952-00aa0051fe20}.我想改变上面clsid的值。以下是WiX片段但值没有改变。关于许可;只有TrustedInstaller可以完全控制此条目。Administrator
我正在使用Wix编译安装程序,并试图让它安装一个计划任务。我创建了一个包含计划任务详细信息的XML文件(称为BackupComplete.xml-使用计划任务中的导出功能)。现在我想在CustomAction中引用它,以便在安装结束时添加计划任务。现在我有这个:但是如何引用我的BackupComplete.xml文件?我不希望将BackupComplete.xml安装到目标计算机,它应该只包含在源.cab文件中,以便我的CustomAction可以读取它。我可以像这样添加计划任务XML文件:在一个组件内,但那会在目标计算机上安装BackupComplete.xml,这是我想避免的...
我的主要可执行文件有两个版本:standard和premium。为了简化开发,它们是通过更改特殊的#define变量从VisualStudio中的单个解决方案构建的。现在我很好奇是否可以对这个项目的WiX安装程序做同样的事情?我基本上需要控制只包含以下xml节点之一:1:对于标准版本MSI:及以后:2:对于premium版本MSI:然后:附言。我显然可以制作2个WiX项目...我正在寻找一种方法来完成它。 最佳答案 我找到了。Hereitis对于其他感兴趣的人。 关于windows-Wi
我正在借助MSI安装程序部署用户控件。安装程序是使用WiX3.8创建的,应该将控件安装到用户计算机上的GAC中:为了使控件显示在VisualStudio的“添加组件”列表中,有severalresources声明要使其工作,需要手动将某些键设置到注册表:[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\AssemblyFolders\ProductName以下WiX组件确实可以很好地注册key:注意,我选择了没有“Wow6432”节点的key。然而,这个key实际上是32位系统所期望的。在64位系统上测试上
是否可以从WiX自定义操作传回属性?几个小时以来,我一直在努力寻找解决方案,我看到了很多答案,但没有一个对我有用。这是我尝试过的,C#(自定义操作)publicclassCustomActions{[CustomAction]publicstaticActionResultTestAction(Sessionsession){session["FOO"]="BAR";returnActionResult.Success;}}WiXFooDlg.wxs1 最佳答案 是的,您可以从安装程序中的自定义操作传回一个属性。确保该属性是公开的(
我有以下快捷方式定义:我得到一个带有以下目标的快捷方式:C:\Windows\SysWOW64\cmd.exe/Kapp.batStartin:字段中没有任何内容。我期望的目标是:C:\Windows\SysWOW64\cmd.exe/Kc:\ProgramFiles\appfolder\app.bat有c:\ProgramFiles\appfolder\app.bat在Startin:字段中我做错了什么? 最佳答案 似乎未设置APPLICATIONFOLDER属性。在调试日志中检查其值并在安装开始前设置APPLICATIONFOL
我们创建了一个WIX安装MSI,用于将证书安装到机器存储。它将根证书(GoDaddyClass2证书颁发机构)安装到受信任的根证书颁发机构。它适用于大多数机器,但它会在某些机器上失败。我们怀疑组策略限制(http://technet.microsoft.com/en-us/library/cc754841.aspx),但更改并没有解决问题。下面是WIX定义和显示错误发生位置的日志文件的一部分。MSI(s)(B4:08)[11:58:21:952]:执行操作:CustomActionSchedule(Action=RollbackAddMachineCertificate,ActionT
我在WiX中得到以下文件:我希望[exe的绝对路径]是FoobarEXE路径的字符串,我该怎么做? 最佳答案 您需要将文件ID包含在[#fileid]中,请参见上面的示例。 关于windows-在WiX中获取FILE的绝对路径,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/34748947/
我继承了一个使用WIXToolset(3.10.3)构建安装包的项目。该应用程序将共享数据下载并存储在c:\ProgramData\Vendor\ApplicationName中.然而,这个路径不是在安装期间创建的,而是在应用程序本身的执行期间创建的,无论何时第一次请求该路径。我现在发现了一个与权限相关的问题,当多个Windows用户使用该应用程序时会发生该问题。每当应用程序从后端下载新的数据文件时,都是当前Windows用户获得这些文件的“完全控制”权限。当其他人使用另一个Windows帐户登录时,他们对这些文件只有读取权限。当应用程序试图保持本地文件与后端同步时,这些混合权限会导致