2010-08-02 64 views
1

我使用PyWin32的win32process.CreateProcess啓動一個GUI程序,該程序具有我想在Python類中使用的功能。使用Python從GUI程序發送/接收文本

我想這樣做在Python下面這個界面:

  • 發送文字到圖形用戶界面中的各個窗口(這似乎改變標識符每次我創建的過程中,如果WinSpy ++是可信的時間),
  • 單擊GUI上的按鈕來配置和啓動計算,並從GUI(允許GUI內文本輸出或保存文件輸出)中檢索計算輸出結果

快速問題:我應該研究哪些Python/PyWin32功能來完成這些任務?我不是在尋找實際的代碼,只是我應該研究的領域來學習如何自己做這些事情。我已經在Win32上掃描了大部分學習Python,編程Python和Python編程,如果它們在那裏,就不會識別出答案。

感謝,

邁克

回答

1

你想要做什麼是複雜的,我不知道你能夠做到這與Python。我只能發表一些指針,但不能保證它是正確的方向。

至於發送文本到各個窗口 - 有SendMessage函數 - 您可能需要將您的數據作爲按鍵消息發送到所需的窗口。至於SendMessage需要的hWnd參數 - 您應該可以通過調用EnumChildWindows函數或類似函數獲得它。

檢索輸出更加困難 - 我認爲您需要將目標窗口的WndProc替換爲在打印時爲您保存輸出的目標窗口。您可以用SetWindowLong替代WndProc(可能)。

應該是可能的,但我個人會盡力避免編碼這樣的事情。

還有一件事 - 它不完全是python相關的問題。嘗試找到C/C++代碼完成與Win32API類似的事情,並嘗試將其轉換爲Python。搜索SO for WinAPI資源。如果你足夠絕望,那就是......

相關問題