我正在运行以下脚本,以查找某个进程是否有任何可见窗口:
import win32gui
import win32process
pid = 6324
def WindowIsVisible(pid):
data = [pid, False]
win32gui.EnumWindows(enumHandler, data)
return data[1]
def enumHandler(hwnd, data):
if win32process.GetWindowThreadProcessId(hwnd)[1] == data[0] and win32gui.IsWindowVisible(hwnd):
data[1] = True
if WindowIsVisible(pid):
print "has visible window"
else:
print "does not have visible window"
由于某种原因,它打印了“has visible window”。
然而,这是我的任务栏和任务管理器的样子:
如何做到这一点?Outlook exe 明显是不可见的(尽管在通知图标区域中可见)。