2017-02-10 18 views
1

私はManagementObjectSearcherを使用しますが、これは.Net Coreには存在しません。どのようにして、C#と.Net Coreを使用したタイトルのようなシステム情報を取得するのでしょうか?.NET CoreのOS、コンピュータプロセッサ情報、RAMの合計、RAMの使用量などはどうすればわかりますか?

+2

'ManagementObjectSearcher'は、特にWindowsであるWMIを使用します。 .NET Coreはクロスプラットフォームなので、そのようなAPIはありません。この情報を取得するには、おそらくサードパーティのAPIが必要になります。 –

+1

これは[今後のリリース](https://github.com/dotnet/corefx/issues/9376)に予定されています。 .Net Coreは現在これを実装していません。 – Icemanind

+0

.NETコアで「ハードウェア」情報を取得できる方法はありませんか? –

答えて

0

まあ、これは私がしていることです。私の幸せな解決策ではありませんが、それは何も勝ちません。 :)プロジェクトのMicrosoft.VisualBasic.dllへの参照を追加します。それと環境の間で、私は得る:

 Microsoft.VisualBasic.Devices.ComputerInfo computerInfo = new Microsoft.VisualBasic.Devices.ComputerInfo(); 
     Console.WriteLine(Environment.ProcessorCount); 
     Console.WriteLine(computerInfo.AvailablePhysicalMemory); 
     Console.WriteLine(computerInfo.AvailableVirtualMemory); 
     Console.WriteLine(computerInfo.OSFullName); 
     Console.WriteLine(computerInfo.OSPlatform); 
     Console.WriteLine(computerInfo.OSVersion); 
     Console.WriteLine(computerInfo.TotalPhysicalMemory); 
     Console.WriteLine(computerInfo.TotalVirtualMemory); 
+0

完全な.NET Frameworkからの参照を追加する場合は、.NET Coreのみが使用できる環境では実行されません – Martheen

関連する問題