【发布时间】:2014-10-05 05:27:52
【问题描述】:
我正在使用下面的 vb6 代码来获取当前运行的 cpu id
Dim CpuId As String
Dim objWMIService, colItems, objItem
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Processor")
For Each objItem In colItems
CpuId = objItem.ProcessorId
Next
msgbox cpuid
这适用于单个 cpu 处理器。 但是现在许多计算机都具有多个处理器,双核,核心 i 3 等。 如何列出所有现有的处理器 ID。
我正在使用处理器 ID 为我的软件进行许可,当客户端计算机将处理器切换到我未注册的处理器时,许可机器被宣布为未许可。
【问题讨论】:
-
我希望每个 物理 处理器都有一个 CPU ID。我不希望每个核心看到一个。您只能找出一个处理器中的内核数(参见
NumberOfCoresproperty)。 -
我不希望每个核心看到一个......我可能是错的,但显然 cpu id 在多核心场景中确实发生了变化。然后我必须等待客户给我打电话,以便为他们注册另一个 cpu-id。我希望有经验的人可以为我澄清。