2011-07-08 99 views
2

每当我试着通过Add/Remove Programs或我放下与安装uninstall shortcut卸载我的维克斯安装,我不断收到以下错误:WIX卸载错误

a network error occurred while attempting to read from the file c:\windows\installer\MyProduct.msi

但是,如果使用原始安装程序并选择卸载那么它很好。为什么会发生这种情况,因为显然,如果客户需要卸载我的产品,就不能期望客户挂在原来的安装程序上!

经过一些测试,似乎如果我安装然后卸载直接然后它很好,但如果我注销或重新启动计算机,然后我得到错误。

更新:一旦安装完成,我运行一个自定义操作来删除临时存放在安装过程中使用的一些数据库文件的文件夹。在仔细研究之后,似乎卸载试图访问这些文件,为什么会这样做,它与卸载无关?

回答

2

“C:\ Windows \ Installer”文件夹是Windows Installer缓存。它用于存储已安装产品的MSI包。在对产品执行修复或修改操作时,Windows Installer使用这些软件包。

在你的情况下,卸载过程需要一些文件丢失。 Windows Installer缓存中的MSI不完整(它只是一个精简版),因此系统会提示您输入原始包。

通常,此行为由尝试使用在卸载期间不可用的文件的自定义操作触发。尝试创建卸载日志以查看触发此事的原因。

+0

是的,你是对的,我复制一些文件来安装一些数据库,然后删除它们。我创建了一个卸载日志,它失败了,因为它出于某种原因试图再次使用这些文件。我采取了自定义操作行动,删除这些文件,然后卸载好。现在找出为什么它试图在卸载时使用这些文件,因为它不应该是...... – knappster