예제 #1
0
LRESULT CAppWindow::WndProc(UINT uMessage, WPARAM wParam, LPARAM lParam)
{
	switch (uMessage)
	{
	case WM_CREATE:
		return OnCreate();

	case WM_NOTIFTICON:
		return OnNotifyIcon((UINT)lParam, (UINT)wParam);

	case WM_COMMAND:
		return OnCommand(LOWORD(wParam));

	case WM_WAVE_CONNECTION_STATE:
		return OnWaveConnectionState((WAVE_CONNECTION_STATE)wParam, lParam);

	case WM_TIMER:
		m_lpTimers->Process((UINT_PTR)wParam);
		return 0;

	case WM_DESTROY:
		m_lpNotifyIcon->Destroy();
		return 0;

	case WM_CURL_RESPONSE:
		return OnCurlResponse((CURL_RESPONSE)wParam, lParam);

	case WM_VERSION_STATE:
		return OnVersionState((VERSION_STATE)wParam);

	case WM_CLOSE:
		return OnClose();

	case WM_WTSSESSION_CHANGE:
		return OnWTSSessionChange(wParam);

	case WM_POWERBROADCAST:
		return OnPowerBroadcast(wParam);

	case WM_ENDSESSION:
		return OnEndSession((BOOL)wParam, lParam);

	default:
		if (uMessage == CNotifierApp::Instance()->GetWmTaskbarCreated())
		{
			m_lpNotifyIcon->Recreate();
			return 0;
		}
		break;
	}

	return CWindow::WndProc(uMessage, wParam, lParam);
}
예제 #2
0
//---------------------------------------------------------------------
// ウィンドウプロシージャ
//---------------------------------------------------------------------
LRESULT CALLBACK MainFrm_WndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) {
	switch (uMsg) {
	case WM_CREATE:
		return OnCreate(hwnd, wParam, lParam);

	case WM_DESTROY:
		PostQuitMessage(0);
		return 0;

	case WM_PAINT:
		return OnPaint(hwnd, wParam, lParam);

	case WM_POWERBROADCAST:
		return OnPowerBroadcast(hwnd, wParam, lParam);
	}

	return DefWindowProc(hwnd, uMsg, wParam, lParam);
}