セットアップ プログラム (Inno Setup などで作成) がプロセスを起動する場合、そのプロセスは常に管理者権限で実行されます。-セットアップ プログラムが管理者として実行されたため。
子プロセスを現在のユーザーの権限として実行したい。
良い方法はありますか?
セットアップ プログラム (Inno Setup などで作成) がプロセスを起動する場合、そのプロセスは常に管理者権限で実行されます。-セットアップ プログラムが管理者として実行されたため。
子プロセスを現在のユーザーの権限として実行したい。
良い方法はありますか?
この質問は、MSFT の内部で 3 ~ 4 か月ごとに発生します。
セキュリティ担当者の答えは次のとおりです。昇格されたプロセス トークンが作成されると、元に戻すことができない変更がトークンに加えられます。
最善の策は、昇格したセットアップ プログラムを実行するランチャー アプリケーションを用意し、昇格したセットアップ プログラムが完了すると、向きを変えて子プロセスを実行することです。
ベスト プラクティス (または優れたプラクティス) とは見なされませんが、高/管理 IL プロセスから中 IL プロセスを起動することは可能です。
このコードは、UAC が有効になっているかどうかに関係なく、Vista 32 および 64 ビットで動作することを確認できます。