我正在尝试用 C # 执行一个批处理文件,但是运气不太好。
我在互联网上发现了很多这样做的例子,但是对我来说并不奏效。
public void ExecuteCommand(string command)
{
int ExitCode;
ProcessStartInfo ProcessInfo;
Process Process;
ProcessInfo = new ProcessStartInfo("cmd.exe", "/c " + command);
ProcessInfo.CreateNoWindow = true;
ProcessInfo.UseShellExecute = false;
Process = Process.Start(ProcessInfo);
Process.WaitForExit();
ExitCode = Process.ExitCode;
Process.Close();
MessageBox.Show("ExitCode: " + ExitCode.ToString(), "ExecuteCommand");
}
命令字符串包含批处理文件的名称(存储在 system32
中)和它应该操作的一些文件。(例子: txtmanipulator file1.txt file2.txt file3.txt
)。当我手动执行批处理文件时,它可以正常工作。
在执行代码时,它会给我一个 **ExitCode: 1** (Catch all for general errors)
我做错了什么?