得到系统进程和结束某个指定的进程
来源:互联网 发布:人像拼图软件 编辑:程序博客网 时间:2024/05/16 10:44
看到这篇文章,关闭指定的IE实例:
http://www.c-sharpcorner.com/Code/2002/Mar/CaptRunIEInstances.asp
自己想了另一个办法来作
先修改注册表:
HKEY_LOCAL_MACHINE//SYSTEM//CurrentControlSet//Service//PerfProc//Performance
下的:Disable Performance Counters 的值改为0
得到系统当前进程,加入到listBox中:
System.Diagnostics.Process[] processOnComputer = System.Diagnostics.Process.GetProcesses();
foreach ( System.Diagnostics.Process p in processOnComputer )
{
this.listBox1.Items.Add(p.ProcessName);
}
关闭某个指定的进程:
System.Diagnostics.Process[] process = System.Diagnostics.Process.GetProcessesByName(this.listBox1.SelectedItem.ToString());
foreach ( System.Diagnostics.Process p in process)
{
p.Kill();
}
但是这样会关闭进程的所有实例,比如如果你打开了多个IE,会把所有的IE窗口都关闭。
下面实现关闭某个特定的IE实例
先声明一个ArrayList:
ArrayList windowHandle = new ArrayList();
得到指定进程的所有实例,放到一个ListBox中,同时把主窗口的Handle放到ArrayList中:
System.Diagnostics.Process[] processOnComputer = System.Diagnostics.Process.GetProcessesByName(this.listBox1.SelectedItem.ToString());
foreach ( System.Diagnostics.Process p in processOnComputer )
{
this.listBox2.Items.Add(p.MainWindowTitle);//在ListBox中显示主窗体的标题
windowHandle.Add(p.MainWindowHandle);
}
把指定的进程的主窗口的Handle和ArrayList中的比对,如果符合就关闭
System.Diagnostics.Process[] process = System.Diagnostics.Process.GetProcessesByName(this.listBox1.SelectedItem.ToString());
foreach ( System.Diagnostics.Process p in process )
{
if ( p.MainWindowHandle == (System.IntPtr)(windowHandle[this.listBox2.SelectedIndex]))
{
p.Kill();
this.listBox2.Items.RemoveAt(this.listBox2.SelectedIndex);
}
}
这样可以关闭有主窗体的进程,但是没有主窗体的还不行
还请大家多多指教
- C#得到系统进程和结束某个指定的进程
- 得到系统进程和结束某个指定的进程
- C#得到系统进程和结束某个指定的进程
- 得到系统进程和结束某个指定的进程
- C#得到系统进程和结束某个指定的进程
- C#得到系统进程和结束某个指定的进程
- C#得到系统进程和结束某个指定的进程
- 得到系统进程和结束某个指定的进程 (C#)
- 结束指定的windows进程
- 遍历进程 结束某个进程
- 程序中开始和结束某个进程
- 如何结束某个名字的所有进程?
- 结束指定进程
- 结束指定进程
- Delphi结束指定进程...
- 结束指定路径进程
- Delphi结束指定进程
- 结束指定窗口名的进程
- asp.net中常用的一些小技巧
- ASP对象
- 在ASP.NET使用javascript的一点小技巧
- IIS建站的详细攻略
- asp简单教程
- 得到系统进程和结束某个指定的进程
- 如何在DataGrid里面产生滚动条而不滚动题头
- ASP.NET ViewState 初探
- vc++编程怎么打开已经设计好的窗体
- ASP.NET页面间的传值的几种方法
- 怎样将后台生成的在内存中的图象显示到客户端
- [c#]遍历枚举中的项目名称和数值
- 大数据量下的分页
- 定时函数的应用综述