如何使用 C# 执行 .cmd 文件?
How to execute .cmd file using C#?
我有一个命令 (.cmd) 文件,其中包含几个步骤。
我想使用 C# 代码执行此文件
这是我写的代码-
Process process = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.WindowStyle = ProcessWindowStyle.Normal;
startInfo.WorkingDirectory = @"C:\Users\zrana\Desktop\"
startInfo.FileName = @"C:\Users\zrana\Desktop\test.cmd"
process.StartInfo = startInfo;
process.Start();
当我运行这个程序时,我得到一个异常System.ComponentModel。Win32Exception:'Access is denied'。
这是正确的做法吗?
您遇到错误是因为您的可执行文件没有 运行 管理员 模式。
尝试构建您的项目,然后从构建输出文件夹中右键单击 exe
并选择 "Run as Administrator" 如果这没有帮助请告诉我。
更新
请从 Windows cmd.exe
中调用 运行 来尝试 cmd
文件,如下所示:
var testCmd = @"/C C:\Users\zrana\Desktop\test.cmd";
System.Diagnostics.Process.Start("cmd.exe", testCmd);
我有一个命令 (.cmd) 文件,其中包含几个步骤。 我想使用 C# 代码执行此文件
这是我写的代码-
Process process = new Process();
ProcessStartInfo startInfo = new ProcessStartInfo();
startInfo.WindowStyle = ProcessWindowStyle.Normal;
startInfo.WorkingDirectory = @"C:\Users\zrana\Desktop\"
startInfo.FileName = @"C:\Users\zrana\Desktop\test.cmd"
process.StartInfo = startInfo;
process.Start();
当我运行这个程序时,我得到一个异常System.ComponentModel。Win32Exception:'Access is denied'。 这是正确的做法吗?
您遇到错误是因为您的可执行文件没有 运行 管理员 模式。
尝试构建您的项目,然后从构建输出文件夹中右键单击 exe
并选择 "Run as Administrator" 如果这没有帮助请告诉我。
更新
请从 Windows cmd.exe
中调用 运行 来尝试 cmd
文件,如下所示:
var testCmd = @"/C C:\Users\zrana\Desktop\test.cmd";
System.Diagnostics.Process.Start("cmd.exe", testCmd);