2010-03-30 32 views
1

據我所知,以下腳本的輸出應該包含Windows XP及更高版本中的「Win32_PerfRawData_PerfDisk_PhysicalDisk」,但它不適用於Vista商業版32位Service Pack 2中的內容。到目前爲止,我一直非常不成功地使用Google搜索關於這個表演課程的信息。Win32_PerfFormattedData_PerfDisk_PhysicalDisk在Vista中是否缺少WMI?

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

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

這個WMI類在Vista中不存在嗎?如果只是我,是否有解決WMI的方法?我已經嘗試運行winmgmt/resetrepository和winmgmt/resyncperf,但都沒有幫助。

編輯:排序和編輯輸出

喀嚓...

  • Win32_PerfFormattedData_NETFramework_NETCLRSecurity
  • Win32_PerfFormattedData_Outlook_Outlook
  • Win32_PerfFormattedData_PerfNet_Browser
  • Win32_PerfFormattedData_Per fNet_Redirector

喀嚓...

Win32_PerfFormattedData_PerfDisk_ *丟失。

也試過lodctr/R。沒有幫助。

解決

這些計數器可以在註冊表被禁用。只需將HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Perfdisk \ Performance \ Disable Performance Counters設置爲0並重新啓動即可。

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

回答

0

應該沒問題在Vista上。該文檔here狀態在頁面的底部:

DLL:Wmicookr.dll Windows Server 2003和Windows XP中,WmiPerfInst.dll的Windows Server 2008和Windows Vista上。

你可以檢查你的盒子上是否存在WmiPerfInst.dll DLL?

要嘗試的另一件事是看看你是否可以從相應的RawData類獲取統計信息? Vista似乎改變了將原始數據轉換爲熟化數據的方式。我的知識是非常薄的(基於一個非常粗略的谷歌搜索),因爲我只參與了WMI在XP/Svr2k3/Svr2k8 - 我不認爲任何人竟是用 Vista的:-)


而且,如果你要接受我的答案,即使它並沒有幫助,至少讓我抄襲你的解決方案:-)

這些計數器可以在註冊表被禁用。只需將HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Perfdisk \ Performance \ Disable Performance Counters設置爲0並重新啓動即可。

但嚴重的是,謝謝你。在某個時候,我們可能必須自己支持Vista後,才能幫助我們瞭解這一點。

+0

WMICOOKR.dll(74,752字節)和WmiPerfInst.dll(47,104字節)都出現並佔了。 – Martin 2010-03-30 05:38:17

+0

然後你已經超越了我的技能水平,@Martin,對不起,我不能進一步幫助。希望在WMI/Vista方面有更多經驗的人將會很快出現。祝你好運。 – paxdiablo 2010-03-30 05:39:58