• ベストアンサー

UACの権限昇格の確認ダイアログについて

環境:Windows7+VS2012(VC++) WindowsXPの時代に、INIファイルをコピーするプログラムを作成したのですが、それをWindows7へ移植したのですが、インストールフォルダを ProgramFiles にすると、UACの権限昇格の確認ダイアログが表示されてしまいます。 これを表示させないようにすることは可能なのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.3

定型処理をUACダイアログを表示させずに行うことは可能です。 1.タスクスケジューラーに、その定型作業を登録します。 2.このとき、「最上位の特権で実行する」をチェックします。これでUACを回避できます。 3.実行したいときは、「schtasks /run /tn タスク名」を実行します。 タスク登録の詳細手順: 1.コントロールパネル→システムとセキュリティ→管理ツール→タスクスケジューラ 2.右側ペインで、「タスクの作成」をクリック 3.全般タブで、名前を適当に付け、「最上位の特権で実行する」をチェック 4.操作タブで、「新規」をクリック 5.操作を「プログラムの開始」のままで、プログラム欄と、必要があれば引数欄を入力。開始欄には必要があれば、プログラム起動時のカレントフォルダを指定。引数が複雑だったり、複数ステップだったりならバッチファイルにしておくのがいいでしょう。 6.あとはOK

w0a15455
質問者

お礼

こんな方法があるなんて知りませんでした。 ありがとうございました。

その他の回答 (2)

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.2

マルウェアやウィルス対策のために付いた機能なので回避できたら意味が無いです。 承認した上で動作させるしか無いでしょう。 そもそも、ちゃんとUACに対応したソフトはINIファイルをProgram Filesの下には置いていないですから、そのソフト自体が本来不要なソフトです。

w0a15455
質問者

お礼

確かに、できたら意味ないですね・・・ ありがとうございました。

  • koi1234
  • ベストアンサー率53% (1866/3459)
回答No.1

インストールユーザ自身で回避するものであって配布元の作業で回避することはできません (そんなことできたら意味なし) やるのであれば  ProgramFiles へインストールするのではなく ユーザフォルダにインストールさせる手法がとられる場合が多いかと思われます それ以外に権限の問題で動作に支障が出ないことが前提ですけど

w0a15455
質問者

お礼

ありがとうございます。 ほかのフォルダへのインストールも検討しています。

関連するQ&A