C#【必备技能篇】调用cmd文件,并读取其输出数据(通过.cmd调用 .py程序 或 .py生成的.exe)
2023-09-11 14:15:48 时间
0、前期Python准备:
Python【必备技能】pip使用+.py在cmd下运行+生成.exe文件:https://blog.csdn.net/sinat_40003796/article/details/126853740
1、C#调用.cmd程序【.py生成的.exe要能打开DOS窗口】
.py生成.exe程序
C#调用python生成的.exe,并想从cmd中获取信息时【.exe程序运行时,会打开DOS命令行】使用时,使用下边命令
pyinstaller -F test.py
需要添加的引用:
using System.Diagnostics;
核心代码:
//运行cmd文件
Process proc = new Process();
proc.StartInfo.FileName = Environment.CurrentDirectory + "\\dist\\test.cmd";//.cmd文件的路径
proc.StartInfo.WorkingDirectory = Environment.CurrentDirectory + "\\dist";//.cmd文件所在的文件夹
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;//这里设置DOS窗口不显示,经实践可行
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardInput = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.RedirectStandardError = true;//重定向标准错误输出
proc.Start();
proc.StandardInput.WriteLine("&exit");
proc.StandardInput.AutoFlush = true;
string output = proc.StandardOutput.ReadToEnd();//【重要!】读取DOS窗体输出的内容
proc.WaitForExit();//等待程序执行完退出进程
proc.Close();
相关文章
- C#图片切割、图片压缩、缩略图生成
- C#基于RabbitMQ实现客户端之间消息通讯实战演练
- Win10系列:C#应用控件基础17
- C#.NET常见问题(FAQ)-如何把写好的类编译成dll文件
- C#程序如何把窗体文件从从一个项目中复制到另一个项目
- C#实现文件下载的几种方式
- C#Winform中resx文件无效 找不到路径
- C# 加密–RSA前端与后台的加密&解密
- C#中文件和byte[]互换问题
- 重新整理数据结构与算法(c#)——KMP破解[二十七]
- C# 快速排序
- C#的换行符和回车符在程序语句中如何表示?
- C# 自定义属性在propertyGrid控件中显示
- C# 文件流压缩解压
- Atitit.跨语言异常转换机制 java c# php到js的异常转换
- C#MUD英雄大作战(副源码文件连接)
- C#MUD英雄大作战二、乔峰篇(副源码文件连接)
- C# 压缩文件 的创建
- c# - WebClient下载https协议文件报错 System.Net.WebException: 请求被中止: 未能创建 SSL/TLS 安全通道 - 解决
- 用C#Winform写个简单的批量清空文件内容和删除文件的小工具
- C#实现水晶报表绑定数据并实现打印4-条形码
- C# EF 使用 (CodeFirst模式)
- C#实验报告上机二
- 基于C#实现自己的webapi调用软件