前回、写真振り分けソフト Step ④ 【配布について】にてSetup Projectを使用してみましたが、過去のVisual Studio(Visual Studio 2019以前)に備わっていたものと同様に細かいアクションが行えません。
サードパーティーのインストーラを選定した場合、Install Shieldがおすすめですが高価なため個人で購入するのは敷居が高いです。
個人の工作アプリ配布に適したものはないものかと探していたところ、「Advanced INSTALLER」なるものを見つけましたので使ってみました。
Advanced INSTALLERとは
日本語での説明は少ないです。以下の特徴を持ったインストーラです。
色々と細かい変更が行えるようです。さらに無料版があるということで期待できそうですが、どこまでできるのか気になるところです。
ライセンスは4種類でした。
ライセンス | 説明 |
---|---|
Architect | すべての機能が使える最上位ライセンス。 |
Enterprise | 企業向けレベルのライセンス。企業で配布する場合はこの最低でもこのライセンスと思われます |
Professional | プロフェッショナル。個人向けの上位版でFreeと比べて様々な機能が使えます |
Free | 無料版、できることは最小限 |
上に行くほど高額ですが、Enterpriseで年間$3,600程度でした。(2024年10月現在)
Install Shieldが3年サブスクで¥1,500,000程度のため、価格的には似たような感じです。
機能比較については製品ホームページに詳しく説明がありましたので、参考にしてください。
インストール
早速インストールして使ってみます。
Visual Studio 2022を開き、メニューの拡張機能から[拡張機能の管理]を選択します。
*プロジェクトは任意で構いません。空のプロジェクトでも可。
検索枠に「Advanced Installer」と入力すると最上位に出てきます。
[Advanced Installer for Visual Studio 2022]を選択し、「インストール」をクリックします。
Visual Studio 2022の終了を促されます。終了すると自動的インストールを開始します。
VSIX Installer画面で「Modify」をクリックします。
インストール完了後、「Close」をクリックします。
拡張機能のインストール後はAdvanced INSTALLER本体のインストールを行います。
下記画面にて「Download & Install」をクリックします。
自動でインストール開始します。
インストールには結構な時間がかかりました。(筆者PCで30分程)
プロジェクトの作成
インストールができましたら、デスクトップショートカットから「Advanced Installer」を起動します。
Advanced Installer画面が起動します。次の確認を行います。
- Installer Projectを選択します。
- Installer Projectの下の選択箇所を「Simple」にします。
FreeライセンスではSimple以外は作成できないと記載されていました。
他を選択するとトライアル期間後に使えなくなるものと考えられます。 - Project LanguageをJapanese(Japan)に選択します。
- Use wizard to create projectのチェックを外します。
「Create New Project」をクリックします。プロジェクトが作成されます。
プロジェクトを作成後に、設定の画面が表示します。
英語表記ですが、感覚で設定が行えるようになっています。
ここでは写真振り分けソフト Step ④ 【配布について】で行った写真振り分けソフト(Setup Project)の複製を作成してみます。
画面左ツリーより[Product Details]を選択します。
画面右の[Product Details]グループ項目を入力します。
- Name:製品名です。「写真振り分けソフト」と入力します。
- Version:ソフトバージョンです。そのまま(1.0.0)とします。
- publisher:リリース元の名前です。「s-sk」と入力します。
[Add or Remove Program(Control Panel)]グループより、「・・・」となっている箇所をクリックします。
ファイル参照ダイアログが表示するため、アイコンファイルを選択します。
こちらが「アプリケーションの追加と削除」で表示するアイコンになります。
アイコンが選択されました。
[End User License Agreement]グループより、「・・・」となっている箇所をクリックします。
メニューより[Select RTF File]を選択します。
使用許諾契約書のワードパッドファイルを選択します。
ファイルが追加されます。
画面左ツリーより[Files and Folders]を選択します。
画面右の[Target Computer]-[Application Folder]を右クリックし、[Add Files]を選択します。
配布するファイルをすべて選択します。
複数のプロジェクトで同じ配布ファイルがある場合、上書きするか警告が出てきます。
「No to All」で問題ありません。
配布するファイルが選択されました。
画面左ツリーより[Shortcuts]を選択します。
画面右の[Shortcuts List]を右クリックし、[Installed File]を選択します。
setting_app.exeを選択します。
作成したショートカットの詳細を変更できます。
- Name:ショートカットの名前を入力します。「登録用アプリケーション」と入力します。
- Icon:ショートカットアイコンを選択します。
画面左ツリーより[Install Parameters]を選択します。
画面右の[Installation Folders]グループを変更します。
- Application folder:配布先のデフォルトフォルダ。[ProgramFilesFolder]\photo_sortingとします。
- Application shortcut folder:ショートカットフォルダ。[ProgramMenuFolder]\写真振り分けソフトとします。
画面左ツリーより[Launch]を選択します。
画面右のSystemタブより[Supported Operating Systems]グループをWindows10(32-bit)、Windows10(64-bit)、Windows11(64-bit)の3項目にチェックを付けます。
Softwareタブに移動し、「.NET Framework」にチェック付けます。
「.NET Framework 4.7.2」を選択します。
ビルドする前にプロジェクトを保存しておきます。
メニュー(ファイル)より[Save]-[Save As]を選択します。
任意の保存先にプロジェクトを保存します。
ツールのBuildを展開し、「Rebuild」をクリックします。
これでプロジェクトの作成フォルダに[(プロジェクト名)-SetupFiles]-[(プロジェクト名).msi]の形でインストーラが作成できます。
インストーラの実行
実際にインストールできるかどうか確かめてみます。
作成した(プロジェクト名).msiを実行します。インストーラが起動してきます。
「次へ」をクリックします。「使用許諾契約」が正しく表示されました。
同意して「次へ」をクリックします。
インストールフォルダも正しく表示します。
「次へ」をクリックします。インストール確認(準備完了)画面を表示します。
問題なくインストールできました。
正しくインストールされているか確認してみます。
スタートメニューにショートカットが作成されています。
配布ファイルの正しく配置されています。
ただし、Freeライセンスではサービス登録ができません。
「アプリケーションの追加と削除」を確認すると、写真振り分けソフトがリストアップされています。
アンイストールも問題なく行えました。
Freeライセンスのできないこと
最低限の動作はできましたので、Freeライセンスで実用できるかどうか調べてみます。
やはり無料版ではできないことは多いのですが、その中でも特に残念な内容を取り上げます。
① msi形式のインストーラ以外作成できない
[Builds]を選択して「Single EXE setup」を選択します。
Professionalライセンスにアップグレードするように求められます。
② Wizard画面の変更が一切行えない
[Dialogs]を選択して対象を右クリックし、[Edit Dialog]を選択します。
Enterpriseライセンスにアップグレードするように求められます。
これは致命傷です。
一切変えられないとなるとAdvanced INSTALLERのロゴなども差し替えることができません。
Advanced INSTALLERの文字表記もあります。
③ サービスの登録が行えない
サービスの登録も行えません。
インストール前後でバッチジョブでも行えれば登録実装できるのですが、こちらもFreeライセンスでは使用できません。
まとめ
製品としては使いやすいですが、残念ならがFree版はお試し程度という感想です。
もちろん有償ライセンスを購入すれば高機能が魅力です。
「Wizard画面が一切変えられない」について一部でもできるようになれば再考してみたいと思います。