Доброго времени суток! Собственно код:
| Код | case WM_HOOK: nSwitch = int(wParam); //Произошло некое событие ... AddStatusIcon(hWnd, NIM_MODIFY, Text, false); ...
void AddStatusIcon(HWND hWnd, DWORD dwMessage, WCHAR InfoText[], BOOL Balloon) { HICON hStatusIcon; hStatusIcon = LoadIcon(hIconLib, pszIDStatusIcon); tnd.cbSize = sizeof(NOTIFYICONDATA); tnd.hIcon = hStatusIcon; tnd.hWnd = hWnd; tnd.uID = 1; if(Balloon) { //Балун катит, но не подошел для моих целей. Раздражает! tnd.uFlags = NIF_ICON|NIF_INFO; tnd.dwInfoFlags = NIIF_INFO; lstrcpyn(tnd.szInfoTitle, InfoText, sizeof(tnd.szInfoTitle)); lstrcpyn(tnd.szInfo, InfoText, sizeof(tnd.szInfo)); } else { //Хочу, чтоб иконка выскакивала когда в области уведомлений выставлен: Показать только уведомление. tnd.uFlags = NIF_MESSAGE|NIF_ICON|NIF_TIP; lstrcpyn(tnd.szTip, InfoText, sizeof(tnd.szTip)); } tnd.uCallbackMessage = WM_NOTIFYICONMSG; bCheckRun = Shell_NotifyIcon(dwMessage, &tnd); }
|
Или как принудительно сделать - Показать значок и уведомление? |