想寫一個程式,能夠得到其他已經編譯成EXE的PB應用程式中DATAWINDOW顯示的值,有人做過類似的開發嗎?
原本打算用FINDWINDOW,FINDWINDOWEX來實作,但由于很多DATAWINDOW標題都是空,無法取到句柄.
大家有什么好的想法嗎?謝謝
uj5u.com熱心網友回復:
沒有人給點好的建議嗎?uj5u.com熱心網友回復:
用spy++查找控制元件id,利用GetDlgItem函式獲取控制元件句柄,利用api函式獲取值,但要注意資料視窗焦點的變化。uj5u.com熱心網友回復:
請問,如何獲取DW上的值呢?是什么API函式?uj5u.com熱心網友回復:
用dde,程式之間的通信uj5u.com熱心網友回復:
可以實再呼叫的東東,我給看一下uj5u.com熱心網友回復:
你自已看看,我做過呼叫別的程式的按鈕,有pb做的api 函式定義
FUNCTION ulong FindWindow(ulong lpClassName, string lpWindowName) LIBRARY "user32.dll" ALIAS FOR "FindWindowA"
Function long FindWindowExA( long hWnd, long hWndChild, string lpszClassName, string lpszWindow) library 'user32'
Function long SendMessage(long hwnd,long wMsg,long wParam,string lParam) Library "user32.dll" Alias for "SendMessageA"
Function long SendMessagestring(long hwnd,long wMsg,long wParam,string lParam) Library "user32.dll" Alias for "SendMessageA"
Function long GetDlgIte(long hDlg , long nIDDlgItem ) Library "user32" Alias for"GetDlgItem"
-----程式呼叫示例-----
ulong ll_wincopy,lpClassName
ulong ll_winhandle,ll_edit,ll_null
long ll_hwndbtn
string ls_Classbtn
//視窗標題
string ls_title
ls_title ='門診條碼列印'
//視窗句柄
ll_winhandle = FindWindow(lpClassName,ls_title)
string ls_ClassName
ls_ClassName="Edit"
//查找
ll_edit = FindWindowExA(ll_winhandle,ll_NULL,ls_ClassName,'')
ll_edit = GetDlgIte(ll_winhandle,1026)
//發送收費流水號 訊息 '200912250410' 是收費流水號
SendMessagestring(ll_edit,12,0,'200912250410')
ls_Classbtn ='Button'
//查找按鈕句柄
ll_hwndbtn = FindWindowExA(ll_winhandle,ll_NULL,ls_Classbtn,'自動列印')
sle_btn.text = string(ll_hwndbtn)
//發送列印條碼訊息
SendMessagenum(ll_hwndbtn,245,0,0)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/100851.html
標籤:API 調用
上一篇:急!treeviewitem
下一篇:歷史庫存大家如何實作?
