偶尔在查看 Windows XP 的本地连接的高级属性时,系统给出了“(WMI)信息可能损坏”的提示,防火墙不能设置,同时还发现PING不通局域网的网关,同时别的微机也PING不通这台机子。
首先怀疑TCP/IP协议出了问题,重新安装后故障依旧。将“Windows Management Instrumentation”作为关键词在搜索引擎上搜索,网络上给出的解决方法如下:
第一步 右击“我的电脑”,选择“管理”菜单,依次定位到“计算机管理(本地)→服务和应用程序→服务”项,在右边窗口中找到“Windows Management Instrumentation”一项,双击打开,在弹出的窗口中单击“停止”按钮。
第二步 进入本地磁盘的C:\Windows\System32\Wbem\Repository目录,删除该目录下的所有文件后,重新启动计算机。用户登录后,系统会重新在该目录拷贝建立所需要的文件,并且自动启动刚才停止的WMI服务。
但是按照上面的操作执行后,结果还是令人失望,问题并没有解决。不过在一个专业论坛中一个网友给出了一些解决问题的提示,就是把下面的命令文本内容保存成一个批处理文件,在安全模式下运行它。然后重新启动系统,问题竟然得到了解决,本地连接的高级属性和防火墙都可以进行设置了。
@echo on
cd /d c:\temp
if not exist %windir%\system32\wbem goto TryInstall
cd /d %windir%\system32\wbem
net stop winmgmt
winmgmt /kill
if exist Rep_bak rd Rep_bak /s /q
rename Repository Rep_bak
for %%i in (*.dll) do RegSvr32 -s %%i
for %%i in (*.exe) do call :FixSrv %%i
for %%i in (*.mof,*.mfl) do Mofcomp %%i
net start winmgmt
goto End
:FixSrv
if /I (%1) == (wbemcntl.exe) goto SkipSrv
if /I (%1) == (wbemtest.exe) goto SkipSrv
if /I (%1) == (mofcomp.exe) goto SkipSrv
%1 /RegServer
:SkipSrv
goto End
:TryInstall
if not exist wmicore.exe goto End
wmicore /s
net start winmgmt
:End