当前位置:首页 > Windows程序 > 正文

.net操作进程

2021-03-26 Windows程序

 进程(Process)是Windows系统中的一个基本概念,它包含着一个运行程序所需要的资源。进程之间是相对独立的,一个进程无法直接访问另一个进程的数据(除非分布式),一个进程运行的失败也不会影响其他进程的运行,Windows系统就是利用进程把工作划分为多个独立的区域的。

  进程可以理解为一个程序的基本边界。

一、Process的常用属性与方法

  在System.Diagnostics命名空间当中存在Process类,专门用于管理进程的开始、结束,访问进程中的模块,获取进程中的线程,设定进程的优先级别等。

  Process类常用属性:

属性   说明  
BasePriority   获取关联进程的基本优先级。  
ExitCode   获取关联进程终止时指定的值。  
ExitTime   获取关联进程退出的时间。  
Handle   返回关联进程的本机句柄。  
HandleCount   获取由进程打开的句柄数。  
HasExited   获取指示关联进程是否已终止的值。  
Id   获取关联进程的唯一标识符。  
MachineName   获取关联进程正在其上运行的计算机的名称。  
MainModule   获取关联进程的主模块。  
Modules   获取已由关联进程加载的模块。  
PriorityClass   获取或设置关联进程的总体优先级类别。  
ProcessName   获取该进程的名称。  
StartInfo   获取或设置要传递给Process的Start方法的属性。  
StartTime   获取关联进程启动的时间。  
SynchronizingObject   获取或设置用于封送由于进程退出事件而发出的事件处理程序调用的对象。  
Threads   获取在关联进程中运行的一组线程  

  Process类常用方法:

方法   说明  
GetProcessById   创建新的 Process 组件,并将其与您指定的现有进程资源关联。  
GetProcessByName   创建多个新的 Process 组件,并将其与您指定的现有进程资源关联。  
GetCurrentProcess   获取新的 Process 组件并将其与当前活动的进程关联。  
GetProcesses   获取本地计算机上正在运行的每一个进程列表。  
Start   启动一个进程。  
Kill   立即停止关联的进程。  
Close   释放与此组件关联的所有资源。  
WaitForExit   指示 Process 组件无限期地等待关联进程退出。  

  Microsoft关于Process的说明:

二、信息传递

  StartInfo这个属性专门用于传递信息到被调用的程序。

  其类型是:System.Diagnostics.ProcessStartInfo,MSDN地址为:。

  其属性也很多,无法一一详述。

  为了展示其作用,我设计了两个控制台程序。

  第一个控制台程序代码如下:

static void Main(string[] args) { foreach(string arg in args) { Console.WriteLine(arg); } Console.ReadKey(); }

  然后生成,然后将其生成的exe文件的路径作为参数,放在第二个控制台程序中。

static void Main(string[] args) { Process process = new Process(); process.StartInfo.FileName = @"C:\Users\ChenZhuo\Desktop\MyConsoleApplication\MyConsoleApplication\bin\Debug\MyConsoleApplication.exe"; process.StartInfo.Arguments = string.Format("姓名:刘备 年龄:26"); process.Start(); Console.ReadKey(); }

  启动时输出如下:

  

  可以看到StartInfo这个属性主要用于调用程序向被调用程序传递信息。

  被调用程序的参数在Main(string[] args)这里接收,默认是通过空格分隔。

三、建立与销毁进程

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/67815.html