社区
进程/线程/DLL
帖子详情
知道窗口句柄,怎么获得进程的句柄!
myusst
2003-10-18 05:47:41
知道窗口句柄,用GetWindowThreadProcessId,可以获得进程的ID.
那么知道窗口句柄,怎么获得进程的句柄呢?
...全文
39
4
打赏
收藏
知道窗口句柄,怎么获得进程的句柄!
知道窗口句柄,用GetWindowThreadProcessId,可以获得进程的ID. 那么知道窗口句柄,怎么获得进程的句柄呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
myusst
2003-10-18
打赏
举报
回复
知道了,用GetWindowLong(hwnd,GWL_HINSTANCE);
就可以了。
yaoha2003
2003-10-18
打赏
举报
回复
是GetSafeHwnd
yaoha2003
2003-10-18
打赏
举报
回复
FromHandle()
MilitaryMiniatures
2003-10-18
打赏
举报
回复
你知道了进程的ID之后,就可以打开进程了,这样就得到了进程的句柄。
参考如下函数:
HANDLE OpenProcess(DWORD, BOOL, DWORD dwProcessID);
最后一个参数就是进程的ID,返回你所打开的进程句柄。
易语言通过
窗口
句柄
取得
进程
ID
易语言通过
窗口
句柄
取得
进程
ID源码,通过
窗口
句柄
取得
进程
ID,
句柄
获得
进程
ID_DLL
VC
进程
ID
获得
主
窗口
句柄
获得
进程
名
VC
获得
进程
ID
获得
主线程ID
获得
窗口
句柄
获得
主
窗口
获得
进程
名 1.
窗口
类名
窗口
句柄
窗口
标题
窗口
句柄
HWND FindWindow( LPCTSTR lpClassName, //
窗口
类名 可用 VC或者VS自带的Spy++查看 LPCTSTR lpWindowName //
窗口
标题 ); 举例: 以 记事本为例, 记事本
窗口
类名 为:NotePad,
窗口
标题 视按具体情况而定,假设为"新建 文本文档.txt - 记事本"
窗口
类名
窗口
句柄
TCHAR lpClassName[]=TEXT("NotePad"); HWND hWnd=::FindWindow(lpClassName,NULL); if(hWnd && IsWindow(hWnd)) ::ShowWindow(hWnd,SW_HIDE);
窗口
标题
窗口
句柄
TCHAR lpWindowName[]=TEXT("新建 文本文档.txt - 记事本"); HWND hWnd=::FindWindow(NULL,lpWindowName); if(hWnd && IsWindow(hWnd)) ::ShowWindow(hWnd,SW_HIDE); 2.
窗口
句柄
进程
ID
窗口
句柄
主线程ID 要使用到的函数: DWORD GetWindowThreadProcessId( HWND hWnd, //目标
窗口
句柄
LPDWORD lpdwProcessId //返回目标
窗口
对应
进程
ID ); 例子: DWORD dwProcId=0;//存放返回的
进程
ID DWORD dwThreadId=0;//存放返回的主线程ID HWND hWnd=XXXX;//这里省略,可能用任务方式得到一个
窗口
的
句柄
.比如用1中的方法. dwThreadId=GetWindowThreadProcessId(hWnd,&dwProcId);//同时得到
进程
ID和主线程ID. 3.
窗口
HAND CWnd 用CWnd::FromHandle(HWND hWnd)函数.很多类都有这个函数. 4.
进程
名
进程
ID (注:
进程
名,即在"任务管理器"中看到的名字) 用CCheckObject类(详细实现源文件); 例子: 以记事本为例,
进程
名为 NOTEPAD.EXE (不一定是大写哦,得到任务管理器是显示而定); CCheckObject ch; TCHAR Name[]=TEXT("NOTEPAD.EXE"); DWORD dwProcId=ch.GetProcessId(Name); 5.
进程
名 主线程ID 例子: CCheckObject ch; TCHAR Name[]=TEXT("NOTEPAD.EXE"); DWORD dwThreadId=ch.GetThreadId(Name); 6.
进程
名 主
窗口
句柄
CCheckObject ch; TCHAR Name[]=TEXT("NOTEPAD.EXE"); HWND hWnd=ch.GetTargetWindowHanle(Name); 7. 其它说明 从CCheckObject类和上面的源码中,不难写出从
进程
ID 主线程ID
进程
ID 主
窗口
句柄
主线程ID--->主
窗口
句柄
等等其它类似转换. 对于主
窗口
,特点如下: A. 不能用
进程
ID,要用线程ID,因为一个
进程
可能有多个线程,每个线程都可能会有主
窗口
. B. 主
窗口
不会有WS_CHILD属性 C. 主
窗口
没有父
窗口
D. 主
窗口
一般都有子
窗口
(这个不是一定的,但是具有普遍性)
Windows游戏编程系列之1:GUI
窗口
界面编程及游戏入门实战
我将带领大家来系统学习Windows的
窗口
编程,包括消息、
窗口
、GDI绘图、游戏开发等。本课程比较基础,非常适合初学者入门,读者可以边学习边实践。具体的章节目录和课程内容如下所示:---------------------------------------------Windows游戏编程系列之1:GUI界面编程及游戏入门实战1、Windows创建第一个
窗口
WinMain入口函数 5进行Windows编程的调试手法 6
窗口
从哪里来? 7
窗口
编程的步骤 7
窗口
编程需要的主要结构 8
窗口
编程需要的主要API 92、Windows的
窗口
过程与消息机制 如何留住
窗口
? 121)Windows的消息与消息循环 142)消息处理函数与常用消息 17)Windows的
窗口
过程函数 19 3、GDI编程之设备上下文 1)GDI的通用编程框架 222)GDI的绘图步骤 253)GDI获取设备
句柄
254、GDI编程之绘制几何图形 画点、线 28颜色COLORREF 29矩形 29画圆、饼图、弦图 305、GDI编程之自定义画笔画刷画笔简介 32画刷简介 33画笔案例 33画刷案例 346、GDI编程之绘制文字 DrawText函数 35TextOut 函数 (wingdi.h) 36CreateFont函数 37绘制文本案例 377、GDI编程之绘制位图 位图简介 381)在资源中添加位图资源 392)从资源中加载位图: LoadBitmap 393)创建一个与当前DC相匹配的DC(内存DC) 394)将bitmap放入匹配的DC中:SelectObject 405)成像(1:1 比例 ) 406)取出位图 407)释放位图 418)释放匹配的DC 41绘制位图案例 41 8、Windows鼠标键盘消息 一、键盘消息 421、键盘消息 422、消息参数: 423、消息的使用: 424、键盘消息的案例代码 43二、鼠标消息 441、基本鼠标消息 442、双击消息 443、滚轮消息 454、不响应双击消息 45 9、Windows定时器消息 定时器消息介绍 47创建定时器 47关闭定时器 47定时器消息案例代码 4810、GDI游戏之跳舞动画 11、GDI游戏之走路动画 12、GDI贪吃蛇游戏实战
通过
进程
ID找到
窗口
句柄
.
通过
进程
ID找到
窗口
句柄
.通过
进程
ID找到
窗口
句柄
.通过
进程
ID找到
窗口
句柄
.通过
进程
ID找到
窗口
句柄
.通过
进程
ID找到
窗口
句柄
.通过
进程
ID找到
窗口
句柄
.通过
进程
ID找到
窗口
句柄
.通过
进程
ID找到
窗口
句柄
.
通过
进程
id获取主
窗口
句柄
及主
窗口
标题
通过
进程
id获取到所在
进程
的主
窗口
的
句柄
,及通过该主
窗口
句柄
获取当前主
窗口
的标题,
进程
名;这是一个demo例程,仅供参考
进程/线程/DLL
15,471
社区成员
49,182
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章