• 締切済み

C# 管理者権限で起動したアプリケーションについて

管理者権限で起動した自作のC#アプリケーションから管理者権限をもたない形で 他のアプリケーションを実行することは可能でしょうか? 以下の内容の逆のことをやりたいです。 管理者としてほかのアプリケーションを実行するには? - @IT http://www.atmarkit.co.jp/fdotnet/dotnettips/954uacrunas/uacrunas.html

みんなの回答

回答No.2

MSのKBに以下のようなものがあります。 How to create a low-integrity process in Visual C++, in Visual C#, and in Visual Basic.NET https://support.microsoft.com/kb/2278183/ ここでは,Low Mandatory Level,つまりIEやChromeなどが動いているレベルへでプロセスを動作させるコードがダウンロードできます。 標準的な権限であるMedium Mandatory Levelで動作させるための手順はこれと同じで, MainForm.csの205行目,SECURITY_MANDATORY_LOW_RIDをSECURITY_MANDATORY_MEDIUM_RIDにすればMeidum Mandatory Levelのプロセスを生成できます。 ちなみに,管理者権限はSECURITY_MANDATORY_HIGH_RIDになります。 # 上位の権限になるための手順は,これとは別の手順になるはず。

  • Wr5
  • ベストアンサー率53% (2173/4061)
回答No.1

>管理者権限で起動した自作のC#アプリケーションから管理者権限をもたない形で >他のアプリケーションを実行することは可能でしょうか? 利用可能なユーザ名の列挙などが必要かも知れませんが……。 http://dobon.net/vb/dotnet/process/startwithusername.html こんなのでしょうかね?

wds32862
質問者

補足

現在ログイン中のアカウント自身であってもProcess.StartInfoへ ユーザーID、パスワードを追加することによって管理者権限なしで 実行することができました。 ただ、この場合は自作アプリケーションにWindowsパスワードを埋め 込む必要があるため新たな問題となりました。 後付けの条件となってしまいますが、パスワード等の重要な情報を 埋め込まない形で実現できる方法を引き続き待ちたいと思います。 しばらく待って回答がつかない場合はベストアンサーとさせて いただきます。ご回答ありがとうございました。

関連するQ&A

専門家に質問してみよう