我试图以系统帐户身份运行我的c#exe文件。我怎样才能做到这一点。我试过<requestedExecutionlevel level="requireAdministrator"> and <requestedExecutionlevel level="requireSystem">
管理员正在工作,但第二个不工作。以系统帐户身份运行exe文件
请帮我一下,我该怎么做。
我试图以系统帐户身份运行我的c#exe文件。我怎样才能做到这一点。我试过<requestedExecutionlevel level="requireAdministrator"> and <requestedExecutionlevel level="requireSystem">
管理员正在工作,但第二个不工作。以系统帐户身份运行exe文件
请帮我一下,我该怎么做。
嗨我找到了解决方案。如果你真的希望你的exe作为系统帐户运行,你需要创建一个windows服务并以本地系统帐户启动它。你将能够看到一个exe和系统帐户用户一起在任务管理器上运行。 这就是我需要知道的。
这就是其他回答和评论说 –
如果你在谈论我必须知道这个答案的提示,请参阅@scott的最新评论 –
据我所知,您不能强制您的应用程序以SYSTEM身份运行。您的应用程序必须是服务,并且服务设置为以系统身份运行,或者您必须使用PsExec之类的工具以系统的身份启动可执行文件。
psexec.exe -i -s YourProgram.exe
当使用requestedExecutionlevel
只有3个有效选项
requireAdministrator
- 提示UAC总是(即使用户不是管理员)。asInvoker
- 永不提示输入UAC。highestAvailable
- 如果用户是Administrators组的成员,则提示输入UAC,但如果用户不是该组的成员,则不提示并以普通用户身份运行。这不是直接可能。如果你是一个管理员(比如从一个已经运行的服务中获取安全令牌或者其他东西),但是我还是不推荐使用这些方法。
SYSTEM帐户的要点恰恰在于:它只能由系统直接运行。
如果你想要一个容易哈克路不使用第三方工具(如psexec
),你可以建立一个ONEEVENT
计划任务(schtasks
,这是操作系统的一部分),它的确可以在系统运行帐户。这仍然需要两个进程(虽然它可能与用于任务的不同命令行参数以及设置它的相同exe
),但它可以工作。
此主题也可以帮助您:http://stackoverflow.com/questions/2818179/how-to-force-my-net-app-to-run-as-administrator-on-windows-7 – mwilson
@mwilson是的,我试过了,它的工作。但我希望它使用SYSTEM运行。就像如果我去任务栏的细节,它应该显示系统作为exe的用户名。 –
出于好奇,你想要做什么,你的可执行文件需要SYSTEM权限而不仅仅是管理员权限? –