我這里有個軟體是用delphi開發的,有個會員輸入視窗要輸入一些文本框資料,我現在想做一個小程式來自動輸入文本框的資料,文本框的資料能通過查找句柄進行控制元件文本的填寫,但是資料要根據會員輸入視窗下方的控制元件顯示內容來判斷輸入什么資料、資料是否成功寫入資料庫。網上查了一些資料,能獲取控制元件的句柄,但不能提取控制元件文本,因本人是菜鳥,想在此求助高手幫忙寫一段代碼實作我想要的功能。另外能加上注釋那就最好不過了。
下面是我要控制delphi開發的程式的界面

我想要讀取“卡號為空,不能寫卡”這個區域顯示的文字,我用了類似下面的方法可以取到文本檔案的狀態欄的文字,但是取不到這個界面的“卡號為空,不能寫卡”這幾個字。
部分代碼
GetWindowThreadProcessId(hTargetWindow, lProcessID)
hProcess = OpenProcess(PROCESS_ALL_ACCESS, False, lProcessID)
If hProcess = 0 Then Exit Sub
lpBuffer = VirtualAllocEx(ByVal hProcess, ByVal 0&, Len(s), MEM_COMMIT, PAGE_READWRITE)
If lpBuffer = 0 Then Exit Sub
lPartIndex = 1
Call SendMessage(hStatusBar, SB_GETTEXT, lPartIndex, ByVal lpBuffer)
Call ReadProcessMemory(ByVal hProcess, ByVal lpBuffer, ByVal s, Len(s), ByVal 0)
VirtualFreeEx hProcess, ByVal lpBuffer, 0, MEM_DECOMMIT
Debug.Print "狀態欄"; lPartIndex + 1; "中的文字為:"; s
該控制元件在SPY中顯示是屬于TdxStatusBar類

請教大家用什么辦法可以讀取到delphi寫的TdxStatusBar控制元件的文本呢?
uj5u.com熱心網友回復:
你看這個資源能不能幫到你http://download.csdn.net/detail/mjp1234airen4385/1550580
uj5u.com熱心網友回復:
謝謝mjp1234airen4385,你提供的資源好像不針對第三方程式的呀uj5u.com熱心網友回復:
樓主的問題解決了嗎,方便分享下方法嗎uj5u.com熱心網友回復:
樓主的問題解決了嗎,我現在已經遠程注入了,但是不知道怎么拿靜態文本的物件,方便分享下方法嗎?uj5u.com熱心網友回復:
還有人用delphi啊!!我也在用,哈哈!
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/138628.html
標籤:C#
上一篇:C#學生管理系統(連接資料庫)
下一篇:access2017 winform無法連接32位的access2016(Office365 MSO 16.0.11629.20238)如何解決
