.NET Tools Visual Studio .NETで自作プログラムにセットアップ機能を付ける |
こうして追加されたセットアップ・プロジェクトは、通常のアプリケーションと同様にビルドすることができる。しかし、メニューから[ソリューションのビルド]を選んでも、セットアップ・プロジェクトはビルドされない。通常のビルドでは、セットアップを作成する必要がないことが多く、セットアップを作成する時間を待つ意味がないからだ。そのため、セットアップが必要なときは、[ソリューションのビルド]ではなく、ソリューション・エクスプローラの中で、Setup1を右クリックして[ビルド]を選ぼう。そうすると、セットアップがビルドされる。
ここで、注意点が2つある。1つは、セットアップにも、ReleaseビルドとDebugビルドが存在していることである。Debugが選択された状態でセットアップを作成すると、Debugビルド(最適化が行われなかったり、ファイル中にデバッグのための追加情報を含んでいる)の実行ファイルを含むセットアップが作成されてしまう。もう1つは、セットアップのビルドは、通常のプロジェクトのビルドよりも時間が掛かる場合があることだ。通常のビルドが一瞬で終わる状況でも、セットアップのビルドは少々待たされたりする。ビルドが終わっていないのに終わったとうっかり勘違いしないよう、よく確認してから次に進むようにしよう。
ビルドが終了すると、セットアップ・プロジェクトのディレクトリの下の「Release」ディレクトリ(Debugビルドなら「Debug」ディレクトリ)の下に、以下のようなファイルが生成されている。
セットアップをビルドした後のReleaseディレクトリ |
セットアップ・プロジェクトのビルドが終了すると、セットアップ・プロジェクトのディレクトリの下の「Release」ディレクトリ(Debugビルドなら「Debug」ディレクトリ)に、インストールに必要な一連のファイルが作成される。 |
この中で本当にマイハローに関する情報を含んでいるのは、Setup1.msiファイルだけである。もし、適切なバージョンのWindows Installerがインストール済みなら、このmsiファイルを開くだけでもセットアップできる。しかし、そうではないケースもあるので、Windows Installer自身のファイルも生成されている。InstMsiA.ExeとInstMsiW.Exeがそれに当たる。そして、Setup.ExeとSetup.Iniファイルは、必要があればWindows Installerをインストールした上で、msiファイルを開く役割を持っている。基本的にはここにあるファイルはすべてワンセットで配布されるものだろう。
では、さっそく、このSetup.Exeを実行してみよう。以下のような流れのセットアップが実際に稼働することが分かるだろう。
|
|
作成したセットアップ(Setup.Exe)の実行の流れ | |
VS.NETを使えば、このような市販アプリケーション・レベルのセットアップを簡単に作成することができる。 |
セットアップしたら、アンインストールが可能であることを確認する。コントロール・パネルの[プログラムの追加と削除]を開いてみてみよう。
コントロール・パネルの[プログラムの追加と削除] |
セットアップ・プログラムによりインストールされたプログラム(この段階ではプログラム名は「Setup1」)は、コントロール・パネルからアンインストールすることができる。ここではいったん[削除]ボタンでアンインストールしておく。 |
十分に結果を確認したら、ここではいったん[削除]ボタンでアンインストールしておこう。
INDEX | ||
[.NET Tools] | ||
Visual Studio .NETで自作プログラムにセットアップ機能を付ける | ||
1.ソリューションにセットアップのプロジェクトを追加する | ||
2.セットアップをビルドする | ||
3.セットアップを仕上げる(1) - 製品名の変更とスタート・メニューの作成 - | ||
4.セットアップを仕上げる(2) - スタート・メニューのアイコン修正 - | ||
「.NET Tools」 |
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|