C# ProcessStartInfo对象笔记

1、ProcessStartInfo.FileName

要打开的程序的路径。

2、ProcessStartInfo.Arguments

传一个参数,来打开程序。

3、ProcessStartInfo.ArgumentList

传多个参数,来打开程序。

4、ProcessStartInfo.UseShellExecute

是否用Shell打开 (默认 true),true就相当于直接双击exe运行(或理解为用power shell 输入路径打开exe),false相当于 自己通过操作系统的底层 API(CreateProcess)来创建进程,这样创建的进程可以重定向输入、输出和错误流。如果你想从程序中拿反馈数据,这个参数必须为false。

5、ProcessStartInfo.Redirect Standard Output

重定向 标准输出 (默认 false),默认false时,程序的 Console.Write 的内容会直接打印在它自己的黑色控制台窗口里。当你设为 true,外部程序打印的所有内容不会 显示在它自己的控制台,而是被存入一个缓冲区,你可以通过process.StandardOutput.Read... 去读取。

注意:一旦重定向了,如果你不及时去读(比如程序输出了几万行你却不读),可能会导致缓冲区塞满,进而让外部程序挂起(卡死)。

6、ProcessStartInfo.CreateNoWindow

是否无窗口的启动程序 (默认为false),false就相当于直接双击exe打开了,设为 true :外部程序在后台静默运行,完全没有窗口界面。用户感知不到有一个程序被打开了。

相关推荐
star learning white2 小时前
xm工程物理2
笔记
Hello--_--World2 小时前
ES15:Object.groupBy() 和 Map.groupBy()、Promise.withResolvers() 相关知识点
开发语言·前端·javascript
黑牛儿2 小时前
PHP 8.3性能暴涨实测|对比8.2,接口响应提速30%,配置无需大幅修改
android·开发语言·后端·php
苦 涩2 小时前
考研408笔记之计算机网络(一)——计算机网络体系结构
笔记·计算机网络·考研408
guygg882 小时前
极化码(Polar Codes)的MATLAB实现
开发语言·数据结构·matlab
Xiu Yan2 小时前
Java 转 C++ 系列:函数模板
java·开发语言·c++
froginwe112 小时前
如何使用 AppML
开发语言
格林威3 小时前
工业相机“心跳”监测脚本(C# 版) 支持海康 / Basler / 堡盟工业相机
开发语言·人工智能·数码相机·opencv·计算机视觉·c#·视觉检测
我能坚持多久3 小时前
String类常用接口的实现
c语言·开发语言·c++