关于python结束windows后台进程的问题
轮子酱 2020-06-18 05:28:06 是这样的,我想用代码结束windows的后台进程"Microsoft Excel (32位)",这里说的后台进程是区别于任务管理器的"应用"分类下的,在任务管理器中被分类为"后台进程"的任务
但是如果使用os.system('taskkill /im Microsoft Excel (32位) /F')则无法区分所关闭的进程是后台进程还是应用
之所以有这个需求是因为我希望在不影响正常前台excel表格使用的前提下,使用python调用excel的宏,使用的方法是
xlApp = win32com.client.DispatchEx("Excel.Application")
xlApp.Visible = False
xlApp.DisplayAlerts = 0
xlBook = xlApp.Workbooks.Open(r"C:\文件\backlog raw data\Metrics.csv",False)
xlBook = xlApp.Workbooks.Open(r"C:\文件\backlog raw data\Metrics (1).csv",False)
xlBook = xlApp.Workbooks.Open("C:\文件\Backlog - Python.xlsm",False)
xlBook.Application.Run("RawData自动复制粘贴") #宏
xlBook.Application.Run("自动截图") #宏
xlBook.Application.Run("Site自动截图") #宏
xlBook.Close(True)
xlApp.quit()
但这个因为需要隔一段时间运行一次,有时运行完后台的excel不会全部都关闭成功,影响下次运行,每次都会需要手动在任务管理器中进行关闭操作,因此想请教一下是否有其他方法能够实现确保后台的excel进程全部被关闭的方法,而不影响前台的excel使用,谢谢!