如何修复损坏问题的 MSI 软件更新注册 问题:系统应用操作 适用范围:windows XP;windows 2003;windows vista;windows 2008。操作步骤:重要:此部分包含告诉您如何修改注册表的步骤。但是,如果不正确地修改了注册表,可能会出现严重问题。因此,请确保仔细遵循这些步骤。为增加保护,请您对其进行修改之前备份注册表。然后,可以在出现问题时还原注册表。若要解决此问题,请按照下列步骤操作:一、确认产品会受到影响。请执行以下步骤:1、通过打开以下注册表子项来查找软件更新注册的产品:HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UserData\\ \\Products\\ \\Patches 在此子项下,将为每个软件更新应用到产品中的一个子项。 2、下面的格式中的每个子项,请执行以下步骤: HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UserData\\ \\Products\\ \\Patches\\ 验证存在以下注册表子项:HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UserData\\ \\Patches\\ 如果缺少该子项,则该产品会受到影响。继续执行步骤二。如果存在该子项,验证 LocalPackage 字符串值设置正确,也存在于包的 LocalPackage 字符串值来引用。(1)LocalPackage 字符串值或引用的包丢失时,如果该产品会受到影响。继续执行步骤 2。(2)如果存在引用的包且需要执行任何其他操作。 二、重新创建软件更新缓存注册表的详细信息。请执行以下步骤:1、搜索您试图安装该软件更新的%windir%\\installer\\.msp 。验证软件更新具有正确的修补程序 GUID 摘要信息流和目标在正确的产品的 Guid。注意:由于此目录用作每个用户安装以及每台计算机安装的高速缓存,您可以通过使用每个用户安装模拟此目录中的软件更新。 2、创建以下注册表子项: HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UserData\\ \\Patches\\ 注意:它是重新创建软件更新缓存注册表存在安全风险。但是,这是修复损坏的唯一方法。您可以减少安全风险,从而确保软件更新为正确的软件更新。若要执行此操作,请验证软件更新的校验和。3、LocalPackage 字符串值中创建的注册表子项创建第 2 步,b.请确保 LocalPackage 字符串值被设置为软件更新的路径。三、删除剩余的软件更新引用。请执行以下步骤: 1、打开下面的子项,然后删除 "AllPatches"多 sz 值: HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UserData\\ \\Products\\ \\Patches 2、删除以下注册表子项: HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UserData\\ \\Products\\ \\Patches\\ 3、删除以下注册表子项: HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UserData\\ \\Patches\\ 注意:如果缺少此子项,则跳过此步骤。 4、如果产品已安装每台计算机,请按照下列步骤: (1)打开以下注册表子项: HKEY_LOCAL_MACHINE\\Software\\Classes\\Installer\\Products\\ \\Patches A、如果字符串值是否存在,则删除它。 B、如果存在"修补程序"的多 sz 值中的字符串值,则删除 字符串值。 (2)如果存在以下注册表子项,请将其删除: HKEY_LOCAL_MACHINE\\Software\\Classes\\Installer\\Patches\\ 5、如果产品已安装每个用户的非托管: (1)打开以下注册表子项: HKEY_CURRENT_USER\\Software\\Microsoft\\Installer\\Products\\ \\Patches A、如果字符串值是否存在,则删除它。 B、如果从"修补程序"多 sz 值存在时,删除它。 (2)如果存在以下注册表子项,请将其删除: HKEY_CURRENT_USER\\Software\\Microsoft\\Installer\\Patches\\ 6、如果产品已安装每个用户管理:(1)打开以下注册表子项: HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\Managed\\ \\Installer\\Products\\ \\Patches A、如果字符串值是否存在,则删除它。 B、如果从"修补程序"多 sz 值存在时,删除它。 (2)如果存在以下注册表子项,请将其删除: HKEY_LOCAL_MACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\Managed\\ \\Installer\\Patches\\ 诊断和自动修复问题下载附件中的修复工具,运行诊断和修复程序安装和卸载问题自动诊断故障程序可能会自动修复本文中描述的问题。 附件: 修复工具
如何修复损坏问题的 MSI 软件更新注册-联想乐享知识库
⚡ 核心结论
本文来源联想官方,解答关于 如何修复损坏问题的 MSI 软件更新注册 的常见问题,包括:Windows XP/2003/Vista/2008系统中MSI软件更新注册损坏导致安装或卸载失败怎么办等。
内容来源:联想官方
常见问题解答
Windows XP/2003/Vista/2008系统中MSI软件更新注册损坏导致安装或卸载失败怎么办
该问题由MSI软件更新注册表项损坏引起,表现为软件更新无法正确应用、安装失败或卸载异常。解决步骤:一、确认影响:检查注册表路径HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\[SID]\Products\[ProductGUID]\Patches下是否存在对应HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\[SID]\Patches\[PatchGUID]子项;若缺失,或LocalPackage值指向的.msp文件不存在,则确认受损。二、重建缓存:在%windir%\Installer\目录下定位对应.msp文件,验证其修补程序GUID和目标产品GUID匹配;手动创建缺失的Patches注册表子项,并设置LocalPackage字符串值为该.msp的完整绝对路径。三、清理残留:删除Products\[ProductGUID]\Patches下的AllPatches多字符串值及整个Patches子项;同步清理Classes\Installer\Products\[ProductGUID]\Patches、Classes\Installer\Patches\[PatchGUID](本地计算机安装)以及HKEY_CURRENT_USER或Managed路径下的对应项(按安装类型选择)。操作前必须备份注册表,且建议校验.msp文件完整性以降低安全风险。