ΪºÎÓÃ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ÊÇÈçº
Ïà¹ØÎÊ´ð£º
ΪʲôCдµÄDLLÎļþC¡¢PBÄܵ÷ÓÃVB²»Äܵ÷Óã¿
VBÀïΪʲôÓеÄDLLÖ±½Óͨ¹ýÒýÓÿÉÒÔʹÓã¿ÓеÄÐèҪͨ¹ýdeclareÉêÃ÷Íⲿº¯Êý£¿ÕâЩDLLÓÐʲô²î±ð£¿
1¡¢ÎªÊ²Ã´PBÄÜͨ¹ýDECLAREÉùÃ÷¶øVB²»ÐУ¿
2¡¢Èç¹ûÕâ¸ödllÖÐµÄ ......
Õâ¸ö³ÌÐòÊǹ̶¨µÄ£¬±ÈÈçcmd.exe
´ò¿ªCMDºó£¬Êó±êÔÚCMDµÄ±êÌâÀ¸¿ÉÒÔµã»÷ÓÒ¼üºÍ×ó¼ü£¬µ¯³öÏàÓ¦µÄ²Ëµ¥¡£
ÎÒÒª´ïµ½µÄÄ¿µÄÊÇ£ºÎÞÂÛÊÇ×ó»÷»¹ÊÇÓÒ»÷CMDµÄ±êÌâÀ¸¶¼²»Äܵ¯³ö²Ëµ¥¡£
»òÕßÄܳöÏֲ˵¥Ò²ÐУ¬µ«Ö»Äܳö ......
ÎÒÓÃVBµ÷ÓÃWord ǶÈëVB´°ÌåÖÐ(ÕâЩ¶¼ÊÇÕý³£)
È»ºóÔÚ×ÀÃæ´ò¿ªÁíÒ»¸öword a.doc
ÏÖÔÚÎÊÌâ³öÀ´ÁË.....ÎҹرÕVB´°Ìå,֮ǰµÄÄǸöwordÒ²Õý³£¹Ø±ÕÁË
½ÓÏÂÀ´±Õ¹Øa.doc »á³öÏÖÎÊÌâ
Õâ¸öÒªÔõà ......
´ó¼ÒºÃ£¬Îʸövb´òÓ¡ÎÊÌâ
printer.print "dsff"
.....
....
Printer.EndDoc
´òÓ¡³É¹¦ºóÎÒ½«Ö´ÐÐ
sqlstr = "update vc_yh set pr=' ÒÑ´òÓ¡ ', ......
ÎÒÒªµ¼Èëµ¼³öÊý¾Ý¿âÎļþ£¬ÔÚµ½´¦µÄʱºòʹÓÃÁí´æÎª¶Ô»°¿ò£¬¾ßÌå´úÂëÊÇÈçºÎʵÏֵģ¿ÎÒÖ±½ÓÓÃcommondialog1.showsaveÖ®ºóµãÁí´æÎªÃ»ÓÐÏìÓ¦£¬ÊDz»ÊÇÒªÌí¼Óʲô´úÂ룿¼±£¡
Áí´æÎªÊ²Ã´¸ñʽµÄÎļþÄãÐèÒª¸æËß´ó¼Ò,дµ½²»Í¬À ......