views:

116

answers:

1

From what I understand, the output from the following script should include "Win32_PerfRawData_PerfDisk_PhysicalDisk" in Windows XP and higher, but it doesn't for me in Vista Business 32-bit Service Pack 2. Thus far I have been very unsuccessful googling for information about this performance class.

strComputer = "."
Set objWMIService=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _ 
strComputer & "\root\cimv2")

For Each objclass in objWMIService.SubclassesOf()
    Wscript.Echo objClass.Path_.Class
Next

Does this WMI class simply not exist in Vista? If it is just me, is there a way to fix WMI? I have already tried running winmgmt /resetrepository and winmgmt /resyncperf and neither helps.

Edit: Sorted and Edited Output

snip...

  • Win32_PerfFormattedData_NETFramework_NETCLRSecurity
  • Win32_PerfFormattedData_Outlook_Outlook
  • Win32_PerfFormattedData_PerfNet_Browser
  • Win32_PerfFormattedData_PerfNet_Redirector

snip...

Win32_PerfFormattedData_PerfDisk_* is missing.

Also tried lodctr /R. No help.

SOLVED

These counters can be disabled in the registry. Just set HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Perfdisk\Performance\Disable Performance Counters to 0 and reboot.

http://blogs.technet.com/askperf/archive/2010/03/05/two-minute-drill-disabled-performance-counters-and-exctrlst-exe.aspx

A: 

Should be okay on Vista. the docs here state at the bottom of the page:

DLL: Wmicookr.dll on Windows Server 2003 and Windows XP, WmiPerfInst.dll on Windows Server 2008 and Windows Vista.

Can you check that the WmiPerfInst.dll DLL exists on your box?

Another things to try is to see if you can get stats from the corresponding RawData class? Vista appears to have changed the way in which raw data is translated to cooked data. My knowledge of that is pretty thin (based on a very cursory Google search) since I'm only involved in WMI on XP/Svr2k3/Svr2k8 - I didn't think anyone was actually using Vista :-)


And, if you're going to accept my answer even though it didn't help, at least let me plagiarise your solution :-)

These counters can be disabled in the registry. Just set HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Perfdisk\Performance\Disable Performance Counters to 0 and reboot.

But seriously, thanks for that. At some point, we'll probably have to support post-Vista ourselves so it'll help us out to know this.

paxdiablo
WMICOOKR.dll (74,752 bytes) and WmiPerfInst.dll (47,104 bytes) both present and accounted for.
Martin
Then you've moved beyond my skill level, @Martin, sorry I can't help further. Hopefully some-one with more experience on WMI/Vista will amble along soon. Best of luck.
paxdiablo