2009-01-02 27 views
1

更特別的是 - 我有另一個正在運行的應用程序的窗口句柄。這個應用程序在某處包含一個TListControl.UnicodeClass控件(我從Winspector知道這一點)。我怎樣才能使用Windows API和那個窗口句柄來遍歷列表控件中的所有項目並從所有項目中獲取文本?在Windows中,如何枚舉並從另一個窗口的控件中獲取文本?

你可以假設語言是C/C++,但我實際上會使用win32all for python。參考適當的API調用會很好。

回答

2

以上答案是完全錯誤的,甚至不知道什麼是PAS。 這已經在Usenet上回答了數百次20年。 你當然必須使用IPC(RPM)

請問新聞://comp.os.ms-windows.programmer.win32代碼。

+1

PAS - 公開可用的規格? IPC - 進程間通信,RPM - ??。太多的縮寫 – Claudiu 2009-01-06 18:09:10

4

您希望EnumWindows和EnumChildWindows用於枚舉。有關示例和使用信息/警告,請參閱here

對於窗口文本,一旦擁有合適的HWND,一般需要GetWindowText,如果文本存儲在不同的位置(例如:列表控件),則需要控制特定的API。對於特定的控件,您需要知道特定的API,並且可能只有Windows API調用纔可用(例如,具有所有者繪製項目的控件可以將其文本存儲在應用程序中,而Windows無法訪問)。

相關問題