C#遍历系统进程的方法

C#遍历系统进程主要可以使用System.Diagnostics命名空间中的Process类实现。下面是具体步骤:

1.引入System.Diagnostics命名空间

using System.Diagnostics;

2.创建一个Process对象

Process process = new Process();

3.设置Process对象的属性

process.StartInfo.FileName = "tasklist.exe";  //设置进程名
process.StartInfo.Arguments = "/fo table";    //设置输出格式
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.UseShellExecute = false;

4.启动Process进程并开始异步读取标准输出

process.Start();
process.BeginOutputReadLine();

5.监听Process对象的标准输出并输出每行字符串

process.OutputDataReceived += new DataReceivedEventHandler((sender, e) =>
{
    if (!string.IsNullOrEmpty(e.Data))
    {
        Console.WriteLine(e.Data);
    }
});

下面是完整示例代码1:

using System;
using System.Diagnostics;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Process process = new Process();
            process.StartInfo.FileName = "tasklist.exe";
            process.StartInfo.Arguments = "/fo table";
            process.StartInfo.RedirectStandardOutput = true;
            process.StartInfo.UseShellExecute = false;

            process.Start();
            process.BeginOutputReadLine();
            process.WaitForExit();

            process.OutputDataReceived += new DataReceivedEventHandler((sender, e) =>
            {
                if (!string.IsNullOrEmpty(e.Data))
                {
                    Console.WriteLine(e.Data);
                }
            });

            Console.ReadKey();
        }
    }
}

下面是完整示例代码2:

using System;
using System.Diagnostics;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            Process[] processes = Process.GetProcesses();

            foreach (Process process in processes)
            {
                Console.WriteLine("Process Name: {0}, Process ID: {1}", process.ProcessName, process.Id);
            }

            Console.ReadKey();
        }
    }
}

以上示例分别演示了使用Process类获取全部进程以及使用tasklist.exe获取进程信息的两种方法,可以根据自己的需求进行选择。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#遍历系统进程的方法 - Python技术站

(0)
上一篇 2023年5月15日
下一篇 2023年5月15日

相关文章

  • c# 循环语句的使用方法

    下面是关于“C#循环语句的使用方法”的详细攻略。 什么是循环语句? 循环语句是编程中常用的一种控制语句,它可以重复执行同一段代码,以达到一定的效果。 在C#语言中,常用的循环语句有for循环、while循环、do-while循环和foreach循环。 for循环的使用方法 for循环是最为常用的一种循环语句,它的基本用法如下: for(初始化表达式; 条件表…

    C# 2023年6月7日
    00
  • .NET中创建对象的几种方式和对比

    一、.NET中创建对象的几种方式 .NET中创建对象的方式有以下几种: 使用new操作符创建对象 使用Activator.CreateInstance方法创建对象 使用反射及ConstructorInfo类创建对象 使用Object类的MemberwiseClone()方法创建对象 使用FormatterServices.GetUninitializedOb…

    C# 2023年6月1日
    00
  • C#操作SQLite实现数据的增删改查

    下面是详细讲解“C#操作SQLite实现数据的增删改查”的完整攻略,过程中将包含两条示例。 1. SQLite介绍 SQLite是一款开源,轻量级的关系型数据库,和其他大型数据库相比,SQLite具有占用资源少、启动快、数据存储在本地等优点。在不需要大规模并发及复杂查询的应用场景下,SQLite是一种非常合适的数据库。 2. 准备工作 在开始前,我们需要安装…

    C# 2023年5月15日
    00
  • 解析ASP.NET Core中Options模式的使用及其源码

    解析ASP.NET Core中Options模式的使用及其源码攻略 ASP.NET Core中Options模式是一种用于配置应用程序的机制。在本攻略中,我们将深入讨Options模式的使用及其源码,并提供两个示例说明。 Options模式的使用 在ASP.NET Core中,Options模式是一种用于配置应用程序的机制。Options模式允许您将配置数据…

    C# 2023年5月17日
    00
  • .NET Core配置连接字符串和获取数据库上下文实例

    在 .NET Core 中,可以使用配置文件来配置连接字符串,并使用依赖注入来获取数据库上下文实例。以下是 .NET Core 配置连接字符串和获取数据库上下文实例的完整攻略: 步骤一:创建配置文件 在 .NET Core 项目中,可以使用 appsettings.json 文件来配置连接字符串。可以在 appsettings.json 文件中添加 Conn…

    C# 2023年5月17日
    00
  • WinForm自定义函数FindControl实现按名称查找控件

    下面就为大家详细讲解WinForm自定义函数FindControl实现按名称查找控件的完整攻略。 一、问题描述 有时候我们需要在WinForm中查找某一个控件,但是因为控件嵌套的层次比较深,需要写很多层级查找的代码,而且这样写不太灵活,每次查找都需要改动代码。因此,我们需要自定义一个函数来实现按名称查找控件,提高效率,降低代码复杂度。如何实现按名称查找控件的…

    C# 2023年5月15日
    00
  • C# 中的GroupBy的动态拼接问题及GroupBy<>用法介绍

    让我们开始讲解C#中的GroupBy的动态拼接问题及GroupBy<>用法介绍。 GroupBy 动态拼接问题 在C#中,GroupBy是一个非常常用的LINQ操作,它可以根据指定的键值来分组集合中的元素。 然而,在实际使用中,如果我们要对多个属性进行GroupBy操作,就会遇到一个动态拼接GroupBy键值的问题。比如说,我们有一个学生集合,需…

    C# 2023年6月1日
    00
  • 在WPF中合并两个ObservableCollection集合

    在WPF中合并两个ObservableCollection集合的攻略可以分为以下步骤: 1. 创建两个ObservableCollection集合 首先,我们需要创建两个不同的ObservableCollection集合,并分别往其中添加数据,如下所示: ObservableCollection<string> collection1 = new…

    C# 2023年6月6日
    00
合作推广
合作推广
分享本页
返回顶部