2011-01-08 37 views
3

我是Python的新手,並試圖將鍵擊的組合發送到在Windows 7下打開的應用程序。當我調用記事本時,我的腳本將完美地工作。 EXE爲測試目的,它不與我正在嘗試使用的實際應用程序。如何使用SendKeys將模擬鍵盤筆畫發送到活動窗口

這是到目前爲止我的代碼:

import win32com.client 
import time 
import SendKeys 
import os 
from ctypes import * 

shell = win32com.client.Dispatch("WScript.Shell") 

os.startfile("C:\...exe") 

time.sleep(5) 

shell.SendKeys('%{F4}')  # 'Alt+F4' to close the application again. 

出於某種原因,應用程序不會關閉在反應腳本。當我在鍵盤上點擊「Alt + F4」時,它會按預期關閉。關於可能發生在這裏的任何想法?

歡迎任何幫助!請記住,我是新來的Python ;-)

PS:我已經驗證了應用程序在活動窗口通過包括此代碼段運行:

import win32ui 
wnd = win32ui.GetForegroundWindow() 
print wnd.GetWindowText() 
+0

哪些是您的具體要求?你爲什麼使用Python?它看起來好像你已經把自己塗在了一個角落裏。 – Apalala 2011-01-09 01:17:43

回答

0

OK ......我重新啓動該系統和由於某種原因現在正在工作。我想知道如果以前的程序調用的某個流程實例可能一直在系統中徘徊。無論如何,即使我真的不明白哪裏出了問題,我現在能夠按預期執行操作。

感謝大家誰花時間repsond。

0

我知道這是6年前問過,但有人可能會同樣的問題,所以這裏是一個可能的解決方案:

shell.AppActivate('Put_The_Name_Here')

上面的代碼將選擇程序,文件等:已打開但未激活,也許是您的問題。

希望這可以幫助別人!

相關問題