C#Process进程的基本使用
1.摘要
Process类提供对本地和远程进程的访问权限并使你能够启动和停止本地系统进程。
全命名空间为System.Diagnostics.Process,所以使用时要引用命名空间using System.Diagnostics;
2.基本方法
-
public void Close();
-
释放与此组件关联的所有资源。调用这方法后,将无法访问此进程相关的属性资源。
-
-
public void Kill();
-
立即停止关联的进程。
-
-
public bool Start();
-
启动(或重用)此 System.Diagnostics.Process 组件的
-
-
public static Process[] GetProcessesByName(string processName);
-
创建新的 System.Diagnostics.Process 组件的数组,并将它们与本地计算机上共享指定的进程名称的所有 进程资源关联。
-
参数: processName:该进程的友好名称。
-
返回结果:类型 System.Diagnostics.Process 的数组,表示运行指定应用程序或文件的进程资源。
3.基本属性
-
public int Id { get; }
-
获取关联进程的唯一标识符。
-
public string ProcessName { get; }
-
获取该进程的名称。
-
public ProcessStartInfo StartInfo { get; set; }
-
获取或设置要传递给 System.Diagnostics.Process 的 System.Diagnostics.Process.Start 方法的属性。
-
public string MainWindowTitle { get; }
-
获取进程的主窗口标题。
-
public string MachineName { get; }
-
获取关联进程正在其上运行的计算机的名称。"."表示本地计算机。
4.代码案例
比如使用代码打开QQ登录界面,以及杀掉。
窗体布局
代码
-
using System;
-
using System.Collections.Generic;
-
using System.ComponentModel;
-
using System.Data;
-
using System.Diagnostics;
-
using System.Drawing;
-
using System.Linq;
-
using System.Text;
-
using System.Threading.Tasks;
-
using System.Windows.Forms;
-
-
namespace ProcessTest
-
{
-
public partial class Form1 : Form
-
{
-
Process process;
-
string str = "";
-
public Form1()
-
{
-
InitializeComponent();
-
}
-
/// <summary>
-
/// 启动
-
/// </summary>
-
/// <param name="sender"></param>
-
/// <param name="e"></param>
-
private void btnStart_Click(object sender, EventArgs e)
-
{
-
//创建进程对象
-
process = new Process();
-
//获取文本框的目标位置
-
str = textBox1.Text;
-
//设置进程启动文档
-
process.StartInfo.FileName = str;
-
//设置进程启动窗体状态
-
process.StartInfo.WindowStyle = ProcessWindowStyle.Normal;
-
//启动
-
process.Start();
-
//弹出提示
-
MessageBox.Show("打开" str.Split('\\')[str.Split('\\').Length-1]);
-
}
-
/// <summary>
-
/// 杀掉进程
-
/// </summary>
-
/// <param name="sender"></param>
-
/// <param name="e"></param>
-
private void btnExit_Click(object sender, EventArgs e)
-
{
-
//停止进程
-
process.Kill();
-
//弹出提示
-
MessageBox.Show("关闭" str.Split('\\')[str.Split('\\').Length - 1]);
-
}
-
/// <summary>
-
/// 获取相关信息
-
/// </summary>
-
/// <param name="sender"></param>
-
/// <param name="e"></param>
-
private void button1_Click(object sender, EventArgs e)
-
{
-
textBox2.Text = process.ProcessName "\r\n"
-
process.Id.ToString() "\r\n"
-
process.MainWindowTitle "\r\n"
-
process.MachineName;
-
}
-
}
-
}
5.效果
启动
获取信息
进程被QQ关闭,所以无法获取信息,可以尝试获取其他应用程序信息。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgbikha
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13