System.Diagnostics.Process
提供了开启进程、结束进程、获取系统进程的信息等方法。
使用它应该可以实现windows任务管理器的功能。
#MyProcess.cs
using System;
using System.Diagnostics;
namespace MyProjects
{
public class MyProcess : System.IDisposable
{
int processID ;
public MyProcess ( )
{
Process p ;
p = new Process() ;
p.StartInfo = new ProcessStartInfo ( "notepad.exe" ) ;
p.Start ( ) ;
processID = p.Id ;
Console.WriteLine ( "ProcessID is: {0}" , processID ) ;
}
public void Dispose ( )
{
// Dispose
Console.WriteLine ( "Disposed" ) ;
Process p = new Process ( ) ;
p = Process.GetProcessById ( this.processID ) ;
try
{
p.CloseMainWindow ( ) ; //仅关闭主窗口
//p.Kill ( ) ; //结束进程
}
catch ( ApplicationException ex )
{
throw ex ;
}
}
}
}
#Class1.cs
using System;
namespace MyProjects
{
public class Class1
{
public Class1()
{
}
public static void Main ( string[] args )
{
using ( MyProcess myProcess = new MyProcess ( ) )
{
Console.ReadLine ( ) ;
}
}
}
}
打开一个notepad,程序结束时,将打开的notepad关闭。