WPFアプリケーションでバージョンを表示する
Visual C# 2010 Expressは無料で商用利用もできるので、ちょっとしたWindowsアプリを作るのに重宝している。
要件としては、WindowsフォームアプリとWPFアプリのどちらでもよかったのだが、せっかくなので新しい技術のありそうなWPFを選択した。途中、他社製のコンソールアプリを起動する必要があるので、SilverlightやWebアプリは除外。
ExpressにはInstallShieldが含まれていないので、インストーラーが必要なら、ClickOnceを利用することになる。ソリューションエクスプローラーでプロジェクトを選択して右クリック、プロパティを表示させ、「発行」タブで発行できる。ここの「バージョンの発行」にあるバージョン番号をアプリで表示する方法は以下の通り。
string version; XmlDocument xd = new XmlDocument(); Assembly a = System.Reflection.Assembly.GetExecutingAssembly(); string path = new Uri(a.GetName().CodeBase).LocalPath; xd.Load(path + ".manifest"); if (xd.HasChildNodes) { version = xd.ChildNodes[1].ChildNodes[0].Attributes.GetNamedItem("version").Value.ToString(); }
ここを参考にした。
うまく表示できたので、今日はこれで終了!