C#启动命令行进程,重定向标准输出流、標準輸入流和标准错误流 .
来源:互联网 发布:淘宝卖家掌柜个性签名 编辑:程序博客网 时间:2024/05/22 06:34
转自:http://blog.csdn.net/rekrad/article/details/8518019
在命令行可使用的命令,可以使用C#代码启动,并可以重定向该命令执行所得的标准输出流、標準輸入流和标准錯誤流。
具體類似代碼如下:
- private List<string> GetP4CommandLineStandardOutput(string strArgs, IP4StandardOutputReceiver outputReciever)
- ProcessStartInfo procInfo = new ProcessStartInfo(processName);
- procInfo.Arguments = arguments;
- procInfo.CreateNoWindow = true;
- procInfo.RedirectStandardOutput = true;
- procInfo.RedirectStandardInput = true;
- procInfo.UseShellExecute = false;
- p4ProcInfo.RedirectStandardError = true;
- Process p4P = Process.Start(p4ProcInfo);
- string strLine;
- StreamWriter wrt = p4P.StandardInput;
- wrt.WriteLine(inputArguments);
- StreamReader reader = p4P.StandardOutput;
- StreamReader errorReader = p4P.StandardError;
- while (!reader.EndOfStream)
- {
- strLine = reader.ReadLine();
- outputReciever.P4StandardOutPutRedirect(strLine);
- listStrStandardOuput.Add(strLine);
- }
- while (!errorReader.EndOfStream)
- {
- strLine = errorReader.ReadLine();
- outputReciever.P4StandardErrorRedirect("Error: " + strLine);
- }
- p4P.WaitForExit();
- p4P.Close();
- return listStrStandardOuput;
private List<string> GetP4CommandLineStandardOutput(string strArgs, IP4StandardOutputReceiver outputReciever){ProcessStartInfo procInfo = new ProcessStartInfo(processName);procInfo.Arguments = arguments;procInfo.CreateNoWindow = true;procInfo.RedirectStandardOutput = true;procInfo.RedirectStandardInput = true;procInfo.UseShellExecute = false;p4ProcInfo.RedirectStandardError = true;Process p4P = Process.Start(p4ProcInfo);string strLine;StreamWriter wrt = p4P.StandardInput;wrt.WriteLine(inputArguments);StreamReader reader = p4P.StandardOutput;StreamReader errorReader = p4P.StandardError;while (!reader.EndOfStream){strLine = reader.ReadLine();outputReciever.P4StandardOutPutRedirect(strLine);listStrStandardOuput.Add(strLine);}while (!errorReader.EndOfStream){strLine = errorReader.ReadLine();outputReciever.P4StandardErrorRedirect("Error: " + strLine);}p4P.WaitForExit();p4P.Close();return listStrStandardOuput;}
這裡自己定義了一個接口,用於異步更新UI主介面,把信息及時反饋與主介面。注意的是這裡procInfo裏面的一些bool值需要設置成true。StreamWriter是添加上去的示例代碼,爲了演示標準輸入重定向的方式。
- C#启动命令行进程,重定向标准输出流、標準輸入流和标准错误流
- C#启动命令行进程,重定向标准输出流、標準輸入流和标准错误流 .
- Python重定向标准输入、标准输出和标准错误
- DOS命令行下如何把标准错误和标准输出重定向到同一个文件
- tcsh重定向标准输出和标准错误输出
- 重定向标准错误输出
- 重定向标准错误输出
- 重定向标准错误输出
- 标准错误和标准输出的重定向
- 重定向标准输入,输出以及错误流
- 重定向标准输入,输出以及错误流
- linux 重定向 标准输入 标准输出 标准错误输出
- Linux重定向:将标准输出stdout和标准错误stderr重定向到一个文件
- 标准输入标准输出标准错误重定向
- Java和C++的标准输出流重定向
- IO:重定向标准输出流
- 标准输入、输出和错误和文件重定向
- 标准输入、输出和错误和文件重定向
- [C#]Word读写
- 完全卸载oracle11g步骤
- 在ubuntu上安装hadoop
- Android平台显示单位px和dip以及sp的区别
- 静态库Lib和动态库Dll
- C#启动命令行进程,重定向标准输出流、標準輸入流和标准错误流 .
- mysql 获取一个库下的所有表名
- 无线局域网产品使用的SMS4密码算法简单实现
- 四、U-boot的使用(二)
- using namespace std
- 因为懂得,才会共鸣
- 解决eclipse-helios中Errors running builder JavaScript Validator的问题(转)
- 黑马程序员-----学习日记<1>------环境配置总结
- 使用ResourceBundle访问本地资源