我有一个使用Wix(3.10)安装脚本的Excel加载项。安装工作正常。但是,如果用户尝试通过系统|删除加载项应用程序&功能,它失败并显示“此Windows Installer程序包存在问题。无法运行此安装所需的程序。”查看卸载日志,我看到了:
Error 1721. There is a problem with this Windows Installer package. A program required for this install to complete could not be run. Contact your support personnel or package vendor. Action: _BDF865EC_34B3_4B29_986C_98D6EC1A9807, location: C:\Windows\Installer\MSI2FE4.tmp, command: /uninstall="C:\Users\Windows10\AppData\Local\myCompany\myProduct\myAddin.dll" /privileges=user
它正在采取的行动是:
<CustomAction Id="_BDF865EC_34B3_4B29_986C_98D6EC1A9807" BinaryKey="adxregistrator_exe" Execute="deferred" ExeCommand='/uninstall="[TARGETDIR]$(var.myProject.TargetFileName)" /privileges=user' Impersonate="yes" />
但是,如果我重新运行我的安装程序并选择“删除”,它会卸载正常。此外,如果我从命令行运行卸载(使用此产品的注册表项中的msiexec命令),它也会卸载正常。
同时
在我看来,新的 Windows Apps&amp;功能应用,但我还没有在微软论坛上找到任何东西。
更新
Wix用户发布了这个:DTF Bug with new Windows 10 Apps and Features。此外,我们尝试了各种命令(认为它是UAC问题),它们都不起作用,甚至“内置”Windows命令都失败了。
答案 0 :(得分:0)
我遇到了同样的问题,最后提出了这个解决方案: 赢得10个应用程序&amp;具有对WindowsInstaller注册表值的卸载程序检查功能,并在此值不存在时正常运行
1)定义自定义操作
<CustomAction Id="DeleteWindowsInstallerValue" Return="ignore" Directory="TARGETDIR" Execute="deferred" Impersonate="no"
ExeCommand= "reg.exe DELETE HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\[ProductCode] /v WindowsInstaller /f" />
2)在InstallExecuteSequence
中安排操作<Custom Action="DeleteWindowsInstallerValue" Before="InstallFinalize"/>
洪扎