2010-01-07 116 views
2

我们使用msi安装多个网站,作为连续性集成测试的一部分。使用msiexec卸载MSI会失败,并显示MSI的新版本

对于每个版本,我们要卸载旧的msi并安装一个新的msi。

问题是我们在构建服务器完成最新并重建系统后没有旧的msi。

有没有一种方法可以卸载msi而无需访问原始msi?

回答

3

是的,你可以,如果你知道产品代码。只需在命令行输入

msiexec /x [ProductCode] 

。或者你可以通过添加/删除程序小程序来完成。

如果您想查找物理文件,Windows实际上会在运行时存储msi的副本 - 您会在%WINDOWS%\ Installer文件夹中的某个位置找到它,但会给它一个随机名称可能很难找到:) 或者,如果您不知道产品代码(您应该),然后尝试在HKEY_CURRENT_USER\Software\Microsoft\InstallerHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData注册表项下搜索您的应用程序名称,您将在其中找到产品代码。 (快速提示:您也可以在注册表中搜索UninstallString值)。

+0

谢谢,这工作 – 2010-01-07 13:50:16