C# C如何通过管理员提升的命令运行进程(带参数)

C# C如何通过管理员提升的命令运行进程(带参数),c#,.net,process,privileges,C#,.net,Process,Privileges,我使用上面的代码通过C中的cmd运行一个进程 然而,问题是: processNeedToRun在运行时需要参数。 即使我设置了Verb=runas,Windows7仍然会提示一个提升对话框。 是否可以满足所有要求?如果启动processNeedToRun的进程未提升,则无法避免提升对话框。这样做将是一个安全漏洞。因此,您将不得不接受高程提示 不过,向processNeedToRun添加参数并没有问题。您可以将它们添加到传递给ProcessStartInfo的参数中: 如果启动processNee

我使用上面的代码通过C中的cmd运行一个进程

然而,问题是:

processNeedToRun在运行时需要参数。 即使我设置了Verb=runas,Windows7仍然会提示一个提升对话框。
是否可以满足所有要求?

如果启动processNeedToRun的进程未提升,则无法避免提升对话框。这样做将是一个安全漏洞。因此,您将不得不接受高程提示

不过,向processNeedToRun添加参数并没有问题。您可以将它们添加到传递给ProcessStartInfo的参数中:


如果启动processNeedToRun的进程未提升,则无法避免提升对话框。这样做将是一个安全漏洞。因此,您将不得不接受高程提示

不过,向processNeedToRun添加参数并没有问题。您可以将它们添加到传递给ProcessStartInfo的参数中:

ProcessStartInfo procStartInfo = new ProcessStartInfo("cmd", "/c " +"processNeedToRun")
{
    RedirectStandardError = true,
    RedirectStandardOutput = true,
    UseShellExecute = false,
    CreateNoWindow = true,
    Verb ="runas"
};
var procStartInfo = new ProcessStartInfo("cmd", "/c processNeedToRun arg1 arg2");