WIN API-VFP獲得其他程序多個輸入框的內容
*--------------------------------------
先用SPY++得知其他程序(我測試的軟件)的輸入框類是Edit
下面你啓動測試的軟件,在多個輸入框中隨意輸入幾個字符,然後用以下代碼即可獲得你在多個輸入框中輸入的字符。
Declare Integer FindWindow In user32 String lpClassName,String lpWindowName
Declare Integer FindWindowEx In user32 Integer hwndParent,Integer hwndChildAfter,String @lpszClass,String @lpszWindow
Declare Integer SendMessage In user32 Integer,Integer,Integer,String @
#Define WM_GETTEXT 0xD
lcCaption="要查找窗口的Caption" &&要查找窗口的標題
lnHandle=FindWindow(Null,lcCaption)
If lnHandle>0
lnSendHwnd=0
Do While .T.
lnSendHwnd=FindWindowEx(lnHandle,lnSendHwnd,"Edit",Null) &&獲得輸入框句柄
If lnSendHwnd<>0
lcTextValue=Space(255)
SendMessage(lnSendHwnd,WM_GETTEXT,255,@lcTextValue) &&獲取輸入框內容
?lcTextValue &&顯示得到的輸入框內容
Else
Exit
Endif
Enddo
Else
Messagebox("沒有找到 ["+lcCaption+"] 窗體!"+Space(5),48,"信息提示")
Endif