2010-03-04 70 views
10

有誰知道是否可以在不使用WMI的情況下獲取完整處理器名稱(如控制面板|系統中所示)?我猜測你可以做一些非託管電話。在沒有WMI的情況下獲取完整的CPU名稱

WMI做的工作,但我發現它間歇性地崩潰或鎖定在某些計算機上。

回答

12

你應該只能夠檢查註冊表:HKEY_LOCAL_MACHINE \ HARDWARE \ DESCRIPTION \ SYSTEM \ CentralProcessor \ 0 \ ProcessorNameString應該給你

下面是一些示例代碼:

var key = Registry.LocalMachine.OpenSubKey(@"HARDWARE\DESCRIPTION\System\CentralProcessor\0\"); 
var processorName = key.GetValue("ProcessorNameString"); 
Console.WriteLine(processorName); 
+0

據正如我所看到的,這只是返回一些數字。我可以得到完整的CPU名稱嗎? –

+0

這爲我製作了「AMD Athlon(tm)64 X2雙核處理器4600+」。 –

+0

對不起,我編輯了答案 - 我最初建議GetSystemInfo win32調用,但這需要一些工作來解析 - 註冊表的方式應該更容易:) – Eric

相關問題