#include "stdafx.h" #include "resource.h" #include "RYL_AdminManagerServer.h" #include "RYL_AgentServerTable.h" #include #include #include #include // !Window Message Class class CProcessCOMMAND : public CMsgProc { public: CProcessCOMMAND(CConsoleWindow& ConsoleWindow) : m_ConsoleWindow(ConsoleWindow) { } virtual ~CProcessCOMMAND() { } // !WM_COMMAND Message virtual LRESULT operator () (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { char* szCommand = 0; switch (LOWORD(wParam)) { case ID_CONNECTALL: szCommand = "connect_all"; break; case ID_CONSOL_OPENCONSOLE: m_ConsoleWindow.Initialize("AdminManageServer"); break; case ID_CONSOLE_CLOSECONSOLE: m_ConsoleWindow.Destroy(); break; } if(NULL != szCommand) { m_ConsoleWindow.GetCMDProcess().Add( m_ConsoleWindow.GetConsoleCMDFactory().Create(szCommand, strlen(szCommand))); } if(LOWORD(wParam) == ID_FLUSH) { DETLOG0(g_Log, "Flush Log"); g_Log.Flush(); } if(LOWORD(wParam) == ID_QUIT) { DETLOG0(g_Log, "AdminManageServer systray end"); PostMessage(hWnd, WM_QUIT, 0, 0); } return 0; } private: CConsoleWindow& m_ConsoleWindow; }; // !Window Message Class class CWM_DESTROY : public CMsgProc { public: // !WM_DESTROY Message virtual LRESULT operator () (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam) { PostQuitMessage(0); return 0; } }; // !Window Message Class Initialize bool CRylAdminManagerServer::InitializeMsgProc() { int nErrorCount = 0; CMsgProcessMgr* lpMsgProcessMgr = GetMsgProcessMgr(); if(0 != lpMsgProcessMgr) { if(GetConsoleWindow()) { nErrorCount += lpMsgProcessMgr->Register(WM_COMMAND, new CProcessCOMMAND(*GetConsoleWindow())) ? 0 : 1; } nErrorCount += lpMsgProcessMgr->Register(WM_DESTROY, new CWM_DESTROY) ? 0 : 1; } return (0 == nErrorCount); }