编写代码前添加:using System.Diagnostics;
1.获取本机的
string processName;//进程名成
int processID;//ID
int threadNumber;//进程数
TimeSpan cpuTime;//CPU时间
long processMemory;//内存数量
2.要实现的框架结构(添加三个菜单和一个listView),listView的属性设置见上篇C#中控件的应用:
为三个菜单添加事件处理函数,分别添加代码:
private void 创建进程ToolStripMenuItem_Click(object sender, EventArgs e)
{
OpenFileDialog ofDlg = new OpenFileDialog();//构建打开文件对话框
ofDlg.Filter = "All Executables(*.exe)|*.exe";//筛选
if (ofDlg.ShowDialog() == DialogResult.OK)
{
try
{
Process newprocess = Process.Start(ofDlg.FileName);//选择进程
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
}
private void 刷新列表ToolStripMenuItem_Click(object sender, EventArgs e)
{//显示进程信息
string processName;//进程名成
int processID;//ID
int threadNumber;//进程数
TimeSpan cpuTime;//CPU时间
long processMemory;//内存数量
listView1.Items.Clear();//清除列表视图中原有的内容
Process[] processes = Process.GetProcesses();//定义动态数组,获得当前系统中的所有进程
try
{
//在列表中加入每个进程项目
for (int i = 0; i < processes.Length; i++)
{
processName = processes[i].ProcessName;
processID = processes[i].Id;
threadNumber = processes[i].Threads.Count;//获得进程的数量
cpuTime = processes[i].TotalProcessorTime;
processMemory = processes[i].WorkingSet64;
string[] subItems =
{
processName,
processID.ToString(),
threadNumber.ToString(),
string.Format("{0:00}:{1:00}:{2:00}",
cpuTime.Hours,cpuTime.Minutes,cpuTime.Seconds),
string.Format("{0:#,#,#}k",processMemory/1024)
};
//插入一行项目
listView1.Items.Insert(i, new ListViewItem(subItems));
}
}
catch (System.Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void 结束进程ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (listView1.SelectedItems.Count > 0)
{
string str = listView1.SelectedItems[0].SubItems[1].Text;
int processID = Int32.Parse(str);//获取选中项目的ID 值
//根据ID获取进程
Process selectedProcess = Process.GetProcessById(processID);
selectedProcess.Kill();//终止进程
}
}
4.结果如图:
分享到:
相关推荐
C#中进程的应用实例(C#的网络编程),进程名,ID,进程数,CPU时间,内存数量
c#网络编程技术,从c#进程基础,到各种网络编程,内容详细,很好的入门及提高的书
2.1 同步TCP应用编程 2.1.1 使用套接字发送和接收数据 2.1.2 使用NetworkStream对象发送和接收数据 2.1.3 TcpClient与TcpListener类 2.1.4 解决TCP的无消息边界问题 2.2 利用同步TCP编写网络...
第01章-网络应用编程入门知识;第02章-数字墨迹与动态绘图基础;第03章-进程、线程与应用程序域;第04章-数据流与数据的加密和解密;第05章-异步编程;第06章-并行编程;第07章-WCF入门;第08章-WCF和HTTP应用编程;...
第一章 进程线程网络协议 第二章 TCP应用编程 第三章 UDP应用编程 第四章 P2P应用编程 第五章 SMTP和POP3应用编程 第六章 网络数据加密与解密 第七章 三维设计与多媒体编程 第八章 实验
C#网络编程---第2章_TCP应用编程.ppt C#网络编程---第3章_UDP应用编程.ppt C#网络编程---第4章_P2P应用编程.ppt C#网络编程---第5章_SMTP与POP3应用编程.ppt C#网络编程---第6章_网络数据加密与解密.ppt C#网络编程-...
(2)介绍开发网络应用编程所需的基本知识 包括:IP地址转换、域名解析、网卡信息检测以及网络数据编码和解码、套接字、数据流等技术 (3)介绍各种网络协议类应用编程技术 主要介绍TCP、UDP、SMTP、FTP、P2P (4...
第3部分(第10章~第12章)介绍协议类应用开发技术,包括P2P应用开发、网络数据加解密技术等,最后用一个网络综合应用开发实例作为对《C#网络应用编程(第2版)》编程技术的总结。 《C#网络应用编程(第2版)》提供配套的...
C#网络应用高级编程ppt有关进程、线程与网络协议,TCP应用编程,三维设计与多媒体编程等重点知识。
此代码是一个用C#编写的控制台程序,功能是列出系统运行进程及其主窗口名。
C#网络应用高级编程课件 第1章 进程、线程与网络协议 第2章 TCP应用编程 第3章 UDP应用编程 第4章 P2P应用编程 第5章 SMTP与POP3应用编程 第6章 网络数据加密与解密 第7章 三维设计与多媒体编程
前段时间有点空闲就自学了一下c#,以前也没有学过任何编程,只是对电脑操作还是很熟,会一些应用类软件,计算机相关的英文能看懂点。 看了10多节的视频教程,因为基础太差,前面学的东西老会忘,光这样学也没有多大...
C#网络应用编程教案及代码 章节 第1章 概述 第2章 进程与线程 第3章 IP地址转换与网卡信息检测 第4章 套接字与数据流 第5章 TCP应用编程 第6章 UDP应用编程 第7章 FTP应用编程 第8章 HTTP应用编程 第9章 ...
第2章 TCP应用编程 27 2.1 同步TCP应用编程 28 2.1.1 使用套接字发送和接收数据 28 2.1.2 使用NetworkStream对象发送和接收数据 30 2.1.3 TcpClient与TcpListener类 31 2.1.4 解决TCP协议的无消息边界问题 33 2.2 ...
C#高级编程PPT教案包含有: 第1章 进程、线程与网络协议 第2章 TCP应用编程 第3章 UDP应用编程 第4章 P2P应用编程 第5章 SMTP与POP3应用编程 第6章 网络数据加密与解密 第7章 三维设计与多媒体编程
网络编程(进程,线程,网络协议,p2p,udp,tcp...) 教学课程
该资源是关于C#网络编程的教程...包含进程、线程与网络协议,TCP、UDP、P2P应用编程,SMTP与POP3应用编程,网络数据加密与解密。资源是一同学传给我的,用了之后感觉不错,传上来大家一起分享。有了收获不要忘了评分。
引用KProtectProcess.dll 然后NKCore.dll 是c++的类库放在同级目录就可以了。 开始调用 KProtectProcess.KProcess.SelfProtection(); 结束调用...这样用户就无法在任务管理器的 进程 中杀掉你的程序了。
《C#多线程编程实战》共分为11章,第1章介绍C#中基本的线程操作;第2章描述线程交互细节;第3章解释线程池概念;第4章深入讲解任务并行库框架;第5章深入解释C#5.0中的新功能——异步方法;第6章描述.NET框架中并行...