連載:Windowsフォーム開発入門【Visual Studio 2010対応】

Windowsフォーム・アプリケーションの配布方法

初音 玲
2011/05/13
Page1 Page2

 Windowsフォーム開発入門の最終回は、作成したアプリケーション(以降、「アプリ」と略す)の配布方法について考えてみたいと思う。

 .NETアプリのインストールではレジストリ登録が不要なため、.NET Frameworkが導入済みのPCであればアプリの配布はビルドしたアセンブリをコピーするだけで済ますことが可能だ。しかしある程度の規模のアプリを設定ファイルやデータ・ファイルも含めて配布し、それと同時に配布先のフォルダなどに対してアプリを実行するために必要な環境整備を実現するには、(単なるコピーではなく)インストーラ形式の配布を考慮した方がよい。

 Visual Studio 2010に標準添付されているテンプレートとしては、「Visual Studio インストーラー」(以降、VSI)と「InstallShield Limited Edition」(以下、ISLE)がある*1。そこで、VSIとISLEのテンプレートによるインストーラの作成方法を紹介しよう。

*1 Visual Studio 2010に標準搭載されるといわれていたインストーラ「WiX(Windows Installer XML toolset)」のテンプレートはまだ標準搭載されていない。

Visual Studioインストーラによるインストーラの作成

 4つある[Visual Studio インストーラー]カテゴリのテンプレートの中でお勧めなのが「セットアップ ウィザード」テンプレートだ(次の画面を参照)。

図1 [Visual Studio インストーラー]カテゴリのテンプレート
図1 [Visual Studio インストーラー]カテゴリのテンプレート
[新しいプロジェクト]ダイアログで、左側のツリーから[その他のプロジェクトの種類]−[セットアップと配置]−[Visual Studio インストーラー]カテゴリを選択しているところ。

 このテンプレートを選べば、後はウィザード形式のダイアログ画面で各種の指定を行っていくだけで、インストーラ用のプロジェクトを作成できる。

[セットアップ ウィザード]テンプレートによるプロジェクト作成

(1)[セットアップ プロジェクト ウィザードへようこそ]ページ

 「セットアップ ウィザード」テンプレートを選択してプロジェクトを作成しようとすると、[セットアップ ウィザード]が立ち上がり、次の画面のような[ようこそ]ページが表示されるので[次へ]ボタンをクリックする。

図2 [セットアップ プロジェクト ウィザードへようこそ]ページ
図2 [セットアップ プロジェクト ウィザードへようこそ]ページ

(2)[プロジェクトの種類を選択]ページ

 次にプロジェクトの種類を選択するためのページが表示されるので、Windowsフォームの場合は[Windows アプリケーションのセットアップを作成する]ラジオボタンを選択する。

図3 [プロジェクトの種類の選択]ページ
図3 [プロジェクトの種類の選択]ページ

(3)[含めるファイルの選択]ページ

 このページではインストーラに含めたいファイルを指定する。.exeファイルと、必要であれば.exe.configファイルあたりを選択するとよいだろう。

図4 [含めるファイルの選択]ページ
図4 [含めるファイルの選択]ページ

(4)[プロジェクトの作成]ページ

 画面の内容を確認して問題なければ[完了]ボタンをクリックしてセットアップ・プロジェクトを生成する。

図5 [プロジェクトの作成]ページ
図5 [プロジェクトの作成]ページ

生成されたプロジェクトの確認

 [ソリューション エクスプローラー]を見ると(次の画面を参照)、ウィザードによって生成されたVSIセットアップ・プロジェクト内には、含めるファイルとして指定した.EXEファイル以外に、「見つかった依存関係」フォルダに「Microsoft .NET Framework」が指定されている。

図6 セットアップ・ウィザードにより生成されたプロジェクトの内容([ソリューション エクスプローラー])
図6 セットアップ・ウィザードにより生成されたプロジェクトの内容([ソリューション エクスプローラー])

 VSIセットアップ・プロジェクトでは、プロジェクト項目のプロパティとしてさまざまな情報が設定できるようになっているが、

  • Manufacturer:製造者。インストール先のフォルダ名の一部としても利用される。
  • ProductName:製品名。インストールしたプログラム名として利用される。

あたりのプロパティがインストーラを動かしたときの動作に大きく影響するので、最低限、これらのプロパティ設定は行う必要がある。

 次の画面は、[プロパティ]ウィンドウでのプロジェクト・プロパティの設定例である。

図7 VSIセットアップ・プロジェクト・プロパティの設定([プロパティ]ウィンドウ)
図7 VSIセットアップ・プロジェクト・プロパティの設定([プロパティ]ウィンドウ)

 ここまで設定できたら、Windowsフォーム・アプリと同様にビルドを行えば、「setup.exe」と「VSISetup.msi」の2つのファイルが生成される。

インストーラの実行

 ビルドして出来上がったsetup.exeファイルを実行するとインストーラが起動するが、もう少し手軽にインストーラを起動する方法としては、次の画面のようにVisual StudioのIDEで[ソリューション エクスプローラー]のプロジェクト項目の右クリック・メニューで[インストール]を選択する方法がある。

図8 IDEからのインストーラの起動
図8 IDEからのインストーラの起動

 このインストーラはセットアップ・ウィザード形式になっていて、インストール先のデフォルト表示および変更などインストーラに必要そうな機能を一通り網羅している。具体的には、以下の画面を参考にしてほしい。

図9 インストーラ(VSIセットアップ)の実行
[次へ]ボタンをクリック
図9 インストーラ(VSIセットアップ)の実行
図9 インストーラ(VSIセットアップ)の実行

 以上で、VSIによるインストーラの作成と、それを用いたインストールの実行は完了だ。

 続いて次のページでは、ISLE(InstallShield Limited Edition)について説明する。

前の回へ 次のページへ

 INDEX
  [連載]Windowsフォーム開発入門【Visual Studio 2010対応】
  Windowsフォーム・アプリケーションの配布方法
  1.Visual Studioインストーラ(VSI)によるインストーラの作成
    2. InstallShield Limited Edition(ISLE)によるインストーラの作成

インデックス・ページヘ  「Windowsフォーム開発入門」

@IT Special

- PR -

TechTargetジャパン

Insider.NET フォーラム 新着記事
  • 第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用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

イベントカレンダー

PickUpイベント

- PR -

アクセスランキング

もっと見る

ホワイトペーパーTechTargetジャパン

注目のテーマ

業務アプリInsider 記事ランキング

本日 月間
ソリューションFLASH