【发布时间】:2020-02-11 08:27:41
【问题描述】:
我正在尝试在控制台应用程序中运行 exe。系统提示我输入 UAC 输入管理员凭据。问题是我只有读取和执行权限。我无法提供完全权限,因为它在服务器上。
using (Process process = new Process())
{
process.StartInfo.Verb = "runas";
process.StartInfo.FileName = ImgToDjvuPath;
process.StartInfo.Arguments = string.Format("\"{0}\" -profile \"{1}\" \"{2}\" \"{3}\"", ImgToDjvuPath, "fine200up", localNewDjvuFile, localNewDjvuFile);
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.StartInfo.CreateNoWindow = true;
process.Start();
process.WaitForExit(10 * 60 * 1000);
}
我希望能够运行此代码并使其正常工作而不会被提示输入 uac。
这就是为什么我不喜欢堆栈溢出,你问一个具体的问题却很少得到具体的答案。然后被标记为提出有效问题。我发帖后大约 2 分钟就知道了。感谢那些真正尝试提供帮助的建设性和帮助的人。
【问题讨论】:
-
不是某处的windows设置吗?喜欢here
-
如果您不想以管理员身份执行实用程序,为什么要使用
runas动词? -
如果您没有管理员权限,则无法运行类似管理员的操作。
-
如果可执行文件需要提升才能运行,您必须从已经具有提升的进程中执行可执行文件,或者您需要在出现提示时手动提升进程。
-
它没有,读取和执行应该足够了
标签: c# console-application uac