python – FindWindow失败
发布时间:2020-12-20 13:30:36 所属栏目:Python 来源:网络整理
导读:我使用pywin32扩展来解决FindWindow问题. 简单的C代码: int main(){ HWND h = FindWindow(NULL,TEXT("SomeApp")); if (h != INVALID_HANDLE_VALUE) SetForegroundWindow(h); return 0;} 效果很好.与python相同: import win32guih = win32gui.FindWindow(No
我使用pywin32扩展来解决FindWindow问题.
简单的C代码: int main() { HWND h = FindWindow(NULL,TEXT("SomeApp")); if (h != INVALID_HANDLE_VALUE) SetForegroundWindow(h); return 0; } 效果很好.与python相同: import win32gui h = win32gui.FindWindow(None,"SomeApp") if h: win32gui.SetForegroundWindow(h) else: print "SomeApp not found" 失败,找不到SomeApp.我建议文本编码可能会引起麻烦,但是在docs中找不到如何指定文本的任何信息. 更新: 解决方法
在C代码中,您正在检查h!= INVALID_HANDLE_VALUE,在Python h!= None中. INVALID_HANDLE_VALUE不是0 / null / None.
Python通过win32file导入定义了win32file.INVALID_HANDLE_VALUE. 此外,您可以执行以下操作,而不是打印“找不到SomeApp”. gle = win32api.GetLastError() err = win32api.FormatMessage(gle)[:-2] print 'SomeApp not found: LastError=%d - %s' % (gle,err) 如果FindWindow由于某种原因合法地失败了,那么这应该给你更多关于失败的细节(如果它起作用,则为“成功”). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |