Windows 10 MSI卸载因1721

时间:2015-10-29 13:10:55

标签: wix windows-10 uninstall

我有一个使用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 10中。旧版本的Windows很好。
  • 我已在多台计算机上复制,包括全新安装。
  • 我有一个较旧的安装程序(VS2010安装项目),安装程序也会出现问题。
  • 我曾尝试过不同海拔的UAC,没有区别。
  • 我在这里看到有关将模仿设置更改为“否”的其他帖子,没有区别。

在我看来,新的 Windows Apps&amp;功能应用,但我还没有在微软论坛上找到任何东西。

更新

Wix用户发布了这个:DTF Bug with new Windows 10 Apps and Features。此外,我们尝试了各种命令(认为它是UAC问题),它们都不起作用,甚至“内置”Windows命令都失败了。

1 个答案:

答案 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"/>

洪扎