スポンサーリンク

VisualStudio2022 Installer Projectとは?

小規模個人向けで使いやすく古臭い

以下からダウンロードできます。
VS2022から直接拡張機能として追加もできるみたいです。
https://marketplace.visualstudio.com/items?itemName=VisualStudioClient.MicrosoftVisualStudio2022InstallerProjects

使いやすさは抜群と思います。
一時期、WiXやMSIXの習得も試みましたが、学習コストが高く感じて個人で小規模だとこれで十分と思いました。

以下の設定をする前に

やったのに反映されないということが非常に多かったので、以下の実施をたらふくやったら最終的にうまくいきました。

  • プロジェクトのリビルド
  • インストーラープロジェクトのリビルド
  • VSの再起動

標準設定での落とし穴

使い方は割愛します、先日にハマった罠を綴ります。

私は、バージョンアップとして上書きインストールをしたいと考えいました。
インストーラープロジェクトのプロパティ設定でバージョンを更新するとVSが「ProductCodeを変更しますか?」と促してくるので必ず変更(VSが適当に変更してくれる)していました。
ProductCodeについては下記を参照してみてください。
https://h-toss.com/visualstudio2022-installer-project%e3%81%a8%e3%81%af%ef%bc%9f/

これだけでよいと思っていたのですが、これだと上書きはなく追加インストールとなりアンインストール時にたんまり出てくる全バージョンの自分のアプリに衝撃を受けました。
アプリ自体は更新されるのでアンインストール時に気づきます。

気持ち悪いので上書きインストールにするためには
RemovePreviousVersions = True (初期値はFalse)
に設定する必要があります。
DetectNewerInstalledVersion = True
も必須ですがこちらは初期値がTrueです。
「UpgradeCode」は変更してはいけませんが、「ProductCode」と違いバージョンを変更しても更新を促されません。

以上で上書きインストール設定は完了です。
それでもうまくできない場合は「実行ファイルのアイコン設定をする」というのもあるようですがそれは後述します。

アプリのアイコン設定

個人向けで小規模なのでそんなの1か所で設定するんでしょ?
と思いがちですが数か所で設定する必要があります。

まず、icoファイルを用意します。
ちなみに私はWEB開発もしているので「favicon.ico」を使いましたがVSは厳格のようで適当につくったicoファイルでは不合格でした。
私は以下で再生成して合格できました。
https://www.icoconverter.com/

  • まず実行ファイルのアイコン
    • メインプロジェクトのプロパティでアイコンを設定します。
      ローカルから直接参照可能。
  • インストーラープロジェクト
    • View → File System
      • まずローカルからの直接参照ができないので、「ファイルシステム」にローカルから保存します。
        私は「Application Folder」配下に保存しましたので、インストール先のフォルダ内にも展開されました・・・。
        ルートの方が良かったのかも。
      • ユーザーのデスクトップにショートカットを作った場合
        • アイコンの設定が必要なのでファイルシステムに保存したアイコンを参照しましょう。
      • ユーザーのプログラムメニューにショートカットを作った場合
        • アイコンの設定が必要なのでファイルシステムに保存したアイコンを参照しましょう。
    • インストーラープロジェクトのプロパティ
      • AddRemoveProgramsIcon
        アンインストール画面で表示されるアイコンです。
        こちらにもアイコンを設定しましょう。

なんと同じアイコンを4つほど設定することになりました。
ある意味すべて独自にできる小回りの効きの良さを感じますが、個人向け小規模アプリでは手間がかかるだけでした。
この手間が無駄にかかるところが古臭いといわれるようです。

インストールしたアプリが検索窓に出てこない

「ユーザーのプログラムメニューにショートカット」を作ってください。
私の経験上、ショートカットはすべて作るようにしました。