`
897371388
  • 浏览: 529013 次
文章分类
社区版块
存档分类
最新评论

C#中进程的应用(网络编程)

 
阅读更多

编写代码前添加: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#的网络编程)

    C#中进程的应用实例(C#的网络编程),进程名,ID,进程数,CPU时间,内存数量

    C#网络应用编程(第2版)

    c#网络编程技术,从c#进程基础,到各种网络编程,内容详细,很好的入门及提高的书

    C#网络应用高级编程

    2.1 同步TCP应用编程  2.1.1 使用套接字发送和接收数据  2.1.2 使用NetworkStream对象发送和接收数据  2.1.3 TcpClient与TcpListener类  2.1.4 解决TCP的无消息边界问题  2.2 利用同步TCP编写网络...

    C#网络应用编程(第3版)-PPT课件

    第01章-网络应用编程入门知识;第02章-数字墨迹与动态绘图基础;第03章-进程、线程与应用程序域;第04章-数据流与数据的加密和解密;第05章-异步编程;第06章-并行编程;第07章-WCF入门;第08章-WCF和HTTP应用编程;...

    c#网络应用高级编程

    第一章 进程线程网络协议 第二章 TCP应用编程 第三章 UDP应用编程 第四章 P2P应用编程 第五章 SMTP和POP3应用编程 第六章 网络数据加密与解密 第七章 三维设计与多媒体编程 第八章 实验

    C#网络编程培训课件

    C#网络编程---第2章_TCP应用编程.ppt C#网络编程---第3章_UDP应用编程.ppt C#网络编程---第4章_P2P应用编程.ppt C#网络编程---第5章_SMTP与POP3应用编程.ppt C#网络编程---第6章_网络数据加密与解密.ppt C#网络编程-...

    C# Socket网络应用编程

    (2)介绍开发网络应用编程所需的基本知识 包括:IP地址转换、域名解析、网卡信息检测以及网络数据编码和解码、套接字、数据流等技术 (3)介绍各种网络协议类应用编程技术 主要介绍TCP、UDP、SMTP、FTP、P2P (4...

    C#网络应用编程(第2版)-马骏.rar

    第3部分(第10章~第12章)介绍协议类应用开发技术,包括P2P应用开发、网络数据加解密技术等,最后用一个网络综合应用开发实例作为对《C#网络应用编程(第2版)》编程技术的总结。 《C#网络应用编程(第2版)》提供配套的...

    C#网络应用高级编程ppt

    C#网络应用高级编程ppt有关进程、线程与网络协议,TCP应用编程,三维设计与多媒体编程等重点知识。

    C#编程如何获取进程主窗口以及创建进程的执行程序

    此代码是一个用C#编写的控制台程序,功能是列出系统运行进程及其主窗口名。

    C#网络应用高级编程-电子教案

    C#网络应用高级编程课件 第1章 进程、线程与网络协议 第2章 TCP应用编程 第3章 UDP应用编程 第4章 P2P应用编程 第5章 SMTP与POP3应用编程 第6章 网络数据加密与解密 第7章 三维设计与多媒体编程

    c#进程守护软件-附源码

    前段时间有点空闲就自学了一下c#,以前也没有学过任何编程,只是对电脑操作还是很熟,会一些应用类软件,计算机相关的英文能看懂点。  看了10多节的视频教程,因为基础太差,前面学的东西老会忘,光这样学也没有多大...

    C#网络应用编程教案及代码,深入浅出,好教材

    C#网络应用编程教案及代码 章节 第1章 概述 第2章 进程与线程 第3章 IP地址转换与网卡信息检测 第4章 套接字与数据流 第5章 TCP应用编程 第6章 UDP应用编程 第7章 FTP应用编程 第8章 HTTP应用编程 第9章 ...

    C#网络核心编程(Word版电子书+PPT+源代码+习题解答)

    第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教案

    C#高级编程PPT教案包含有: 第1章 进程、线程与网络协议 第2章 TCP应用编程 第3章 UDP应用编程 第4章 P2P应用编程 第5章 SMTP与POP3应用编程 第6章 网络数据加密与解密 第7章 三维设计与多媒体编程

    c#网络应用高级编程-电子教案

    网络编程(进程,线程,网络协议,p2p,udp,tcp...) 教学课程

    C#网络编程学习资料

    该资源是关于C#网络编程的教程...包含进程、线程与网络协议,TCP、UDP、P2P应用编程,SMTP与POP3应用编程,网络数据加密与解密。资源是一同学传给我的,用了之后感觉不错,传上来大家一起分享。有了收获不要忘了评分。

    防杀进程--C#winform编程

    引用KProtectProcess.dll 然后NKCore.dll 是c++的类库放在同级目录就可以了。 开始调用 KProtectProcess.KProcess.SelfProtection(); 结束调用...这样用户就无法在任务管理器的 进程 中杀掉你的程序了。

    C#多线程编程实战_中文完整版

    《C#多线程编程实战》共分为11章,第1章介绍C#中基本的线程操作;第2章描述线程交互细节;第3章解释线程池概念;第4章深入讲解任务并行库框架;第5章深入解释C#5.0中的新功能——异步方法;第6章描述.NET框架中并行...

Global site tag (gtag.js) - Google Analytics