2017-08-25 23 views
1

我使用python向应用程序发送密钥。python:如何使用win32api.PostMessage

我用win32gui

hwndMain = win32gui.FindWindow(None,"busmaster")回报5441816

hwndMain = win32gui.FindWindow(None,"busmaster")回报3606522

win32api.PostMessage(hwndChild, win32con.WM_CHAR, ord('a'), 0)返回0

我怎样才能解决这个问题?

+0

在pywinauto Find方法send_chars(...)。我们已经以正确的方式使用它。但有些事情取决于应用程序。 –

回答

0

发送键激活窗口是这种做法很容易:

shell = win32com.client.Dispatch('WScript.Shell') 
shell.SendKeys('abc') 
shell.SendKeys('^v') # Ctrl+V 
shell.SendKeys('{ENTER}') # Enter key 

,并使激活窗口,你需要

win32gui.SetForegroundWindow(hwnd) 
+0

谢谢,但我必须在后台工作..任何想法? –

+0

不幸的是,[你无法用PostMessage模拟键盘输入](https://blogs.msdn.microsoft.com/oldnewthing/20050530-11/?p=35513/) –