“添加/删除程序”工具无法正确地显示已安装的程序

重要说明:本文包含有关如何修改注册表的信息。修改注册表之前,一定要先进行备份,并且一定要知道在发生问题时如何还原注册表。有关如何备份、还原和修改注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
256986 (http://support.microsoft.com/kb/256986/) Microsoft windows 注册表说明

症状

当您安装和卸载程序时,“控制面板”中的“添加/删除程序”工具可能无法正确地显示已安装的程序。“当前安装的程序”框中可能只有单个的文本字符串,或可能在程序项前显示一大片空白。还可能出现其他显示问题,例如没有列出任何程序等。此外,还可能会显示下列错误消息之一: 消息 1
An unexpected error occurred.Class not registered
res://appwiz.cpl/listbox.htc
Line:225
消息 2
对象不支持此属性或方法 res://appwiz.cpl/default.hta
Line:75

原因

如果某个程序的卸载程序错误地删除了由 windows 和“添加/删除程序”工具使用的注册表项,则可能会出现这种问题。

解决方案

警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能导致严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证您可以解决这些问题。修改注册表需要您自担风险。

要解决此问题,请按照下列步骤操作:
1.单击开始,单击运行,然后键入 CMD
2.在命令提示符处,键入 REGSVR32 APPWIZ.CPL
3.如果失败,请查找下面列出的注册表项。要解决此问题,请检查注册表中的下列注册表项和值。重新创建所有丢失的注册表项和值。请注意,这些注册表项使用了系统驱动器号。您可能必须调整这些注册表项,使之与您的计算机配置相匹配。
[HKEY_CLASSES_ROOT/CLSID/{00000535-0000-0010-8000-00AA006D2EA4}]
"ADODB.Recordset"
[HKEY_CLASSES_ROOT/CLSID/{00000535-0000-0010-8000-00AA006D2EA4}/InprocServer32]
"C:/Program Files/Common Files/System/ado/msado15.dll"
[HKEY_CLASSES_ROOT/CLSID/{00000535-0000-0010-8000-00AA006D2EA4}/InprocServer32]
"ThreadingModel"="Apartment"
[HKEY_CLASSES_ROOT/CLSID/{00000535-0000-0010-8000-00AA006D2EA4}/ProgID] "ADODB.Recordset.2.5"
[HKEY_CLASSES_ROOT/CLSID/{00000535-0000-0010-8000-00AA006D2EA4}/VersionIndependentProgID]
"ADODB.Recordset"
HKEY_CLASSES_ROOT/CLSID/{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}
"Microsoft OLE DB Row Position Library"
HKEY_CLASSES_ROOT/CLSID/{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}/InprocServer32
"C:/Program Files/Common Files/System/Ole DB/oledb32.dll" "ThreadingModel"="Both"
HKEY_CLASSES_ROOT/CLSID/{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}/ProgID
"RowPosition.RowPosition.1"
HKEY_CLASSES_ROOT/CLSID/{2048EEE6-7FA2-11D0-9E6A-00A0C9138C29}/VersionIndependentProgID
"RowPosition.RowPosition"
[HKEY_CLASSES_ROOT/CLSID/{352EC2B7-8B9A-11D1-B8AE-006008059382}/InProcServer32]
"%SystemRoot%/System32/appwiz.cpl"
4.根据计算机的情况,按照下列某个过程中的步骤操作,然后测试问题是否已经得到解决。如果问题已经解决,请跳过其余步骤。如果问题仍未解决,请转至步骤 5。
在安装了 Internet Explorer 6.0 的情况下,要解决这一问题,请修复 Internet Explorer 6.0:
a. 单击开始,然后单击运行
b. 将以下命令粘贴到打开框中,然后单击确定
rundll32 setupwbv.dll,IE6Maintenance "C:/Program Files/Internet Explorer/Setup/SETUP.EXE" /g "C:/WINDOWS/IE Uninstall Log.Txt
由于此命令区分大小写,因此 Microsoft 建议您直接从本文中复制该命令,然后将其粘贴到打开框中。
在安装了 Internet Explorer 5.0 或 5.5 的情况下,要解决这一问题,请修复 Internet Explorer 5.0 或 5.5:
a. 单击开始,然后单击运行
b. 将以下命令粘贴到打开框中,然后单击确定
rundll32 setupwbv.dll,IE5Maintenance "C:/Program Files/Internet Explorer/Setup/SETUP.EXE" /g "C:/WINDOWS/IE Uninstall Log.Txt
由于此命令区分大小写,因此 Microsoft 建议您直接从本文中复制该命令,然后将其粘贴到打开框中。
5.执行就地升级:

注意:在执行就地升级之前,确保备份您的数据。有关执行就地升级的风险的更多信息,请参阅“更多信息”一节。
a. windows 2000 安装 CD-ROM 上的 /I386 目录中运行 Winnt32.exe。
b. 出现“Windows 2000 安装程序”屏幕时,单击“升级到 windows 2000”。
c. 等待安装过程完成。
如果“添加/删除程序”工具仍然无法正常运行,不显示任何内容,或您希望尝试在不升级到 Internet Explorer 较高版本的情况下解决此问题,请检查下列注册表项,确保其中包含项:
HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Uninstall
HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/App Management/ARPCache
注意:如果以上注册表项为空,“添加/删除程序”工具可能也显示为空。

使用命令行 REGSVR32 [ path/ filename] 注册下列文件:
%systemroot%/System32/Appwiz.cpl
%systemroot%/System32/Mshtml.dll
%systemroot%/System32/Jscript.dll
%systemroot%/System32/Msi.dll
Program Files/Common Files/System/Ole DB/Oledb32.dll
Program Files/Common Files/System/Ado/Msado15.dll
%systemroot%/System32/Msdart32.dll [无法注册]
%systemroot%/System32/Mshtmled.dll
%systemroot%/System32/Mswstr10.dll [无法注册]
如果“添加/删除程序”工具显示的信息不完整或显示空白,请验证文件日期,并注册下列文件(如果可能):
%systemroot%/System32/Gdi32.dll [无法注册]
%systemroot%/System32/User32.dll [无法注册]
%systemroot%/System32/Msvcrt.dll [无法注册]
%systemroot%/System32/Ole32.dll
%systemroot%/System32/Shlwapi.dll [无法注册]
%systemroot%/System32/Imm32.dll [无法注册]
%systemroot%/System32/Indicdll.dll [无法注册]
%systemroot%/System32/Urlmon.dll
%systemroot%/System32/Version.dll [无法注册]
%systemroot%/System32/Lz32.dll [无法注册]
%systemroot%/System32/Comctl32.dll [无法注册]
%systemroot%/System32/Clbcatq.dll
%systemroot%/System32/Oleaut32.dll
%systemroot%/System32/Mlang.dll
%systemroot%/System32/Shell32.dll
%systemroot%/System32/Shdoclc.dll [无法注册]
%systemroot%/System32/NetapI32.dll [无法注册]
%systemroot%/System32/Secur32.dll [无法注册]
%systemroot%/System32/Netrap.dll [无法注册]
%systemroot%/System32/Samlib.dll [无法注册]
%systemroot%/System32/Ws2_32.dll [无法注册]
%systemroot%/System32/Ws2help.dll [无法注册]
%systemroot%/System32/Wldap32.dll [无法注册]
%systemroot%/System32/Dnsapi.dll [无法注册]
%systemroot%/System32/Wsock32.dll [无法注册]
%systemroot%/System32/Plugin.ocx
%systemroot%/System32/Wininet.dll [无法注册]
%systemroot%/System32/Crypt32.dll [无法注册]
%systemroot%/System32/Msasn1.dll [无法注册]
%systemroot%/System32/Msls31.dll [无法注册]
%systemroot%/System32/Imgutil.dll
%systemroot%/System32/Cscui.dll
%systemroot%/System32/Cscdll.dll [无法注册]
如果“添加/删除程序”工具可以显示对话框的用户界面,但不显示任何已安装程序内容,请检查注册表中是否存在以下项:
HKEY_CLASSES_ROOT/CLSID/{352EC2B7-8B9A-11D1-B8AE-006008059382}/InProcServer32
如果此注册表项丢失,请将以下文本复制到一个文本文件中,用 .reg 扩展名保存该文件,然后在受影响的计算机上双击该文件,以返回正确的项。

对于 windows 注册表编辑器 5.00 版:
[HKEY_CLASSES_ROOT/CLSID/{352EC2B7-8B9A-11D1-B8AE-006008059382}/InProcServer32]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,61,00,70,00,70,00,77,00,69,00,7a,00,2e,00,63,00,70,00,6c,00,00,00
"ThreadingModel"="Apartment"

状态

Microsoft 已经确认这是在“适用于”一节中列出的 Microsoft 产品中存在的问题。 下面列出了“添加/删除程序”使用的全部注册表项。这些项必须通过注册 Appwiz.cpl 来进行设置,不过在这里我们还是把它们列了出来,供您在确认注册是否成功完成时参考。
[HKEY_CLASSES_ROOT/CLSID/{352EC2B7-8B9A-11D1-B8AE-006008059382}]
@="%DESC_ShellAppMgr%"
[HKEY_CLASSES_ROOT/CLSID/{352EC2B7-8B9A-11D1-B8AE-006008059382}/InProcServer32]
@="SystemRoot%/System32/appwiz.cpl" (REG_EXPAND_SZ)
"ThreadingModel"="Apartment"
[HKEY_CLASSES_ROOT/CLSID/{0B124F8C-91F0-11D1-B8B5-006008059382}]
@="Installed Apps Enumerator"
[HKEY_CLASSES_ROOT/CLSID/{0B124F8F-91F0-11D1-B8B5-006008059382}/InProcServer32]
@="SystemRoot%/System32/appwiz.cpl" (REG_EXPAND_SZ)
"ThreadingModel"="Apartment"

注意:此项只在 Microsoft windows XP 中可用。
[HKEY_CLASSES_ROOT/CLSID/{CFCCC7A0-A282-11D1-9082-006008059382}]
@="Darwin App Publisher"
[HKEY_CLASSES_ROOT/CLSID/{CFCCC7A0-A282-11D1-9082-006008059382}/InProcServer32]
@="SystemRoot%/System32/appwiz.cpl" (REG_EXPAND_SZ)
"ThreadingModel"="Apartment"
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Shell Extensions/Approved]
"{352EC2B7-8B9A-11D1-B8AE-006008059382}"="Shell Application Manager"
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Shell Extensions/Approved]
"{0B124F8F-91F0-11D1-B8B5-006008059382}"="Installed Apps Enumerator"

注意:此项只在 Microsoft windows XP 中可用。
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/Current Version/App Management/Publishers/Darwin App Publisher]
@="{CFCCC7A0-A282-11D1-9082-006008059382}"
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Shell Extensions/Approved]
"{CFCCC7A0-A282-11D1-9082-006008059382}"="Darwin App Publisher"
[HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/ControlPanel/InProcCPLs]
"appwiz.cpl"=""
ARP 运行时使用的注册表项。
HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/AppInstallPath
读取 INF 文件。代码读取 INF 文件名。使用的 INF 段为“AppInstallList”
HKEY_LOCAL_MACHINE/Software/Policies/Microsoft/Windows/Installer/Terminal Server/EnableAdminRemote
ARP 运行时设置为 1。告知终端服务器 ARP 正在运行。
ARP 退出时设置为 0。
HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/App Management/Publishers 枚举应用程序发行者
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Control/Wx86/cmdline
读取它以确定是否启用了 wx86。
HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Explorer/NewShortcutHandlers
枚举以获得“new-link”(新建链接)处理程序的列表。这些处理程序似乎可以添加给定项目的链接,例如添加到“开始”菜单、桌面或其他项目的链接。
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Control/Shutdown/ForceReboot
读取它以确定运行安装程序后是否需要重新启动计算机。
如果其中包含值,则意味着每次运行安装程序后都必须重新启动。
HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/MS-DOSOptions

更多信息

有关更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
265829 (http://support.microsoft.com/kb/265829/)windows 2000 上安装 Internet Explorer 5.5 或 Internet Explorer 6 之后,“添加/删除程序”工具可能会不工作
315341 (http://support.microsoft.com/kb/315341/) 如何执行 windows XP 的就地升级(重新安装)
292175 (http://support.microsoft.com/kb/292175/) 如何执行 windows 2000 的就地升级

这篇文章中的信息适用于:
Microsoft windows XP Home Edition
Microsoft windows XP Professional Edition
Microsoft windows 2000 Server
Microsoft windows 2000 Advanced Server
Microsoft windows 2000 Professional Edition
allyesno注:似乎不适用于2003 奇怪
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值