Visual Studio 2022でインストーラ作成

C#やVB.NETで作成したWindowsフォームアプリに対してインストーラを作成してみる。

以前(※)も同じような記事を書いたけど、最新版に書き直し。
Visual Studio 2017でインストーラ作成
・Win10 → Win11
・Visual Studio 2017 → 2022

最近では、msix形式のインストーラも出てはいるみたいだけど、脆弱性が見つかって一時無効化されたり、バタバタしているようなので少し様子見。
それと、今回対象としているアプリは、WPFとかでなく、Windowsフォームアプリってことでmsi形式のインストーラで充分。
ということで、早速作成方法。

 

もくじ


Visual Studio Installer Projectsの追加

  1. Visual Studioを起動
  2. 拡張管理
    [拡張機能]>[拡張機能の管理]メニューを開く。

  3. ダウンロード
    [拡張機能の管理]ダイアログの右上の検索ボックスから”Visual Studio Installer Projects”を検索し、ダウンロード。

  4. インストール
    Visual Studioを閉じるとインストールが開始される。
    インストール完了後、再起動する。

 
 

Windowsアプリケーションの作成

直接インストーラ作成と関係ないため割愛。
参考:Hello World!作成

 
 

インストーラ作成

  1. ソリューションを開く
    Visual Studioでインストーラを作成したいアプリのプロジェクト(ソリューション)を開く。

  2. プロジェクトの追加
    ソニューションエクスプローラー(画面右側)のソリューションを右クリックし、
    [追加]>[新しいプロジェクト]メニューを開く。

  3. Setup Project
    [新しいプロジェクトを追加]ダイアログの検索ボックスに”Setup Project”を入力(選択)し、[次へ]ボタンをクリック。

  4. プロジェクト名
    [新しいプロジェクトを構成します]画面で、プロジェクト名を入力し、[作成]ボタンをクリック。

     
    セットアッププロジェクトが追加される。

  5. ファイルシステムの編集
    まずは、ファイルシステムから設定を行う。
    上記流れで、既に「Files System(Setup名)」タブが表示されていると思うが無い場合は、「ソリューションエクスプローラー」のセットアップ(Setup1)を右クリックし、ポップアップメニューで[View]>「ファイルシステム」を選択すると表示できる。

    • Application Folder
      作成したアプリケーション(exe,dllなど)のコピー先などをここで指定する。
      “C:\Program Files\ApplicationName\Application.exe”など

    • User’s Desktop
      ユーザーのデスクトップにコピーするものを指定。
      プログラムのショートカットなどあれば指定。
      デスクトップに配置

    • User’s Program Menu
      ユーザーのプログラムメニューに追加するものを指定。
      プログラムのショートカットなどを指定。
  6. アプリケーションフォルダの設定
    「Application Folder」を右クリックし、ポップアップメニュー[Add]>[プロジェクト出力]を選択。

  7. [プロジェクト出力グループの追加]ダイアログが表示されるので、そこで「プライマリ出力を選択。
    すると、Windowsアプリケーションで作成したexeやdllなどをインストール対象として含んでくれる。
    あと「構成」は「Release」を選択。

    exeなど以外にも、例えばReadmeなどもインストールに含めておきたい場合、同様に、[Application Folder]を右クリックし、ポップアップメニュー[Add]>[ファイル]を選択しファイルを追加。

  8. ユーザーのデスクトップの設定
    デスクトップにアプリのショートカットを作成したい場合などは、こちらを編集する。
    今回は割愛。やり方は次の「ユーザーのプログラムメニューの設定」とほぼ同じ。

  9. ユーザーのプログラムメニューの設定
    今度はWindowsのスタートメニューに登録する情報を設定する。

    「User’s Programs Menu」を右クリックし、ポップアップメニュー[Add]>[Folder]を選択。

    フォルダ名を変更。(今回はアプリケーション名である”プチカレンダ”という名に変更)

  10. ショートカット作成
    更に、作成したフォルダが選択された状態で、右側のListView画面を右クリックし、ポップアップメニュー[新しいショートカットの作成]を選択。

    [Select Item in Project]ダイアログが表示されるので、そこでリストの中から”Application Folder”を選択([OK]押下またはダブルクリック)後、”プライマリ出力 from ~(Release Any CPU)”を選択し[OK]押下。

    Readmeについてもexe同様にショートカットを作成。

  11. プロパティ変更
    メイン画面に戻り、追加された”Shortcut to プライマリ出力 from ~”を選択し、画面右側のプロパティで、[Name]を上記名前から、任意のショートカット名に変更する。
    (ここでは、アプリ名の”プチカレンダ”に改名)

  12. アイコン変更
    次に、表示するアイコンも変更する。
    上記、[Name]同様に、プロパティの一覧にある[Icon]をダブルクリック。
    表示された「Icon」ダイアログの[Browse…]ボタンを押下する。

    「Select Item in Project」ダイアログで、アイコンの参照先である”Application Folder”をダブルクリック後、[File of Type]で”Execute Files(*.exe)”を選択。
    すると一覧に”プライマリ出力 from ~(Release Any CPU)”などが表示されるので、これを選択し[OK]押下。

    [Icon]ダイアログに戻ると、exeファイル内にあったアイコンが表示されているので、このアイコンを選択し[OK]押下。

    これで、exeのショートカットがプログラムメニューの方にも登録され、必要最小限の設定は完了。

  13. プロパティの設定値を変更
    最後に、セットアッププロジェクトのプロパティを一部修正する。

    [ソリューション エクスプローラー]で”Setup1″を選択し、その下のプロパティ一覧で必要に応じて以下の情報を修正する。

    AddRemoveProgramsIcon インストール後、「アプリと機能」一覧に表示されるアイコン。
    アイコンの変更方法は、上記同様。
    Author デフォルトはメールアドレス。
    今回は、作者”osada”に修正。
    Manufacturer デフォルトはメールアドレス。
    今回は、メーカー”OsadaSoft”に修正。
    ManufacturerUrl デフォルトは空欄。
    今回は、当サイトのURLに修正。
    ProductName デフォルトは作成したプロジェクト名(Setup1)。
    製品名。インストール時のフォルダ名にも使用される。
    今回は、”プチカレンダ”に修正。
    Title デフォルトは作成したプロジェクト名(Setup1)。
    セットアップ時の画面や、プロパティのタイトル名等に使用される。
    今回は、”プチカレンダ”に修正。
    Version デフォルトは、1.0.0。
    [アプリと機能]の一覧でも表示されるバージョン番号。
    今回は、アプリ本体とバージョン番号を合わせ修正。
  14. セットアップファイル名変更
    必要に応じてセットアップ(インストーラ)のファイル名を変更する。
    ソリューションエクスプローラー内にある今作成したプロジェクト(Setup1)を右クリックし、「プロパティ」を開き、「Output file name」を任意の名前に変更する。
     

    例)
     変更前:Release\Setup1.msi
     変更後:Release\SetupPetitCalendar.msi

  15. インストーラを作成
    設定が終わったので、いよいよインストーラの作成。
    「ソリューション エクスプローラー」で今回作成したセットアッププロジェクト(ここでは”Setup1″)を右クリックし、ポップアップメニュー[ビルド]を選択。

    これで、Setup1\Releaseフォルダ配下にも、”setup.exe”と”SetupPetitCalendar.msi”ファイルが作成される。

インストール実行

  1. インストーラの実行(テスト)
    作成されたインストーラを試す場合、”setup.exe”を実行してみる。(msiが使えるPCであればmsi側でもOK)
    それか、先ほどのVisual Studio上で”Setup1″のプロジェクトを右クリックし、ポップアップメニュー[インストール]を実行してみてもOK。


    セットアップウィザードへようこそ


    インストールフォルダの選択


    インストールの確認


    ~をインストールしています


    インストールが完了しました

    これでインストール完了。
    プログラムメニューにも登録されている。

 

アンインストールする場合は、以下のいずれかで行う。
・インストール時同様、Visual Studio上のポップアップメニューから「アンインストール」を選択
・再度、エクスプローラーから”setup.exe”を実行
・一般のアプリ同様、[アプリと機能]からアンインストールから実行
 
 

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA


*