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.结果如图:
相关文章
- 【原创】机器学习之PageRank算法应用与C#实现(2)球队排名应用与C#代码
- C# 系统应用之调用SDelete程序粉碎文件及基础原理知识
- C# 系统应用之CookieSession基础知识及php读取CookieSession
- C# 系统应用之获取Windows最近使用记录
- C#内存映射文件消息队列实战演练(MMF—MQ)
- Win10系列:C#应用控件基础4
- Win10系列:C#应用控件基础1
- Win10系列:C#应用控件基础20
- Win10系列:C#应用控件基础15
- Win10系列:C#应用控件基础13
- Win10系列:C#应用控件基础11
- Win10系列:C#应用控件基础8
- Win10系列:C#应用控件基础5
- C# Winform 学习(四)
- C# 获取今天,昨天,上周,下周,上月,下月等等一些日期格式
- C# 委托应用总结
- 在C#代码中应用Log4Net(三)Log4Net中配置文件的解释
- EQueue - 一个C#写的开源分布式消息队列的总体介绍
- C# Timer 定时器应用
- Atitit.获取approot api 应用根路径 java c#.net php asp
- C#趣味程序---九九乘法表
- (六十八)c#Winform自定义控件-DEMO整理-HZHControls
- C# 试题库知识点,填空题、选择题,判断题,编程题【共940道题】
- (70)C#里怎么样在注册表里创建子键和获取键值
- C#——Fibonacci数列应用
- C#命令行编译和执行
- C#编程入门,C#中控件(textBox、checkBox、listBox、listView等等)的应用