Visual Basic 図解 基礎解説 |
この記事が対象とする製品・バージョン
Visual Basic 2005 | ◎ | 対象です。 |
Visual Basic.NET 2003 | ◎ | 対象です。 |
Visual Basic.NET (2002) | ◎ | 対象です。 |
Visual Basic 6.0 | × | 対象外です。 |
概要VBで作成したexeファイルまたはdllファイルを右クリックしてプロパティ画面を開いた場合に表示される情報の設定方法を説明します。また、設定した情報をプログラムで取得する方法も説明します。 |
exeファイル(またはdllファイル)を作成後、ファイルを右クリックしてプロパティを開くと以下の情報を参照でます。
■画像1:ファイルのプロパティ 全般 | ■画像2:ファイルのプロパティ 詳細 |
また、マウスをファイルに合わせることで表示される情報もあります。
■画像3
ファイルのプロパティ画面で表示されている情報の多くはVBのアセンブリ情報画面で設定できます。
VB.NET2002およびVB.NET2003ではアセンブリ情報画面ではなくAssemblyInfo.vbファイル内の属性を使ってこれらの情報を設定できます。
アセンブリ情報画面はソリューションエクスプローラでMy Projectを開いて、「アプリケーション」ページの[アセンブリ情報]ボタンで開きます。
■画像4:アセンブリ情報
ファイルのプロパティ画面、VBのアセンブリ情報画面、AssemblyInfo.vbの属性の各設定項目は次のように対応しています。
ファイルのプロパティ画面 | VBのアセンブリ情報 | 属性 | 例 |
ファイルの説明 | タイトル | AssemblyTitle | This is Title |
ファイル バージョン | ファイル バージョン | AssemblyFileVersion | 4.3.2.1 |
製品名 | 製品 | AssemblyProduct | テスト製品 |
製品バージョン | ファイル バージョン | AssemblyFileVersion | 4.3.2.1 |
著作権 | 著作権 | AssemblyCopyright | Copyright (C) 2007 |
商標 | 商標 | AssemblyTrademark | ザ・テスト |
これらの項目をプログラム中で取得する方法を表にまとめます。
たとえば、製品名を取得するにはFileVersionInfo.ProductNameプロパティを使用するか、My.Application.Info.ProductNameプロパティを使用するか、Application.ProductNameを使用すればよいことが表からわかります。
FileVersionInfoの具体的な使用例はすぐ下で紹介します。
※この表にない方法で情報を取得する方法もあります。この表にのっている方法で情報が取得できない場合もあります。その場合はビルドエラーになるのですぐに気が付きます。
項目 | 例 | FileVersionInfo | My.Application.Info | その他 |
会社 | Visual Basic 中学校 | CompanyName | CompanyName | Application.CompanyName |
製品名 | テスト製品 | ProductName | ProductName | Application.ProductName |
ファイル バージョン (製品バージョン) |
4.3.2.1 | ProductVersion | Application.ProductVersion | |
プロパティ表示のテスト | Comments | Description | ||
タイトル (ファイルの説明) |
This is title | FileDescription | Title | |
著作権 | Copyright (C) 2007 | LegalCopyright | Copyright | |
商標 | ザ・テスト | LegalTrademarks | Trademark |
FileVersionInfoの使用例
VB2005の開発環境でこの例を試すには「Visual Studio ホスティングプロセスを有効にする」をオフにしてください。
この設定はソリューションエクスプローラのMy Projectの「デバッグ」ページにあります。この設定は標準でオンになっています。この設定がオンの時、開発環境ではそのアプリケーションの設定ではなく、マイクロソフトがあらかじめ用意した設定を取得できるだけです。ビルド後にexeを直接実行した場合はこの設定がオンでもオフでも同じように動作します。
サンプルの実行に必要なもの |
ListBox1 |
Dim
Info As FileVersionInfo Info = Process.GetCurrentProcess.MainModule.FileVersionInfo ListBox1.Items.Add(Info.CompanyName) ListBox1.Items.Add(Info.ProductName) ListBox1.Items.Add(Info.ProductVersion) ListBox1.Items.Add(Info.Comments) ListBox1.Items.Add(Info.FileDescription) ListBox1.Items.Add(Info.LegalCopyright) ListBox1.Items.Add(Info.LegalTrademarks) |
■リスト1:FileVersionInfoの使用例
参考:Windows XPでのファイルのプロパティ
■画像5:WindowsXPでのファイルのプロパティ バージョン情報