VisualStudio 2019 インストーラの作成方法
VisualStudio2019で配布用のインストーラを作成します。
ツールは VisualStudio Instller を使用します。
目次
1. Installer Project のダウンロード
インストーラを作成するプロジェクトの[拡張機能の管理(M)]を開きます。
オンラインの項目を選択して検索欄に「Installer Projects」と入力します。
表示されたMicrosoft Visual Studio Installer Projectsの[ダウンロード]を左クリック。
VisualStudioの終了を促されるので開いているプロジェクトを閉じます。
VisualStudioを終了するとウィンドウが起動するので[Modify]を左クリック。
以下のウィンドウが表示されたらダウンロードの完了です。
2. Installer Project の作成
インストーラを作成するプロジェクトを再度開きます。
プロジェクト名を右クリックして[追加] → [新しいプロジェクト(N)]を左クリック。
検索欄に「Installer」と入力して表示された[Setup Project]を選択して[次へ(N)]を左クリック。
必要に応じて名前を変更してから[作成(C)]を左クリック。
今回は「Setup1」のままとします。
「Setup1」プロジェクトが作成されます。
3. インストーラー発行元の情報を入力
Setup1プロジェクトを左クリック。
「Author」「Manufacture」「ProductName」「Title」を入力します。
今回はインストール時にどの項目が表示されるのか識別できるように項目名を入力します。
4. ProgramFiles にコピーするアプリケーションファイルの指定
Setup1を右クリックして[View] → [ファイルシステム]を左クリック。
表示されたFile System内の[Application Folder]を右クリックして[Add]→[プロジェクトの出力(P)]を左クリック。
一覧から[プライマリ出力]を選択し、構成は「Release Any CPU」を選択して[OK]を左クリック。
プライマリ出力にはプロジェクト内の dll や exe が含まれています。
Application Folder に「プライマリ出力」のファイルが作成されます。
5. デスクトップに表示するショートカットファイルの指定
[User's Desktop]を選択した状態で右側の白い背景を右クリックします。
表示されたメニューの[新しいショートカットの作成]を左クリック。
Lock in に「Application Folder」を選択して表示された[プライマリ出力]を選択して[OK]を左クリック。
User's Desktop に[プライマリ出力]が作成されます。
User's Desktop の[プライマリ出力]を右クリックして表示されたメニューから[プロパティ ウィンドウ]を左クリック。
Name にショートカットアイコンの名称を入力します。
User's Desktop の[プライマリ出力]だったショートカットの名前が変更されます。
ショートカットの名前に青い波線が引かれている事に気づくと思います。
User's Desktop の Always Create が False (初期値)のままだと最後のインストーラ作成時に以下の様なエラーになるため True に変更します。
すべてのリビルド開始: プロジェクト:InstallerSample, 構成: Release Any CPU ------ 1> InstallerSample -> C:\Users\user\source\repos\InstallerSample\InstallerSample\bin\Release\InstallerSample.exe ------ Starting pre-build validation for project 'Setup1' ------ ------ Starting pre-build validation for project 'Setup1' ------ ERROR: The target of shortcut 'InstallerSample' is invalid. The 'AlwaysCreate' property of folder 'User's Desktop' must be set to 'True' ERROR: The target of shortcut 'InstallerSample' is invalid. The 'AlwaysCreate' property of folder 'User's Desktop' must be set to 'True' ------ Pre-build validation for project 'Setup1' completed ------ ------ Pre-build validation for project 'Setup1' completed ------ 2>------ すべてのリビルド開始: プロジェクト:Setup1, 構成: Release ------ 2>------ すべてのリビルド開始: プロジェクト:Setup1, 構成: Release ------ ========== すべてリビルド: 1 正常終了、1 失敗、0 スキップ ==========
User's Desktop を右クリックして[プロパティ ウィンドウ]を左クリック。
AlwaysCreate を True に変更します。
6. デスクトップのショートカットにアイコンを指定
ショートカットに使用するアイコンファイルをプロジェクトに取り込みます。
プロジェクト名を右クリックして[プロパティ]を左クリック。
[リソース]の[▼]から[既存ファイルの追加(E)]を左クリック。
ショートカットに表示したいアイコンを取り込みます。
今回は cat.ico というファイルを使用します。
取り込まれたファイルはResourcesフォルダに保存されます。
取り込んだアイコンファイルをショートカットに指定します。
User's Desktop のショートカットを選択した状態でInstallSampleを右クリック。
表示されたメニューの[プロパティ ウィンドウ(W)]を左クリック。
Icon の[Brows]を左クリック。
[Brows]を左クリック。
Lock in は[Application Folder]を選択して[Add File]からプロジェクトのResourcesフォルダにあるアイコンファイルを追加します。
追加するとファイル名が表示されるので選択して[OK]を左クリック。
追加したアイコンが表示されるので選択して[OK]を左クリック。
ショートカットに指定したアイコンファイルはSetup1の中に保存されます。
またUser's DesktopのショートカットのIconは[Icon]となります。
7. スタートメニューに表示するファイルの指定
Redmeなど必要なファイルがあれば表示できるのですが今回はデスクトップと同じショートカットを表示します。
User's Programs Menu を右クリックして[Add] → [Folder]を左クリック。
今回は InstallerSample と名前を付けます。
作成したフォルダを選択した状態で右側の白背景を右クリック。
表示されたメニューから[新しいショートカットの作成(C)]を左クリック。
Lock in は[Application Folder]を選択して表示された[プライマリ出力]を選択して[OK]を左クリック。
User's Programs Menu の Installer Sample に [Shortcut to プライマリ出力]が表示されます。
Shortcut toプライマリ出力を右クリックして[プロパティウィンドウ]を左クリック。
Name にショートカットアイコンの名称を入力します。
User's Program Menu のショートカットアイコンの名前が変更されています。
8. スタートメニューのショートカットにアイコンを指定
新たにアイコンを追加して使用する場合は 6. デスクトップのショートカットにアイコンを指定 と同じようにResourceにファイルを取り込む必要があります。
今回はデスクトップのショートカットと同じアイコンを使用します。
Shortcut toプライマリ出力を右クリックして[プロパティウィンドウ]を左クリック。
Icon の[Brows]を左クリック。
Setup1にアイコンファイルが保存されている場合は Lock in を選択するとファイル名が表示されます。
ファイル名を選択して[OK]を左クリック。
User's Program Menu のショートカットのIconは[Icon]となります。
9. インストーラの作成
Setup1を右クリックして[リビルド]を左クリックします。
出力が「すべてリビルド: 2正常終了、0失敗、0スキップ」となれば完了です。
[;w350]
プロジェクトフォルダ内のSetup1に「Setup.exe」「Setup1.msi」が作成されます。
10. インストーラの実行
発行元の情報の入力がどのように表示されているのか表示の確認を行います。
インストールの完了です。
コントロールパネルのアプリケーション名は ProductName となっていました。
スタートメニューにショートカットアイコンが作成されています。
デスクトップにも同様にショートカットアイコンが作成されています。
まとめ
操作性はInstallSheildに劣りますが無料で使える事を考えると十分な内容です。
オープンソースのツールも幾つかありますが VisualStudio Installer はMicrosoftがサポートしているため安心して使用できます。
今回はインストーラの基本的な使い方を確認しました。
次回は多言語、NuGetパッケージを利用した場合の使い方を確認したいと考えています。
参考資料
https://www.osadasoft.com/visual-studio-2017%E3%81%A7%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%A9%E4%BD%9C%E6%88%90/
【Visual Studio 2019】インストーラ作成のまとめ アイコンは?.NET Frameworkを含めるには? - VS練習シート
なつかしの Visual Studio Installer(の後継)を現役のVisual Studioで使用する - Qiita
Windows Installer手引書 Part.1 はじめに - Qiita