• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

C#Process进程的基本使用

武飞扬头像
自动化民工
帮助1

1.摘要

        Process类提供对本地和远程进程的访问权限并使你能够启动和停止本地系统进程。

全命名空间为System.Diagnostics.Process,所以使用时要引用命名空间using System.Diagnostics;

2.基本方法

  1.  
    public void Close();
  2.  
    释放与此组件关联的所有资源。调用这方法后,将无法访问此进程相关的属性资源。
  3.  
     
  4.  
     public void Kill();
  5.  
     立即停止关联的进程。
  6.  
     
  7.  
    public bool Start()
  8.  
     启动(或重用)此 System.Diagnostics.Process 组件的 
  9.  
     
  10.  
    public static Process[] GetProcessesByName(string processName);
  11.  
    创建新的 System.Diagnostics.Process 组件的数组,并将它们与本地计算机上共享指定的进程名称的所有 进程资源关联。
  12.  
    参数: processName:该进程的友好名称。
  13.  
    返回结果:类型 System.Diagnostics.Process 的数组,表示运行指定应用程序或文件的进程资源。

3.基本属性

  1.  
    public int Id { get; }
  2.  
    获取关联进程的唯一标识符。
  3.  
    public string ProcessName { get; }
  4.  
    获取该进程的名称。
  5.  
    public ProcessStartInfo StartInfo { get; set; }
  6.  
    获取或设置要传递给 System.Diagnostics.Process 的 System.Diagnostics.Process.Start 方法的属性。
  7.  
    public string MainWindowTitle { get; }
  8.  
    获取进程的主窗口标题。
  9.  
    public string MachineName { get; }
  10.  
    获取关联进程正在其上运行的计算机的名称。"."表示本地计算机。

4.代码案例

        比如使用代码打开QQ登录界面,以及杀掉。

窗体布局

学新通

代码

  1.  
    using System;
  2.  
    using System.Collections.Generic;
  3.  
    using System.ComponentModel;
  4.  
    using System.Data;
  5.  
    using System.Diagnostics;
  6.  
    using System.Drawing;
  7.  
    using System.Linq;
  8.  
    using System.Text;
  9.  
    using System.Threading.Tasks;
  10.  
    using System.Windows.Forms;
  11.  
     
  12.  
    namespace ProcessTest
  13.  
    {
  14.  
    public partial class Form1 : Form
  15.  
    {
  16.  
    Process process;
  17.  
    string str = "";
  18.  
    public Form1()
  19.  
    {
  20.  
    InitializeComponent();
  21.  
    }
  22.  
    /// <summary>
  23.  
    /// 启动
  24.  
    /// </summary>
  25.  
    /// <param name="sender"></param>
  26.  
    /// <param name="e"></param>
  27.  
    private void btnStart_Click(object sender, EventArgs e)
  28.  
    {
  29.  
    //创建进程对象
  30.  
    process = new Process();
  31.  
    //获取文本框的目标位置
  32.  
    str = textBox1.Text;
  33.  
    //设置进程启动文档
  34.  
    process.StartInfo.FileName = str;
  35.  
    //设置进程启动窗体状态
  36.  
    process.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
  37.  
    //启动
  38.  
    process.Start();
  39.  
    //弹出提示
  40.  
    MessageBox.Show("打开" str.Split('\\')[str.Split('\\').Length-1]);
  41.  
    }
  42.  
    /// <summary>
  43.  
    /// 杀掉进程
  44.  
    /// </summary>
  45.  
    /// <param name="sender"></param>
  46.  
    /// <param name="e"></param>
  47.  
    private void btnExit_Click(object sender, EventArgs e)
  48.  
    {
  49.  
    //停止进程
  50.  
    process.Kill();
  51.  
    //弹出提示
  52.  
    MessageBox.Show("关闭" str.Split('\\')[str.Split('\\').Length - 1]);
  53.  
    }
  54.  
    /// <summary>
  55.  
    /// 获取相关信息
  56.  
    /// </summary>
  57.  
    /// <param name="sender"></param>
  58.  
    /// <param name="e"></param>
  59.  
    private void button1_Click(object sender, EventArgs e)
  60.  
    {
  61.  
    textBox2.Text = process.ProcessName "\r\n"
  62.  
    process.Id.ToString() "\r\n"
  63.  
    process.MainWindowTitle "\r\n"
  64.  
    process.MachineName;
  65.  
    }
  66.  
    }
  67.  
    }
学新通

5.效果

        启动

学新通

        获取信息

学新通

  进程被QQ关闭,所以无法获取信息,可以尝试获取其他应用程序信息。
       
       
       

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgbikha
系列文章
更多 icon
同类精品
更多 icon
继续加载