こんにちは。システムの運用・開発をしているM.Iです。
「ClickOnce」は、Webブラウザ経由でソフトウェアを配布する方式です。
VisualStudioから発行ウィザード(※1)に従って実行すると、配布モジュールが準備できます。
(※1 VisualStudio2022の場合は、「選択範囲の公開」⇒「公開/ターゲット」⇒「ClickOnce」)
この時、配置マニフェストおよびアプリケーションマニフェストが作成され、配布に必要な情報を管理します。
.Net Framework環境では、「Mage.exe(MageUI.exe)」ツールでも、同様に配置マニフェストおよびアプリケーションマニフェストを作成および編集ができます。
(Mage.exe と MageUI.exe は Windows ソフトウェア開発キット (SDK) に含まれています。)
配布モジュールの更新場所のみ変更する時など、一部の変更にはこのツールのコマンドがとても便利です。
.NETのコマンドプロンプトから以下のコマンドを実行します。
更新場所を変更します。
-ProviderUrl (更新場所)
-Version (バージョン)
新しく配置したアプリケーションマニフェストは、再度デジタル署名を付与する必要があります。
-CertFile (デジタル署名ファイルのパス)
-Password (デジタル署名のパスワード)
「Mage.exe」にはUIツール「MegeUI.exe」があるため、UIから変更することも可能です。
(.NETのコマンドプロンプトから「mage」を実行)
UIを起動し、既存のファイルを開いてみると、VisualStudioで見慣れた項目が表示されています。
.NET Core 3.1 および .NET 5 以降では、「Mage.exe」ではなく「dotnetmage.exe」を使用します。
UIは、2023年6月時点では準備されていないようです。 基本的な仕組みは、.Net FrameworkのClickOnceと変わりありません。
dotnetmage.exeを利用するためには、インストールが必要です。
コマンド引数についても、Mage.exeとほぼ変更ありません。
-ProviderUrl (インストール先)
-Version (バージョン)
Setup.exeも接続先を変更することが可能です。
管理者権限があるコマンドプロンプトで実行する必要があります。
こちらもデジタル署名が消えてしまうため、付与する必要があります。
サーバ移行時、ソースを管理していないサーバ管理者でも、このツールを利用することで対応が可能になります。
参考:方法: 配置の更新用に別の場所を指定する