プログラムからアセンブリ情報を取得する - Visual C# プログラミング

SPECIAL


プログラムからアセンブリ情報を取得する

Microsoft Visual C# では、プログラムから簡単に、著作権表示やバージョン情報などのアセンブリ情報を取得することができます。

プロジェクトのアセンブリ情報に登録した "会社", "製品", "ファイルバージョン" は、それぞれ次のようにして取得します。

// 会社名を取得します。

String company = Application.CompanyName;

 

// 製品名を取得します。

String product = Application.ProductName;

 

// ファイルバージョンを取得します。

String version = Application.ProductVersion;

このようにすることで、それぞれのアセンブリ情報を文字列で取得することができました。

 

その他の "著作権" や "説明" といったアセンブリ情報を取得するには、少し複雑な手順を踏む必要があるようです。

流れとしては、System.Refrection 名前空間の Assembly クラスが持つ GetEntryAssembly メソッドを使って Assembly を取得した上で、そこからそれぞれの情報を持つクラスを取り出すようにします。

 

例えば "著作権" を取得したい場合には、次のような感じになります。

ここではあらかじめ "using System.Reflection;" を冒頭で宣言しているものとします。

// アセンブリ情報を取得します。

Assembly assembly = Assembly.GetEntryAssembly();

 

// 著作権情報を取得します。

AssemblyCopyrightAttribute[] copyrightAttributes = (AssemblyCopyrightAttribute[])assembly.GetCustomAttributes(typeof(AssemblyCopyrightAttribute), false);

 

// 著作権情報を取り出します。

String copyright = copyrightAttributes[0].Copyright;

このようにすることで、アセンブリ情報の "著作権" に設定した文字列を取得することができました。


[ もどる ]