.NET アプリケーションに自動更新を実装する方法について多くの質問が寄せられていることは承知しており、おそらくそれらのほとんどを読んだことがあります。残念ながら、私が知る限り、私の状況に完全に適合するものは見当たりませんでした。
ユーザー アカウントが制限された環境で実行される自己更新 .NET アプリケーションを構築しようとしています。ここには管理者権限はありません。アプリケーションは、Vista と XP で実行する必要があり、リリース時にはおそらく Win 7 で実行する必要があります。X-copy 展開で問題ありません。クリックワンスを使用したくない
これまでのところ、アプリケーションがマニフェストをチェックし、更新されたバイナリをダウンロードするシステムを試してみました。これは開発ではうまく機能しましたが、アプリがインストールされたときはそれほどうまくいきませんでした。Vista は、ファイルを Program Files にコピーすることを拒否します。その後、更新された .msi をダウンロードしてみました。これは、MSI に UAC プロンプトがあることを除いて機能します。ユーザーがローカル管理者権限を持つアカウントを持っていない場合は実行できません。
一部の投稿では、AppData でプログラムを実行し、x-copy メソッドを使用するとうまくいく可能性があると示唆されていますが、試してみてうまくいったと言う人は見たことがありません。管理者権限のないアカウントでも機能しますか? さらにコードを書き始める前に、誰かがこの方法を保証できますか?