我正在尝试使用以下代码运行cmd命令:
ProcessStartInfo cmd = new ProcessStartInfo("cmd.exe");
cmd.RedirectStandardInput = true;
cmd.RedirectStandardOutput = true;
cmd.RedirectStandardError = true;
cmd.UseShellExecute = false;
cmd.CreateNoWindow = true;
cmd.WindowStyle = ProcessWindowStyle.Hidden;
Process exec = Process.Start(cmd);
exec.StandardInput.WriteLine("sc create \"BaliService\" binPath= \"{0}\\BaliService.exe\"", Directory.GetCurrentDirectory());
Run Code Online (Sandbox Code Playgroud)
此命令需要管理员privelages,如果我以管理员身份运行cmd并键入命令它完美运行但不是当我以管理员身份运行此应用程序时.我已经添加了
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
每次打开exe时提示uac的清单文件.
我已经看到了关于这个的多个问题,他们似乎都建议在提升的应用程序下运行的任何进程都具有相同的权限,但这对我不起作用.
我试过cmd.Verb = "runas";但没有骰子.
真的很新,我已经阅读了这里的答案,他们已经帮助到目前为止,但我仍然有点卡住.
我设法创建了一个程序,显示用户从DOB输入中签名.
现在我想将结果发送到文本文件.我可以创建该文件,但我不知道如何将程序的控制台输出/结果发送到该文件.