Windowsフォームでバージョン情報を画面タイトルの横に出す

2022年4月12日C#,ITVisualStudio,Windowsフォーム

バグ調査の時などにお客様が使用しているシステムのバージョンを知りたい時があります。
エラーが発生した時、お客様がキャプチャーを送ってくることが多いと思いますが、
画面タイトルにバージョンが出ていれば便利です。

バージョン設定

対象アプリケーションのPropeties → AssemblyInfoを開きます。

// アセンブリのバージョン情報は次の 4 つの値で構成されています:
//
//      メジャー バージョン
//      マイナー バージョン
//      ビルド番号
//      Revision
//
// すべての値を指定するか、次を使用してビルド番号とリビジョン番号を既定に設定できます
// 既定値にすることができます:
// [assembly: AssemblyVersion("1.0.*")]

[assembly: AssemblyVersion("1.0.0.0")] 
[assembly: AssemblyFileVersion("1.0.0.0")] 

AssemblyInfo内における上記記述の
[assembly: AssemblyVersion(“1.0.0.0")]でバージョン値を設定します。
次行の[assembly: AssemblyFileVersion(“1.0.0.0")]はコメントアウトしてください。
AssemblyVersionを設定すればAssemblyFileVersionも自動的に同じ値になります。

バージョン情報を画面タイトルの横に出す方法

System.Reflection.Assembly.GetExecutingAssembly().GetName().Version

でバージョンの値が取得できます。
テスト画面のタイトル横にバージョンを表示してみましょう。

Before
private void Form1_Load(object sender, EventArgs e)
{
  //ロードイベントでバージョンをタイトル横に表示
    this.Text = this.Text + "     Ver  " + System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;
}
After

まとめ

どのバージョンでバグが発生しているか分からないと調査のしようがない場合があります。
基本的にバージョン管理はしっかりやったほうがよいです。

Windowsフォーム関連記事

2022年4月12日C#,ITVisualStudio,Windowsフォーム

Posted by raishin