せっかくなので PyInstallerでPythonプロジェクトをexe化 で作成したexeファイルのインストーラを作成してみます。
Installer Projectsのインストール手順
Visual Studioのメニューの 拡張機能 – 拡張機能の管理 をクリックし、出てきたウインドウでオンラインを選択、右側にある検索に”Installer Projects”と入力します。
検索結果から”Visual Studio Installer Projects 2022″をダウンロードしてインストールを行います。
完了後、Visual Studioを再起動する必要があります。
インストーラ設定
Visual Studioを起動して “新しいプロジェクトの作成” からテンプレート検索で “Setup Project” を選択します。
初期表示だとファイルシステムが開きます。
ここら辺を設定していきインストーラを作成します。
今回はC#等で作成したものではなくPython –> exe化したファイルを使用していきます。
- Application Folderを右クリック –> Add –> ファイルと選択し、exeファイルを指定
- config, dataフォルダも必要なのでApplication Folderを右クリック –> Add –> Folderでそれぞれのフォルダを作成
- 作成したフォルダにjsonファイルを格納する。追加手順はexeファイルの時と同様
基本的には上記を設定すればインストーラが作成できますが、もう少しだけ設定を追加していきます。
デスクトップにショートカットを作成
Application Folderに追加したexeファイルを右クリック –> Create Shortcut to XXX.exe
作成されたショートカットをUser’s Desktopに移動させます。
次にUser’s Desktopを右クリック –> プロパティウインドウを選択し、AlwaysCreateをTrueに変更します。
これがFalseのままだと以下のようなエラーが出ます。
ERROR: The target of shortcut 'Shortcut to User's Desktop' is invalid. The 'AlwaysCreate' property of folder 'User's Desktop' must be set to 'True'
スタートメニューに追加
Application Folderに追加したexeファイルを右クリック –> Create Shortcut to XXX.exe
作成されたショートカットをUser’s Programs Menuに移動させます。
こちらもデスクトップのショートカットと同様にプロパティのAlwaysCreateをTrueに変更します。
変更されていない場合は以下のようなエラーが出ます。
ERROR: The target of shortcut 'TestPJ' is invalid. The 'AlwaysCreate' property of folder 'User's Programs Menu' must be set to 'True'
インストール先のフォルダ名
Application Folderのプロパティを見ると DefaultLocationは以下のようになっています。
[ProgramFilesFolder][Manufacturer]\[ProductName]
これだとデフォルトで “C:\Program Files (x86)\Default Company Name\”にインストールされます。
Default Company Nameは良くないので変更します。
ソリューションエクスプローラーでTestSetupをクリックしてプロパティを見るとManufacturerがあるのでここで変更できます。
“C:\Program Files (x86)[ここが変更した値になる]\”
ビルド
あとは普通にソリューションをビルドするとDebugやReleaseフォルダに出来上がります。
ソリューションエクスプローラーで右クリック –> インストールでもインストール可能です。
以上です。
コメント