как выполнять дальнейший асинхронный код только в случае если определённое exe приложение запущено ? python

Как выполнять дальнейший асинхронный код,
только в случае если определённое exe приложение запущено ?

Есть асинхронный код взаимодействующий с exe приложением,
как ожидать открытия приложения в случае если оно закрыто,
и продолжать в случае если оно открыто.

Хотелось бы использовать для этого функцию возвращающую true/false


Ответы (1 шт):

Автор решения: AnnaBazueva

Вот небольшой пример:

import win32gui
import pygetwindow as gw


def get_all_windows():
    """Возвращает словарь, содержащий заголовки окон и их дескрипторы (hwnd)."""
    def _MyCallback(hwnd, extra):
        hwnds, classes = extra
        hwnds.append(hwnd)
        classes[win32gui.GetWindowText(hwnd)] = win32gui.GetClassName(hwnd)

    windows = []
    classes = {}
    win32gui.EnumWindows(_MyCallback, (windows, classes))
    return classes

print("Список всех открытых окон:")
for key, value in get_all_windows().items():
    if key != "":
        print("\t* " + key.split("\n")[0])
        print(value)

    else:
        print("\t* " + key.split("\n")[0])
        print(value)

for title in gw.getAllTitles():
    print(title)

Дальше, думаю разберётесь. Успехов!

→ Ссылка