如何从C#forms应用程序运行.bat文件?
我正在尝试运行一个批处理文件,该批处理文件反过来运行一个.exe(在您询问之前,这是必要的)。我已经尝试了答案,但代码对我不起作用。我一直在使用System.Diagnostics.Process.Start(“bat/directory/batname.bat”)如何从C#forms应用程序运行.bat文件?,c#,C#,我正在尝试运行一个批处理文件,该批处理文件反过来运行一个.exe(在您询问之前,这是必要的)。我已经尝试了答案,但代码对我不起作用。我一直在使用System.Diagnostics.Process.Start(“bat/directory/batname.bat”) 但它不起作用;它似乎打开了文件,但在运行.exe之前退出了该文件 请帮忙 编辑 我尝试过的代码如下: 1-“System.Diagnostics.Process.Start”(“G:/Software/Games/Files/Min
但它不起作用;它似乎打开了文件,但在运行.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
(
<代码>(超时要考虑的事情。(首先保持简单))< /P>
确保*.bat
文件路径准确无误。确保您可以通过以下方式进行检查:
if(File.Exists(yourBatchFilePath))
您可以测试一个简单的批处理文件,以查看代码是否正在运行。
echo“What ever!”>>which.txt
将文件另存为c:\myTest.bat
如果您的代码正确,则c:
中应该存在一个whatever.txt
文件,其中包含“whatever!”
文本
您甚至可以将批处理文件或exe添加到cgi脚本中,也可以从iis管理中添加。我不明白。很抱歉,我做C#才6个月:)请更具体一些。展示一个完整的、最少的代码示例,它对您不起作用,并准确地告诉我们它如何对您“不起作用”。你怎么知道它“打开了文件”?是否有任何迹象表明批处理本身已被找到,更不用说执行了?请检查bat文件path
。您能否更详细地说明在尝试运行批处理时发生的情况?你有没有出错,有没有打开一个窗口(它说了什么)?你能把你的进程包装起来。在一个try块中开始一行,捕获任何异常,并让我们知道它们是什么吗?我知道批处理可以工作,因为我以前运行过它。而且File.Exists()
显然不是一个有效的命令。“文件在当前上下文中不存在。”File.Exists()
怎么可能不是有效的命令?啊,好的。您必须使用System.IO添加如果尚未这样做,请在标题中添加code>。很抱歉,标题是什么?只需使用System.IO:
添加,即可使用文件.Exists()
。它应该与使用
语句的其他一起出现。这应该不难找到。