ΪºÎÓÃvb api»ñÈ¡µÄ´°¿Ú±êÌâΪ¿Õ£¬¶øSPY++È´¿ÉÒÔ
VBÖÐcallbacke function ÈçÏ£º
Public Function EnumChildProc(ByVal hwnd As Long, ByVal lParam As Long) As Long
Dim slength As Long, WndTitle As String ' title bar text length and buffer
Dim retval As Long ' return value
Dim WClass As String * 50
Static winnum As Integer ' counter keeps track of how many windows have been enumerated
winnum = winnum + 1 ' one more window enumerated....
slength = GetWindowTextLength(hwnd) + 1 ' get length of title bar text
WndTitle = Space(slength) ' make room in the buffer
retval = GetWindowText(hwnd, WndTitle, slength) ' get title bar text
GetClassName hwnd, WClass, 50
EnumChildProc = 1 ' return value of 1 means continue enumeration
End Function
½á¹ûÁбíÔÚexcelÖУ¬´°¿Ú¾ä±úΪ66622µÄÀà¿ÉÒÔÕÒµ½£¬µ«ÊÇTitleȴΪ¿Õ
ChildWndHnd ChildWndClass ChildWndTitle
66624 TCoolBar
66626 TToolBar
66620 TCoolBar
66622 TToolBar
66618 TPanel
µ«ÊÇΪʲôSPY++ÖÐÈ´¿ÉÒÔÕÒµ½£º
retval = GetWindowText(hwnd, WndTitle, slength)
¼ì²éretvalµÄÖµ,¿´¿´º¯ÊýÖ´ÐеĽá¹ûÊÇʲô.
APIµÄµ÷Óö¼»áÓзµ»ØÖµ,¶¼»á¸æËßÄã·¢ÉúÁËЩʲô.
ÒÔÉÏ´úÂë¿´²»³öhwndÊÇÈçº
Ïà¹ØÎÊ´ð£º
ÎÒÓг§¼Ò×öµÄASPµÄ¼à¿ØÂ¼Ïñ£¨DVR£©µÄ¾ÖÓòÍø²¥·ÅµÄÔ´³ÌÐòÓë¿Ø¼þ£¬ÏëÒªÓÃASP.net×öÒ»¸öÊÓÆµ»Ø·ÅµÄ³ÌÐò£¨ÀûÓÃËûµÄ¿Ø¼þ£©µ«²»ÖªÈçÏÂÈ¥×ö£¬Íû¸÷λָµã¡£
ÏȸãÇå³þËûÃǵĿؼþÊÇÔõôÓõÄ,
È»ºó¾ÍÖ±½ÓÓúÃÁË.
²»¹ý,Èç ......
¸÷룬ÇëÎʹ³×ÓÊÇÔõôÔËÐеİ¡£¿ÇëÏÈ¿´¿´ÎÒдµÄ´úÂ룺
Public hhook
Private Sub Command1_Click()
hhook = SetWindowsHookEx(2, AddressOf testhook, 0, App.ThreadID)
End Sub
ÒÔϵ ......
×Ö·û´® m1="E"
×Ö·û´® m2="F"
Èç¹ûtext1.text=m1+m2µÄ»° Ôòtext1ÏÔʾµÄÊÇ EF
µ«ÊÇÈç¹û
×Ö·û´® m1="E"
×Ö·û´® m2="6"
Èç¹ûtext1.text=m1+m ......
ÎÒÓÃVBµ÷ÓÃWord ǶÈëVB´°ÌåÖÐ(ÕâЩ¶¼ÊÇÕý³£)
È»ºóÔÚ×ÀÃæ´ò¿ªÁíÒ»¸öword a.doc
ÏÖÔÚÎÊÌâ³öÀ´ÁË.....ÎҹرÕVB´°Ìå,֮ǰµÄÄǸöwordÒ²Õý³£¹Ø±ÕÁË
½ÓÏÂÀ´±Õ¹Øa.doc »á³öÏÖÎÊÌâ
Õâ¸öÒªÔõà ......
Ôõôµã»÷form2Éϵİ´Å¥ ¿ÉÒÔ½áÊøform1ÉÏÕýÔÚ½øÐеÄÑ»·
form1ÀïÃæÌí¼ÓÒ»¸ö±äÁ¿£º
Public bEnd As Boolean
Ñ»·´úÂëÌí¼Ó£º
bEnd = False
Do
...
If ......