長い説明は いいから、今すぐ、手っ取り早く、やり方を教えてくれ! 簡潔、明瞭、的確に 結果だけ頼む! な人。。

C#でWMIを使ってOSやメモリ情報の取得

スポンサードリンク

Visual Studio2015のC#でパソコンのOSやメモリーの情報を取得する方法を調べたのでメモしておきます。
OSやメモリーの情報を得るには、いくつかありますが「WMI」を使う方法でやってみました。

WMI

WMI(Windows Management Instrumentation)とは、コンピュータやOSの情報を取得したり設定することができるインターフェースです。

参照の追加

まず、C#でWMIを使うために、プロジェクトの参照設定に「System.Management」の参照を追加します。
下記が参照の追加手順です。
1.メニューの「プロジェクト」ー「参照の追加」を選択

2.参照マネージャーの画面で、左側で「アセンブリ」の「フレームワーク」を選択。
右側のリストで「System.Management」の項目にチェック
「OK」ボタンクリック。

サンプル

Visual Studio2015のC#で、OSとメモリーの情報を取得するプログラムサンプルです。
他にもWMIを使って、いろいろな情報が取得できます。

        private void button1_Click(object sender, EventArgs e)
        {
            int nVal;
            System.Management.ManagementClass mc = new System.Management.ManagementClass("Win32_OperatingSystem");
            System.Management.ManagementObjectCollection moc = mc.GetInstances();

            foreach (System.Management.ManagementObject mo in moc)
            {
                // OSの情報
                // エディション
                System.Diagnostics.Debug.WriteLine("Caption=" + mo["Caption"].ToString());

                // バージョン
                System.Diagnostics.Debug.WriteLine("Version=" + mo["Version"].ToString());

                // ビルド番号
                System.Diagnostics.Debug.WriteLine("BuildNumber=" + mo["BuildNumber"].ToString());


                // メモリー情報
                // 合計物理メモリー
                nVal = Convert.ToInt32(mo["TotalVisibleMemorySize"]) / 1024;    // 単位 KB -> MB
                System.Diagnostics.Debug.WriteLine("合計物理メモリ(MB)=" + nVal.ToString());

                // 利用可能な物理メモリー
                nVal = Convert.ToInt32(mo["FreePhysicalMemory"]) / 1024;    // 単位 KB -> MB
                System.Diagnostics.Debug.WriteLine("利用可能な物理メモリ(MB)=" + nVal.ToString());

                // 合計仮想メモリー
                nVal = Convert.ToInt32(mo["TotalVirtualMemorySize"]) / 1024;    // 単位 KB -> MB
                System.Diagnostics.Debug.WriteLine("合計仮想メモリ(MB)=" + nVal.ToString());

                // 利用可能な仮想メモリー
                nVal = Convert.ToInt32(mo["FreeVirtualMemory"]) / 1024;    // 単位 KB -> MB
                System.Diagnostics.Debug.WriteLine("利用可能な仮想(MB)=" + nVal.ToString());
            }
        }

実行した結果です。パソコンのOSとメモリーの情報が取得できました。

スポンサードリンク

関連記事

コメント

  • トラックバックは利用できません。

  • コメント (0)

  1. この記事へのコメントはありません。

*

スポンサードリンク

About Me

長い説明や前置きはいいから、
手っ取り早く、 教えてくれ!

簡潔、明瞭、的確につきる。

それ読んだり、聞いたりするの長いし面倒
結論、結果だけ頼む!

急いでるようで急いでない、
時間がないようで、そうでもない、
ただ ただ面倒、長いのにうんざり な人。。