LRESULT CTrayIconHooker::WindowProc(UINT nMsg, WPARAM wParam, LPARAM lParam) { ASSERT(m_pTrayIcon); LRESULT lResult = 0; if (nMsg == wm_TaskbarCreated) lResult = OnTaskbarCreated(wParam, lParam); else { switch (nMsg) { case WM_TIMER: { if (wParam == m_pTrayIcon->m_NotifyIconData.uID) //It's our timer OnTimer(wParam); else lResult = Default(); break; } default: { lResult = Default(); break; } } } return lResult; }
BOOL CTrayIconHooker::ProcessWindowMessage(HWND /*hWnd*/, UINT nMsg, WPARAM wParam, LPARAM lParam, LRESULT& lResult) { ASSERT(m_pTrayIcon); lResult = 0; BOOL bHandled = FALSE; if (nMsg == wm_TaskbarCreated) { lResult = OnTaskbarCreated(wParam, lParam); bHandled = FALSE; } else { switch (nMsg) { case WM_TIMER: { if (wParam == m_pTrayIcon->m_NotifyIconData.uID) //It's our timer { OnTimer(wParam); bHandled = TRUE; } break; } case WM_DESTROY: { m_pTrayIcon->RemoveIcon(); break; } default: { break; } } } return bHandled; }