为什么某些 Windows WMI 计数器在某些系统上可用,而在其他系统上不可用?

为什么某些 Windows WMI 计数器在某些系统上可用,而在其他系统上不可用?

我正在尝试使用以下方法测量每个进程的 CPU 使用率:

typeperf "\Process(SOME PROCESS)\% Processor Time" -si 1 -sc 60

问题是,我必须在很多 PC 上执行此操作,问题就从这里开始。有些机器返回以下错误:

Error: No valid counters

例如我使用上面显示的完全相同的命令并得到:

PC_A (Win7 64bit Home Edition) - type perf works
PC_B (Win7 64bit Pro Edition) - typeperf works
PC_C (Win7 64bit Pro Edition) - Error: No valid counters
PC_D (WinXP 32bit Multimedia Ed) - typeperf works
PC_E (Win Vista 64bit)  - Error: No valid counters

我花了很多时间在这上面,如果有人能解释原因我将不胜感激:

  1. 这些差异的根源是什么?毕竟我使用的是同一个命令。

  2. 为什么它在两台 Win7 上运行良好,而在第三台上却不运行?

  3. 是否可以以某种方式启用/打开“缺失”的性能计数器?

顺便说一句 - 我对所有这些机器都有管理员权限。

谢谢,阿图尔

答案1

检查无法读取计数器的计算机是否使用相同的语言包。我曾见过在安装了其他语言包的系统上出现此问题,此时必须使用本地化名称才能访问计数器。

相关内容