c#如何创建子进程

c#
1605
2024/9/5 6:32:08
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在C#中,可以使用System.Diagnostics.Process类来创建子进程

using System;
using System.Diagnostics;

namespace CreateSubprocessExample
{
    class Program
    {
        static void Main(string[] args)
        {
            // 创建一个新的ProcessStartInfo对象,用于配置子进程
            ProcessStartInfo startInfo = new ProcessStartInfo
            {
                // 设置要启动的应用程序的文件名
                FileName = "notepad.exe",
                
                // 设置是否使用操作系统shell启动进程
                UseShellExecute = true,
                
                // 设置是否将子进程的输出重定向到当前进程
                RedirectStandardOutput = false,
                
                // 设置是否将子进程的错误输出重定向到当前进程
                RedirectStandardError = false,
                
                // 设置是否将当前进程的输入重定向到子进程
                RedirectStandardInput = false,
                
                // 设置子进程是否在新窗口中启动
                CreateNoWindow = false
            };

            try
            {
                // 使用ProcessStartInfo对象启动子进程
                using (Process process = Process.Start(startInfo))
                {
                    // 等待子进程退出
                    process.WaitForExit();

                    // 获取子进程的退出代码
                    int exitCode = process.ExitCode;
                    Console.WriteLine($"子进程已退出,退出代码:{exitCode}");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine($"启动子进程时发生错误:{ex.Message}");
            }
        }
    }
}

在这个示例中,我们创建了一个新的ProcessStartInfo对象,并设置了一些属性来配置子进程。然后,我们使用Process.Start()方法启动子进程,并等待其退出。最后,我们获取子进程的退出代码并将其输出到控制台。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: c#多线程实现的四种方式