通过进程ID获得该进程主窗口的句柄
一个进程可以拥有很多主窗口,也可以不拥有主窗口,所以这样的函数是不存在的,所幸的是,相反的函数是有的。所以我们可以调用EnumWindows来判断所有的窗口是否属于这个进程。
typedef struct tagWNDINFO{ DWORD dwProcessId; HWND hWnd;} WNDINFO, *LPWNDINFO;
BOOL CALLBACK YourEnumProc(HWND hWnd,LPARAM lParam){ DWORD dwProcessId; GetWindowThreadProcessId(hWnd, &dwProcessId); LPWNDINFO pInfo = (LPWNDINFO)lParam; if(dwProcessId == pInfo->dwProcessId) { pInfo->hWnd = hWnd; return FALSE; } return TRUE;}
HWND GetProcessMainWnd(DWORD dwProcessId){ WNDINFO wi; wi.dwProcessId = dwProcessId; wi.hWnd = NULL; EnumWindows(YourEnumProc,(LPARAM)&wi); return wi.hWnd;}
如果这个进程没有窗口,函数返回NULL。
转载于:https://www.cnblogs.com/daxingxing/archive/2011/09/26/2192035.html
通过进程ID获得该进程主窗口的句柄相关推荐
- linux与windows查看占用端口的进程ID并杀死进程
有时候tomcat出现端口被占用,需要查出进程ID并杀死进程. 1.查找占用端口的进程ID(windows与linux一样 8005也可以加上引号 grep可以用findstr替换) 6904就 ...
- win32根据进程名获取进程ID或者终止进程
第一部分: 根据进程名获取进程ID. 首先我们需要了解三个windows API函数: HANDLE WINAPI CreateToolhelp32Snapshot(DWORD dwFlags,DWO ...
- Linux进程ID号--Linux进程的管理与调度(三)
进程ID概述 进程ID类型 要想了解内核如何来组织和管理进程ID,先要知道进程ID的类型: 内核中进程ID的类型用pid_type来描述,它被定义在include/linux/pid.h中 enum ...
- 为应用程序池**提供服务的进程意外终止。进程ID是**。进程退出代码是'0x80'
2010-8-26 11:39 事件类型: 警告 事件来源: W3SVC 事件种类: 无 事件 ID: 7034 日期: 2010-8-XX 事件: XX:XX:XX 用户: XX 计 ...
- linux如何查询进程ID和关闭进程
1.查看端口占用的进程号 (1)比如要查询8080 端口 lsof -i:8080 COMMAND:进行成名,如上说明8080被一个server进程占用 PID:进程的ID,一般杀掉进程时就是指定进程 ...
- 使用cat /proc/进程id/maps 查看进程内存映射
proc/<PID>/maps 查看进程的虚拟地址空间是如何使用的. 该文件有6列,分别为: 地址:库在进程里地址范围 权限:虚拟内存的权限,r=读,w=写,x=,s=共享,p=私有: 偏 ...
- linux如何查看DMS的进程id,linux启动进程的方式
linux启动进程的方式 最基础的 nohup 方式 这是最简单的方式,也是 linux 新手们很容易搞混淆的一个经典问题: command command > /dev/null comman ...
- Kibana停止kibana的方法命令:找到5601端口对应的进程ID 把此进程进行kill即可
报错 {"type": "log","@timestamp": "2018-11-21T06:32:59Z"," ...
- 进程相关(进程Id获取主窗口)
1.知道进程handle 获取进程名称. PROCESS_INFORMATION* processInfo =(PROCESS_INFORMATION*)pid(); HANDLE hProce ...
最新文章
- Navicat 9.1、10.0 简体中文最新版,注册码(For Mysql)
- 【机器学习】 - 各种人脸数据集下载地址及说明汇总
- HTML5商城开发四 多图或多商品的水平滚动展示
- 2014年南京航空航天大学计算机学院推荐研究生公示,2014年南航计算机科学与技术学院考研分数线及复试调剂办法...
- Struts2 基础入门
- Anaconda Prompt 怎么切换工作路径
- 成都理工大学计算机组成原理考试,计算机组成原理试题.doc
- robots文件对网站优化有哪些作用
- 2010-04-20 代码复用、使用率情况分析
- VisionPro FixtureCoord工具解释
- Apache 实现AJAX跨域请求
- verilog数字系统设计——串入并出移位寄存器
- Android 系统 wifi基础知识
- EDG一追一追平LGD,四保一阵容的Iboy从来不会让我们失望!
- ON1 Photo RAW 2021 15.0.0.9735 快速的 RAW 照片编辑器
- vue把localhost改成ip地址无法访问—解决方法
- 摘:戒嗔小和尚的博客一
- java ssj_java中ssj框架的项目搭建流程
- 图的应用——最短路径(迪杰斯特拉算法)
- 关于php的搞笑段子,笑死人的笑话搞笑段子10个 搞笑笑话笑死人不偿命
热门文章
- 使用Go内置库实现简易httpbin功能
- ROS中base_link, odom, fixed_frame, target_frame和虚拟大地图map的关系
- Data Artisans发布支持ACID事务的流式处理框架Streaming Ledger
- 固态硬盘驱动器在设计上有个安全漏洞 易导致数据损毁
- angularJs 之deferred
- 搭建Solr集群的推荐方案
- 深入理解PHP内核(五)函数的内部结构
- 【莫队算法】bzoj3781 小B的询问
- VBScript中InStr函数的用法
- 我的家庭私有云计划-16