如何隐藏从Python调度的COM对象
问题内容:
我在Python中使用COM,并且我希望对象在后台运行-隐藏。使用Excel我可以:
Import win32com.client
Excel=win32com.client.Dispatch("Excel.Application")
Excel.Visible=1
但是我的应用程序没有属性.Visible
-还有其他隐藏方法吗?也许有一些特殊的参数要调度?
在此先感谢R
问题答案:
如果您知道应用程序的标题或类,则可以通过ShowWindow将其隐藏:
import win32com.client
import win32con
import win32gui
import time
print "Start"
excel = win32com.client.Dispatch("Excel.Application")
excel.Visible = 1 # Visible via automation
time.sleep(2)
hwnd = win32gui.FindWindow(None, "Microsoft Excel") # Class or title
print "Hide"
win32gui.ShowWindow(hwnd, win32con.SW_HIDE) # Hide via Win32Api
time.sleep(2)
print "Show"
win32gui.ShowWindow(hwnd, win32con.SW_SHOW) # Show via Win32Api
time.sleep(2)
###
HTH,Pablo