我已经搜索了很多方法来运行c#中的进程批处理文件,所有这些都没有帮助我。
批处理文件的操作是:使用psexec,它连接到远程控制并停止一些服务。之后它会删除大量文件,然后复制新文件,再次连接,使用psexec连接到计算机并启动服务。
当我自己执行批处理时,所有这些操作都需要一段时间。但是当我使用进程执行批处理文件时,它会在5秒内完成并显示它应该的所有输出。 我发现它没有做任何事情。只需显示成功完成后应该执行的输出。
我正在使用此代码执行批处理
batch = new Process();
batch.StartInfo.FileName = batchPath;
batch.StartInfo.UseShellExecute = false;
batch.StartInfo.RedirectStandardOutput = true;
batch.StartInfo.CreateNoWindow = true;
batch.OutputDataReceived += new DataReceivedEventHandler(IncomingOutput);
batch.Start();
batch.BeginOutputReadLine();
batch.WaitForExit(TimeWait * 1000);
batch.CancelOutputRead();
我做错了什么?