我正在使用Transform创建一个Windows安装包,使其成为多实例。我的mst文件更新了一些注册表项组件的ProductCode和GUID。这是每台机器的安装。现在我无法卸载我的产品,如果:
安装程序尝试在原始位置查找mst文件,无法执行此操作并且无法卸载。 在这两个条件下,我该怎么办才能让我的产品卸载?
一些额外的信息。 我看到我的msi和mst文件缓存在“c:\ Windows \ Installer”文件夹中。 但不知何故,安装程序并没有尝试从缓存中取出mst。 如果未设置TransformsSecure策略,一切都运行良好。在这种情况下,我的mst文件会自动缓存在“c:\ Windows \ Installer {358e77a7-464b-4588-b538-a79fceb0ffa8}”文件夹中。
答案 0 :(得分:0)
您可能需要在某个地方发布一份完整的详细卸载日志,如果您因为1 AND 2或1或2而无法卸载,那么我很不清楚(对不起)。所以&#39根据你的具体情况做出一定程度的猜测。
但是,如果已从安装程序缓存中删除了mst,则Windows将尝试在原始安装源中找到它,就像缺少缓存的MSI文件一样。但是,安全转换不允许转到原始安装源(因为它们只能从安全缓存位置检索,而不能从DVD中检索),因此如果缺少缓存,则卸载将失败。因此,正常的安全转换需要访问安全位置的mst而不是其他地方。是的,如果转换不安全,它可以使用安装源。
有时系统帐户会失去对安装程序缓存位置的访问权限,这会产生相同的结果。它无法在安全位置找到mst,但转换是安全的,因此它无法使用原始安装源,因此操作失败。
因此日志中的详细信息可能有所帮助。尝试获取mst是否会出现(比方说)系统错误5?或者它是否说了为什么它不能使用它呢?是否有尝试解决它不会做的因为变换是安全的?