2013-01-12 35 views
3

我得到這樣的活動窗口,以便:win32gui.SetActiveWindow()錯誤:指定的程序無法找到

window = win32gui.GetForegroundWindow() 

這是一個int,說1053634. 事後我嘗試設置前臺窗口回到指定的窗口:

win32gui.SetForegroundWindow(window) 

而且我得到這個錯誤: win32gui.SetForegroundWindow(窗口) 錯誤:(127, 'SetForegroundWindow', '指定的程序無法找到。')

有時我做到這一點的解釋時,我得到這個錯誤:

win32gui.SetForegroundWindow(1053634) 
error: (0, 'SetForegroundWindow', 'No error message is available') 

你認爲是什麼問題?

謝謝!

回答

9

我的程序工作正常,我的桌面上使用Windows 7,但是當我用我的筆記本電腦與Windows Vista (即使UAC關閉),我得到的錯誤:

pywintypes.error: (0, 'SetForegroundWindow', 'No error message is available') 

該計劃將在閃爍任務欄,但不發送字符。

我甚至嘗試發送'記事本'SetForegroundWindow並得到相同的錯誤。

這裏是結合線程拿到電腦想出一個解決辦法的鏈接,他們一起工作:http://www.shloemi.com/2012/09/solved-setforegroundwindow-win32-api-not-always-works/

這篇文章有關於該問題的更多信息。

更新:我很抱歉,鏈接去C程序。我研究了一些,發現它會讓你SetForegroundWindow,如果你先發送一個alt鍵。

例如:

import win32gui, win32com.client 
shell = win32com.client.Dispatch("WScript.Shell") 
shell.SendKeys('%') 
win32gui.SetForegroundWindow(window) 
相關問題