我正在尝试在64位计算机上查询32位性能监视器。

通过从32位计算机执行的get-counter查询,看不到64位计算机上的购买默认32位计数器。

任何解决方法?仅启用WMI,而没有WINRM。

$Counters = "\App Virt Client Cache\Cache size (MB)"
(Get-Counter -Counter $Counters -ComputerName test1 -SampleInterval 1 -ErrorAction SilentlyContinue).CounterSamples

最佳答案

性能计数器WMI类使用剩余的名称或基于计数器对象名称的名称来命名Win32_PerfFormattedData_开头。

因此,您应该可以通过以下方式找到正确的WMI类:

Get-WmiObject -computer test1 -list "win32_PerfFormattedData_*" | Format-Table Name

并寻找正确的类(class)名称。各个计数器将是WMI对象的属性。如果计数器有实例,则将有WMI类的多个实例(实例名称是Name属性的值)。

如果找不到合适的类别,还可以考虑查看原始类别(包含根据计数器类型需要处理的原始编号。例如,您需要将记录在柜台上的利率导出为东西):前缀是Win32_PerfRawData_

有关文档,请参见MSDN:http://msdn.microsoft.com/en-us/library/windows/desktop/aa392738%28v=vs.85%29.aspx

关于powershell - Powershell从64位计算机获取32位计数器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18564171/

10-13 07:57