Windows インストーラー パッケージを使用して winforms アプリケーションを複数のクライアントに配布していますが、一部のクライアントはセキュリティ ポリシーを変更しているため、管理者権限のないユーザーに対して (インストーラーを介して) アプリケーションの更新を実行する方法を見つける必要があります。
アップデート プロセスに関する情報を以下に示します。 - インストーラは InstallAware を使用して作成されます。 - アップデート プロセス中に、古いバージョンがアンインストールされ、新しいバージョンがインストールされます。- インストーラーはレジストリに書き込み、一部の Windows サービスをインストールするため、管理者権限が必要です。- アプリケーションは、プログラム ファイル フォルダーにインストールされます。
現時点で私が実装している解決策は、新しい更新をチェックする単純なコンソール アプリケーションを実行する新しいスケジューラ タスクを作成することです。新しいバージョンが存在する場合は、インストーラをダウンロードしてサイレント モードで実行します (インストール全体が実行されます)。ユーザー インターフェイスやユーザーの介入なしで、ダイアログ コントロールの既定値が使用されます)。
このソリューションに関する考慮事項: - 更新プロセス中に発生する可能性のあるエラーを処理するのは困難です。- 更新プロセスが実行されていることをユーザーに警告することはできません (別のユーザーで実行されるスケジューラ タスクは、ログに記録されたユーザーと対話できないため)。
誰かが似たようなものを実装したことがありますか? これは私の目標を達成するための最良の方法ですか?