【问题标题】:Get full CPU name without WMI在没有 WMI 的情况下获取完整的 CPU 名称
【发布时间】:2011-01-23 11:38:37
【问题描述】:

有谁知道是否可以在不使用 WMI 的情况下获得完整的处理器名称(如控制面板 | 系统中所示)?我猜你可以拨打一些非托管电话。

WMI 可以完成这项工作,但我发现它在某些计算机上间歇性崩溃或锁定。

【问题讨论】:

    标签: winapi wmi


    【解决方案1】:

    您应该能够检查注册表: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);
    

    【讨论】:

    • 据我所知,这只是返回一些数字。我可以获得完整的 CPU 名称吗?
    • 这将为我生成“AMD Athlon(tm) 64 X2 Dual Core Processor 4600+”。
    • 抱歉,我编辑了答案 - 我最初建议使用 GetSystemInfo win32 调用,但这需要一些工作来解析 - 注册表方式应该更容易:)
    • 这将为我生成“AMD Turion(tm) X2 Dual Core Mobile RM-70”。
    • @Eric 你是说 GetSystemInfo win32 调用还返回可以解析为 CPU 名称的数据吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-11
    • 2012-02-10
    • 1970-01-01
    • 2010-10-26
    • 2014-04-07
    相关资源
    最近更新 更多