dポイントプレゼントキャンペーン実施中!

環境:Windows7+VS2012(VC++)

WindowsXPの時代に、INIファイルをコピーするプログラムを作成したのですが、それをWindows7へ移植したのですが、インストールフォルダを ProgramFiles にすると、UACの権限昇格の確認ダイアログが表示されてしまいます。

これを表示させないようにすることは可能なのでしょうか?

A 回答 (3件)

定型処理をUACダイアログを表示させずに行うことは可能です。



1.タスクスケジューラーに、その定型作業を登録します。
2.このとき、「最上位の特権で実行する」をチェックします。これでUACを回避できます。
3.実行したいときは、「schtasks /run /tn タスク名」を実行します。

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

こんな方法があるなんて知りませんでした。

ありがとうございました。

お礼日時:2014/03/20 08:42

マルウェアやウィルス対策のために付いた機能なので回避できたら意味が無いです。


承認した上で動作させるしか無いでしょう。
そもそも、ちゃんとUACに対応したソフトはINIファイルをProgram Filesの下には置いていないですから、そのソフト自体が本来不要なソフトです。
    • good
    • 0
この回答へのお礼

確かに、できたら意味ないですね・・・

ありがとうございました。

お礼日時:2014/03/20 08:42

インストールユーザ自身で回避するものであって配布元の作業で回避することはできません


(そんなことできたら意味なし)

やるのであれば  ProgramFiles へインストールするのではなく
ユーザフォルダにインストールさせる手法がとられる場合が多いかと思われます
それ以外に権限の問題で動作に支障が出ないことが前提ですけど
    • good
    • 0
この回答へのお礼

ありがとうございます。

ほかのフォルダへのインストールも検討しています。

お礼日時:2014/03/20 08:41

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!