如何从C#窗体应用程序运行.bat文件

本文关键字:运行 bat 文件 应用程序 窗体 | 更新日期: 2023-09-27 18:28:36

我正在尝试运行一个批处理文件,该文件反过来又运行一个.exe(在您询问之前,这是必要的)。我已经尝试过这个问题的答案,但代码对我不起作用。我一直在使用System.Diagnostics.Process.Start("bat/directory/batname.bat")
但没有奏效;它似乎打开了文件,但在运行.exe之前退出了该文件
请帮忙!

编辑
我尝试过的代码如下:
1-"System.Diagnostics.Process.Start("G:/Software/Games/Files/Minecraft/Minecraft.bat/");"
2-
proc.StartInfo.FileName = target;
proc.StartInfo.RedirectStandardError = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.UseShellExecute = false;

'proc.Start();'

proc.WaitForExit
((timeout <= 0)
? int.MaxValue : timeout * NO_MILLISECONDS_IN_A_SECOND *
NO_SECONDS_IN_A_MINUTE
);

errorMessage = proc.StandardError.ReadToEnd();
proc.WaitForExit();

outputMessage = proc.StandardOutput.ReadToEnd();
proc.WaitForExit();

我知道它正在打开,因为cmd出现了,并且我在其中看到了适当的代码。

如何从C#窗体应用程序运行.bat文件

需要考虑的事项。(一开始保持简单:)

  1. 确保*.bat文件路径准确无误。只是为了确保你可以通过进行检查

    if(File.Exists(yourBatchFilePath))

  2. 您可以测试一个简单的批处理文件,看看您的代码是否正在运行。echo "What ever!" >> whatever.txt将文件保存为c:'myTest.bat如果您的代码是正确的,则c:中应该存在一个包含"What ever!"文本的whatever.txt文件。