C#实现关闭其他程序窗口或进程代码分享

作者:junjie 时间:2022-05-26 07:38:03 

在进行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);
标签:C#,关闭,程序窗口,进程
0
投稿

猜你喜欢

  • 浅谈JAVA 内存流的实现

    2021-06-28 05:43:59
  • C# 利用Selenium实现浏览器自动化操作的示例代码

    2023-08-10 23:43:15
  • C# 表达式目录树Expression的实现

    2023-04-03 22:57:32
  • springboot 整合fluent mybatis的过程,看这篇够了

    2022-09-14 01:16:53
  • c# 使用Task实现非阻塞式的I/O操作

    2023-07-21 23:27:39
  • 一篇文章带你了解JVM垃圾回收

    2023-08-06 23:42:20
  • IDEA使用Gradle构建SpringBoot项目工程的详细教程

    2022-08-31 16:28:26
  • Java 函数式编程梳理

    2023-01-17 04:16:34
  • 详解Mybatis中的PooledDataSource

    2022-10-24 18:08:11
  • Java利用TreeUtils工具类实现列表转树

    2021-10-02 03:28:00
  • Java利用Phantomjs实现生成图片的功能

    2022-01-17 08:21:25
  • springMVC利用FastJson接口返回json数据相关配置详解

    2023-02-24 10:51:58
  • Java redisson实现分布式锁原理详解

    2022-02-18 08:34:10
  • 一文教你如何使用Databinding写一个关注功能

    2023-09-17 12:26:47
  • Java SpringCache+Redis缓存数据详解

    2023-11-29 01:01:05
  • 分享Java常用几种加密算法(四种)

    2022-05-14 17:59:19
  • Android中SeekBar和RatingBar用法实例分析

    2023-07-28 00:13:59
  • SpringBoot使用Atomikos技术整合多数据源的实现

    2021-11-08 23:46:23
  • Java数组越界问题实例解析

    2023-10-25 18:16:23
  • C#实现将汉字转化为2位大写的16进制Unicode的方法

    2022-03-11 21:45:07
  • asp之家 软件编程 m.aspxhome.com