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 :外部程序在后台静默运行,完全没有窗口界面。用户感知不到有一个程序被打开了。

相关推荐
夏幻灵4 小时前
JavaScript this 面试:五种绑定规则、优先级与常见面试陷阱
开发语言·javascript·面试
程序猿编码4 小时前
榨干 RTX5090 算力!Qwen3 专用单卡推理引擎,手写C++/CUDA 算子实现 MTP 推测解码
开发语言·c++·大模型推理·qwen3·多模态推理
曹牧5 小时前
C#:未被引用的函数
c#
bkspiderx6 小时前
Qt 插件机制:动态扩展应用功能的核心框架
开发语言·qt·元数据·qt 插件·qpluginloader
程序员老陆6 小时前
深入理解 C++ thread_local:线程私有存储的正确打开方式
开发语言·c++·程序设计
沐晓时光6 小时前
C语言入门,深入理解指针(3)
c语言·开发语言
码云数智-园园6 小时前
unique_ptr 还是 shared_ptr?C++ 智能指针选型与内存泄漏实战分析
java·开发语言
qq_284274057 小时前
机械原理笔记:平面机构自由度计算(复合铰链、局部自由度、虚约束)与四杆机构入门(含考点)
笔记·学习·平面·自动化·制造
禾小西7 小时前
07丨Redis 哨兵机制:主库故障后,如何恢复服务?
java·开发语言·redis
我不是阵雨7 小时前
JDK 21虚拟线程Pinning陷阱:一文拔钉解困
java·开发语言