惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
阮一峰的网络日志
阮一峰的网络日志
Jina AI
Jina AI
博客园 - Franky
U
Unit 42
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
宝玉的分享
宝玉的分享
B
Blog RSS Feed
雷峰网
雷峰网
D
DataBreaches.Net
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
I
InfoQ
美团技术团队
云风的 BLOG
云风的 BLOG
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Martin Fowler
Martin Fowler
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
大猫的无限游戏
大猫的无限游戏
G
Google Developers Blog
T
Tailwind CSS Blog
P
Proofpoint News Feed
The GitHub Blog
The GitHub Blog
月光博客
月光博客
Engineering at Meta
Engineering at Meta

博客园 - hades

python + selenium webdriver 自动化测试 之 环境异常处理 (持续更新) 推荐一个娱乐化学习python的网站 Silverlight 导出Excel Silverlight Control(三)DataGrid Silverlight Control(二)ListBox Silverlight 中使用 WCF RIA Service Silverlight Control(六)GroupBox Silverlight Control(五)TimePicker 在Silverlight中请谨慎使用MVVM Silverlight Chart 综合运用(样式、多轴、数据绑定、点状图、线形图、DataGrid、Chart导出综合运用) Silverlight Control(四)Chart (1) 初体验 Silverlight 如何导出图片 Silverlight Control(一)ComboBox 数据绑定、自定义、取值 Silverlight Style (二) 自定义样式在后台代码中应用 Silverlight Style (一) 如何在页面应用样式 Silverlight Binding (One Time,One Way,Two Way) ASP.NET项目中不能有重名的文件夹 给部队做项目开发的一点想法 企业工作流的定制(SPS实现)
C# 关闭其他程序窗口、进程
hades · 2010-08-10 · via 博客园 - hades

在进行winform开发过程中有时候会需要关闭其他程序或者关闭进程,以前写过一篇相关介绍的文章,今天有同事问起来,于是在次翻出来和大家分享一下。

下面介绍我所知的两种方法,应该对大家有帮助,如果有朋友知道其他的方法,谢谢共享一下。

方法1
ProcName 需要关闭的进程名称

private bool closeProc(string ProcName)
{
bool result = false;
System.Collections.ArrayList procList
= new System.Collections.ArrayList();
string tempName = "";foreach (System.Diagnostics.Process thisProc in System.Diagnostics.Process.GetProcesses())
{
tempName
= thisProc.ProcessName;
procList.Add(tempName);
if (tempName == ProcName)
{
if (!thisProc.CloseMainWindow())
        thisProc.Kill();
//当发送关闭窗口命令无效时强行结束进程
result = true;
}
}
return result;
}

上面程序里定义了一个ArrayList,当不知道所要关闭的进程的具体名称的时候,可以将ArrayList 中的值放到一个listbox或其他的控件里面用来选择进程进行结束。

方法2
在类体中的最上方声明:
[DllImport("user32.dll",   CharSet=CharSet.Auto)]    
public   static   extern   int   SendMessage(int   hWnd,   int   msg,   int   wParam,   int   lparam);

  //SendMessage(hwnd1,WM_CLOSE,0,0);  
  //hwnd1是你用findwindow函数返回的句柄值
  //wm_close定义在winuser.h里面
  //0x0010是   WM_CLOSE的值
  SendMessage(hwnd1,0x0010,0,0);