首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

怎么根据hwnd句柄,获取hInstance句柄

2012-05-13 
如何根据hwnd句柄,获取hInstance句柄有经验的老手都知道me.hwnd(窗口句柄) 和 app.hInstance(称:实例句柄

如何根据hwnd句柄,获取hInstance句柄
有经验的老手都知道
me.hwnd(窗口句柄) 和 app.hInstance(称:实例句柄 或 实体句柄) 是两个不同的句柄

同一个应用程序下 取得的结果不一样

现在我碰到一个问题

我已经知道了其他名部程序的hwnd ,请问,如何转换为 hInstance


HOOK函数 (SetWindowsHookEx) 的第三个参数就是hInstance类型的,只有找到hInstance才能钩住外部程序

我这样的思路谁帮我解决一下问题,谢谢

[解决办法]

VB code
Option Explicit'¡¾²Ù×÷ϵͳ¡¿'Win9X: Yes'WinNT: Yes'¡¾ËµÃ÷¡¿'  ´ÓÖ¸¶¨´°¿ÚµÄ½á¹¹ÖÐÈ¡µÃÐÅÏ¢'¡¾·µ»ØÖµ¡¿'  Long£¬ÓÉnIndex¾ö¶¨¡£Áã±íʾ³ö´í¡£»áÉèÖÃGetLastError'¡¾ÆäËü¡¿'¡¾²ÎÊý±í¡¿'  hwnd -----------  Long£¬ÓûΪÆä»ñÈ¡ÐÅÏ¢µÄ´°¿ÚµÄ¾ä±ú'  nIndex ---------  Long£¬ÓûÈ¡»ØµÄÐÅÏ¢£¬¿ÉÒÔÊÇÏÂÊöÈκÎÒ»¸ö³£Êý£º'  GWL_EXSTYLE'  À©Õ¹´°¿ÚÑùʽ'  GWL_STYLE'  ´°¿ÚÑùʽ'  GWL_WNDPROC'  ¸Ã´°¿ÚµÄ´°¿Úº¯ÊýµÄµØÖ·'  GWL_HINSTANCE'  ÓµÓд°¿ÚµÄʵÀýµÄ¾ä±ú'  GWL_HWNDPARENT'  ¸Ã´°¿ÚÖ®¸¸µÄ¾ä±ú?²»ÒªÓÃSetWindowWordÀ´¸Ä±äÕâ¸öÖµ'  GWL_ID'  ¶Ô»°¿òÖÐÒ»¸ö×Ó´°¿ÚµÄ±êʶ·û'  GWL_USERDATA'  º¬ÒåÓÉÓ¦ÓóÌÐò¹æ¶¨'  DWL_DLGPROC'  Õâ¸ö´°¿ÚµÄ¶Ô»°¿òº¯ÊýµØÖ·'  DWL_MSGRESULT'  ÔÚ¶Ô»°¿òº¯ÊýÖд¦ÀíµÄÒ»ÌõÏûÏ¢·µ»ØµÄÖµ'  DWL_USER'  º¬ÒåÓÉÓ¦ÓóÌÐò¹æ¶¨Private Const GWL_HINSTANCE = (-6)Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As LongPrivate Sub Command1_Click()    Dim lngP As Long    lngP = GetWindowLong(Me.hwnd, GWL_HINSTANCE)    Me.Caption = "±¾´°ÌåµÄhInstance£½" & CStr(lngP)End Sub 

热点排行