1

自動的に更新されるWindowsアプリを作成しています。さまざまな理由でClickOnceを使用していません。更新したファイルをWindows7のC:\ Program FilesにFile.Move()しようとすると、次のエラーが発生します。

パス'C:\ Program Files \ <company> \ <app>\<app.exe>'へのアクセスが拒否されました。

UACプロンプトが表示されません。更新しようとしているexeは現在実行されていません。

4

2 に答える 2

1

UACプロンプトが表示されなくても、問題はUACです。

自動的に昇格するには、プログラムのマニフェストを変更する必要があります。(これにより、UACプロンプトが表示されます)

于 2010-03-16T01:02:22.460 に答える
1

プログラムのインストール フォルダに変更を加えることはできません。必要な管理者権限がありません。アップデーターにマニフェストを追加することは実用的ではありません。ユーザーは、昇格のプロンプトを見てすぐに飽きてしまいます。

唯一の実用的な方法は、アップデーターをスケジュールされたタスクとして実行することです。これらのタスクは、スケジュールに管理者権限が必要なため、管理者権限で実行することが許可されています。これは、インストーラーで行う必要があります。

于 2010-03-16T01:44:12.187 に答える