Jump to content

How To Fix WMI Corruption


Recommended Posts


Posted

1. Log in as a local administrator on the target system.

2. If possible, configure antivirus so it does not scan any of the files of subfolders of "%windir%\system32\wbem\repository".

3. Execute the following batch file to clear out the existing repository and autorecovery cache.

%systemdrive%
cd %windir%\system32\wbem
sc config winmgmt start= disabled
net stop winmgmt /y
if exist repository.old rmdir /s/q repository.old
rename repository repository.old
if exist autorecover.old rmdir /s/q autorecover.old
rename autorecover autorecover.old
md autorecover

4. Export the "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM" to a REG file for backup (i.e. WBEM_org.REG). Then Import the following REG file to set the WBEM logging level to verbose, increase the maximum log size to 5 MB, and clear out the autorecovery list.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\CIMOM]
"Logging"="2"
"Log File Max Size"="5000000"
"Autorecover MOFs"=hex(7):00,00
"Autorecover MOFs timestamp"=""

5. Execute the following batch file to rebuild the repository and autorecovery list. The duplicate lines are intentional. This batch file will take several minutes to complete.

%systemdrive%
cd %windir%\system32\wbem
sc config winmgmt start= auto
for /f %%s in ('dir /b *.mof *.mfl') do mofcomp %%s
for /f %%s in ('dir /b *.mof *.mfl') do mofcomp %%s
for /f %%s in ('dir /b *.mof *.mfl') do mofcomp %%s
WINMGMT.EXE /REGSERVER
WINMGMT.EXE /CLEARADAP
WINMGMT.EXE /RESYNCPERF

6. Wait approx 15 minutes after running the above batch file to allow the performance counter resynchronization to complete. Then run WMIDIAG (cscript wmidiag.vbs) to establish a baseline report.

7. Execute the following batch file to clear out the WBEM logs.

%systemdrive%
cd %windir%\system32\wbem\logs
del /Q *.*

Posted (edited)

Or he could download the WMI Diagnosis Utility 2.0 from the Microsoft site and run that as a local admin... ;D

It backs up and clears the repository as well. We found it when we found out that some custom stuff done to our workstations sometimes causes the repository to grow to astronomical sizes (several GB...yeah). Running WMI Diag on the workstation fixes the problem.

Edited by nmX.Memnoch
Posted

Hi,

You could also use Dial-a-Fix to repair or reinstall WMI/WBEM services and such automatically for you.

If this doesn't fix the issue then you can download the MS repair tool and the package has the download location for you.

Kind Regards

Simon

Posted
Or he could download the WMI Diagnosis Utility 2.0 from the Microsoft site and run that as a local admin... ;D

It backs up and clears the repository as well. We found it when we found out that some custom stuff done to our workstations sometimes causes the repository to grow to astronomical sizes (several GB...yeah). Running WMI Diag on the workstation fixes the problem.

Yeah, but if it fails, what then? It doesn't tell you where it failed (whereas the script and .reg files I gave are safer, and visible as to what is happening) ;).

Posted
It doesn't tell you where it failed

True, true. I don't recall that we've ever had it fail...but you're right, it doesn't give you a clue at all where it failed at.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...