使用 c# 调用进程相关开发

   最近在维护公司的以前项目中发现,使用到了进程相关知识。现在将此总结,以备后面查看复习。

一、进程查看器
   
 程序在运行的时候,操作系统就会为其分配一个进程。那么进程到底是什么东西呢?
 实际上,进程就是一些数据资源和一些代码(这里执行的代码可以看做线程)。
 
 在.net中提供了一个命名空间“using System.Diagnostics;”,里面的Process类可以实现进程检查的能力。
 下面介绍下这个类的简单使用。
 1、process.GetProcessById(int processId);//根据指定的进程id查询该进程
 2、process.GetProcessByName();//根据进程名查询该进程
 3、process.GetProcess();//获取所有进程,返回:process[]
 
 说明:①带远程计算机名字符串时,可以进行远程访问
        Process[] myProcess=Process.GetProcess("远程计算机名")
     或
     Process[] myprocess=Process.GetProcessByName("远程计算机名","进程名");
    
二、进程属性
    通过上面的方法我们可以得到进程对象,我们还可以根据进程得到很多其他数据。
    PriorityClass---进程优先级的类别   
 BasePriority----进程优先级的数字表示
    MachineName-----计算机名
 Modules---------关联进程加载的模块
 MainModule------关联进程的主模块
 ProcessName-----进程名
 WorkingSet64----获取进程分配的物理内存
 stratTime-------获得进程启动时间
 
 源码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Diagnostics;

namespace Demo
{
    class Program
    {
        static void Main(string[] args)
        {
            int num = 0;//计数
            Process [] pro=Process.GetProcesses();
            for (int i = 0; i < pro.Length; i++)
            {
                string p=pro[i].ProcessName.ToString();
                string startTime=(pro[i].StartTime).ToString();
                string basePriority = (pro[i].BasePriority).ToString();
                string MachineName = pro[i].MachineName;
                string WorkingSet64 = (pro[i].WorkingSet64).ToString();
                Console.WriteLine("进程名:{0}", p);
                Console.WriteLine("进程启动时间{0}", startTime);
                Console.WriteLine("进程优先级{0}", basePriority);
                Console.WriteLine("计算机名{0}", MachineName);//由于是本机,所以是”.“
                Console.WriteLine("进程物理内存{0} KB", WorkingSet64);
                Console.WriteLine("*************************************************************************************************");
                Console.WriteLine();
                num++;
            }
            Console.WriteLine("总共进程:{0}",num);
            
        }
    }
}
View Code

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值