Удаление уведомлений из центра уведомлений Windows 10 - PullRequest
0 голосов
/ 16 ноября 2018

Я использовал win32api в Python3 для создания приложения для Windows 10, которое поддерживает уведомления о тостах.

У меня уже есть значок в системном трее для моего приложения, я добавляю всплывающие уведомления, используя следующий код

def show_toast(self,msg,title):
        flags = win32gui.NIF_ICON | win32gui.NIF_MESSAGE | win32gui.NIF_TIP
        nid = (self.hwnd, 0, flags, win32con.WM_USER + 20, self.hicon, 
            "SpotiFind")
        win32gui.Shell_NotifyIcon(win32gui.NIM_MODIFY, (self.hwnd, 0, 
            win32gui.NIF_INFO,
            win32con.WM_USER + 20,
            self.hicon, "Balloon Tooltip", msg, 200, title))        

Все работает хорошо, но уведомление остается в области уведомлений, и я хочу удалить его автоматически ... в соответствии с MSDN (https://docs.microsoft.com/en-us/windows/desktop/api/shellapi/ns-shellapi-_notifyicondataa)

Чтобы удалить всплывающее уведомление, укажите NIF_INFO и введите пустую строку через szInfo.

Итак, я попробовал следующее

def _destroy_toast(self):
    win32gui.Shell_NotifyIcon(win32gui.NIM_MODIFY, (self.hwnd, 0, 
            win32gui.NIF_INFO,
            win32con.WM_USER + 20,
            self.hicon, "Balloon Tooltip", "", 200, ""))

Это ничего не делает ...

Заранее спасибо ..

...