Найти и закрыть все экземпляры приложения, используя win32api в Python

Я хочу найти и закрыть все скрытые экземпляры Excel.

Я думаю, что следующий код должен:

  1. Найти открытый экземпляр Excel
  2. Прекратить это

Но это не так. Вместо этого я получаю ошибку, что дескриптор неверен.

import win32api
import win32gui

excel_handle = win32gui.FindWindowEx(0, 0, None, "Excel")
win32api.TerminateProcess(excel_handle, 0)

Как я могу получить дескриптор на экземпляр (или все экземпляры) Excel, которые открыты? Они могут или не могут быть видны.

1 ответ

Решение

Будет ли приемлемым использовать subprocess.call

import subprocess
subprocess.call(["taskkill", "/f", "/im", "EXCEL.EXE"])
Другие вопросы по тегам