C# 实时监听系统新进程打开
时间: 2023-11-25 20:46:19 浏览: 28
你可以使用C#来实时监听系统新进程的打开。下面是一种基本的实现方式:
1. 导入所需的命名空间:
```csharp
using System;
using System.Management;
```
2. 编写一个方法来监听新进程的事件:
```csharp
public static void MonitorNewProcess()
{
ManagementEventWatcher processStartWatcher = new ManagementEventWatcher("SELECT * FROM Win32_ProcessStartTrace");
processStartWatcher.EventArrived += new EventArrivedEventHandler(NewProcessEventHandler);
processStartWatcher.Start();
}
private static void NewProcessEventHandler(object sender, EventArrivedEventArgs e)
{
string processName = e.NewEvent.Properties["ProcessName"].Value.ToString();
string processID = e.NewEvent.Properties["ProcessID"].Value.ToString();
Console.WriteLine("新进程打开:");
Console.WriteLine("进程名称: " + processName);
Console.WriteLine("进程 ID: " + processID);
Console.WriteLine();
}
```
3. 在你的主程序中调用这个方法:
```csharp
static void Main(string[] args)
{
MonitorNewProcess();
// 防止程序退出
Console.ReadLine();
}
```
这样,当系统中有新的进程打开时,你的程序就会实时输出相应的信息。