2

WPF C# でプログラミングし、ProcessorID (または他のシステム識別子) を取得しようとしています。MSDN - System.Management Namespaceを読みました。名前空間を追加しましたが、提供されませんManagementBaseObject Class

using System.Management;

/* code */
System.Management.(there is no ManagementBaseObject)

System.Management は WinForms でのみ使用され、WPF では使用されませんか?

4

4 に答える 4

2

System.Management.dll への参照を追加する必要があります

(そのクラスのドキュメントの「アセンブリ」ごと)

于 2011-07-28T11:07:07.200 に答える
2

System.Management内に名前空間を持つ既存のタイプがいくつかありSystem.Coreます。これが、いくつかのタイプが表示されている理由です。

ただしManagementBaseObject、 の場合はSystem.Management.dll、プロジェクトへの参照も追加する必要があります。

于 2011-07-28T11:08:40.367 に答える
2

への参照を追加した場合、次のコードはプロセッサ ID を示しますSystem.Management

public static string GetProcessorID()
{
    var processorID = "";
    var query = "SELECT ProcessorId FROM Win32_Processor";

    var oManagementObjectSearcher = new ManagementObjectSearcher(query);

    foreach (var oManagementObject in oManagementObjectSearcher.Get())
    {
        processorID = (string)oManagementObject["ProcessorId"];
        break;
    }

    return processorID;  
}
于 2011-07-28T11:13:15.457 に答える