2016-07-05 45 views
-1

私は1つのc#windowsフォームアプリケーションを開発しました。このアプリケーションには管理者権限が必要です。今、私は管理者権限のないプロセスを開始するので、このプロセスで私はドキュメント、一時、appdataなどのようないくつかの特別なフォルダパスを取得するので、私は管理者権限なしで1つのプロセスを開始したいと思います。管理者権限なしでプロセスを開始する方法

管理者権限なしでプロセスを起動するにはどうしたらいいですか?

+1

管理者権限と管理者権限の間に大きな違いがあります。あなたが管理者権限で実行していれば、それはあなたのユーザーです。管理者権限で実行した場合は、まだあなたです。 – BugFinder

+0

'ProcessStartInfo' 。それを実行するユーザーのユーザー名とパスワードを渡すことができます。 https://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo(v=vs.110).aspx –

+0

[私の昇格したプロセスから非平坦なプロセスを起動する方法とその逆](https: //blogs.msdn.microsoft.com/oldnewthing/20131118-00/?p=2643)。もちろん、それはWin32側から扱っているので、管理対象の同等のものを書くためにいくつかのフープにジャンプしなければならないかもしれません。 –

答えて

0

プロパティフォルダのapp.manifestファイルをご覧ください。次の行を削除します。

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" /> 

このの代わりに次の行を追加します。

<requestedExecutionLevel level="asInvoker" uiAccess="false" /> 

は役に立ちこの答えである可能性があります。

http://weblogs.asp.net/kennykerr/Windows-Vista-for-Developers-1320-Part-4-1320-User-Account-Control

また、この回避策を確認してください。

ます。Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\*\shell\forcerunasinvoker] 
@="Run without admin rights (UAC)" 

[HKEY_CLASSES_ROOT\*\shell\forcerunasinvoker\command] 
@="cmd /min /C \"set __COMPAT_LAYER=RUNASINVOKER && start \"\" \"%1\"\"" 

シンプル - アプリ上でコンテキストメニューに追加します。管理者権限なしで実行するファイル選択。場合によっては、わずか0.1%のプログラムがUACのプロンプトについて2回尋ねることがあります。

name_of_file.regに保存し、Windowsレジストリに追加してください。

関連する問題