' *** Get the server name
set wsh_shell = wscript.CreateObject("Wscript.Shell")
set wsh_env = wsh_shell.Environment("PROCESS")
server_name = wsh_env("COMPUTERNAME")
set wsh_env = nothing
set wsh_shell = nothing
' *** Open the WMI service
set wmi_service = GetObject("winmgmts:\\" & server_name)
' *** Processor
set wmi_objectset = wmi_service.InstancesOf("Win32_Processor")
for each wmi_object in wmi_objectset
wscript.echo cstr(wmi_object.MaxClockSpeed) & " - " _
& cstr(wmi_object.NumberOfCores)
next
set wmi_service = nothing
我已经让脚本打印了时钟速度,但您可以查看 Stuart Dunkeld 帖子中链接中提到的任何属性。
请注意,在 Windows Server 2003、SP1 或 SP2 上,Win32_Processor 的 NumberOfCores 属性不可用,除非您安装了此 KB 中所述的修补程序 180973(适用于 x86 或 x64):http: //support.microsoft.com/kb/ 932370。对于 Windows XP SP2 也是如此 - 请参阅 KB: http: //support.microsoft.com/kb/936235
每个 KB 页面顶部都有一个关于如何通过电子邮件请求修补程序的链接。此属性首次出现在 Windows Vista 上。
WMI WIN32_Processor 类提供有关已安装处理器的基本信息。
尝试:
我已经让脚本打印了时钟速度,但您可以查看 Stuart Dunkeld 帖子中链接中提到的任何属性。
约翰·雷尼
除了其他答案中提到的Win32_Processor类之外,您还有Win32_ComputerSystem类,它具有 NumberOfLogicalProcessors 和 NumberOfProcessors 值。文档中有关操作系统对这两个值的支持的注释略有不正确。自 SP3 以来,XP 确实支持 NumberOfLogicalProcessors 值。我猜Win2003 也将在其下一个Service Pack 发布时支持它。
在旧版本的 Windows(Win2003、XP SP2 或更早版本)上,Win32_Processor.SocketDesignation 始终为逻辑处理器返回“Proc 1”。此脚本适用于任何版本的 Windows。
请注意,在 Windows Server 2003、SP1 或 SP2 上,Win32_Processor 的 NumberOfCores 属性不可用,除非您安装了此 KB 中所述的修补程序 180973(适用于 x86 或 x64):http: //support.microsoft.com/kb/ 932370。对于 Windows XP SP2 也是如此 - 请参阅 KB: http: //support.microsoft.com/kb/936235 每个 KB 页面顶部都有一个关于如何通过电子邮件请求修补程序的链接。此属性首次出现在 Windows Vista 上。