void NFNetModule::KeepAlive() { if (!m_pNet) { return; } if (m_pNet->IsServer()) { return; } if (nLastTime + 10 > GetPluginManager()->GetNowTime()) { return; } nLastTime = GetPluginManager()->GetNowTime(); NFMsg::ServerHeartBeat xMsg; xMsg.set_count(0); SendMsgPB(NFMsg::EGameMsgID::EGMI_STS_HEART_BEAT, xMsg, 0); }
void NFCMysqlConnectMgrModule::CheckMysql() { if (mnLastCheckTime + 10 > GetPluginManager()->GetNowTime()) { return; } mnLastCheckTime = GetPluginManager()->GetNowTime(); ////////////////////////////////////////////////////////////////////////// int nServerID = 0; std::vector<int> xIntVec; for (NFIMysqlDriver* pMysqlDriver = mvMysql.First(nServerID); pMysqlDriver != NULL; pMysqlDriver = mvMysql.Next(nServerID)) { if (!pMysqlDriver->Enable()) { xIntVec.push_back(nServerID); mvInvalidMsyql.AddElement(nServerID, pMysqlDriver); } } for (int i = 0; i < xIntVec.size(); ++i) { mvMysql.RemoveElement(xIntVec[i]); } ////////////////////////////////////////////////////////////////////////// xIntVec.clear(); nServerID = 0; for (NFIMysqlDriver* pMysqlDriver = mvInvalidMsyql.First(nServerID); pMysqlDriver != NULL; pMysqlDriver = mvInvalidMsyql.Next(nServerID)) { if (!pMysqlDriver->Enable() && pMysqlDriver->CanReconnect()) { pMysqlDriver->Reconnect(); if (pMysqlDriver->Enable()) { xIntVec.push_back(nServerID); mvMysql.AddElement(nServerID, pMysqlDriver); } } } for (int i = 0; i < xIntVec.size(); ++i) { mvInvalidMsyql.RemoveElement(xIntVec[i]); } }
int Run(LPTSTR /*lpstrCmdLine*/ = NULL, int nCmdShow = SW_SHOWDEFAULT) { int nRet = 0; { CAppSingleInstance m_appSingleInstance; if(m_appSingleInstance.IsAnotherInstanceRunning()) { CString msgAlreadyRunning; msgAlreadyRunning.LoadString(IDS_ALREADYRUNNING); CString strCaption; strCaption.LoadString(IDS_CAPTION); MessageBox(NULL, msgAlreadyRunning, strCaption, 0); return 1; } CMessageLoop theLoop; _Module.AddMessageLoop(&theLoop); SetCurrentDirectoryToApplicationRoot(); g_hObjMdl = LoadLibrary(L"objmdl.dll"); GetPluginManager()->InitializePluginLibraryByHandle(g_hObjMdl); GetPluginManager()->InitializePluginLibraryByName(L"viewmdl.dll"); GetPluginManager()->InitializePluginLibraryByName(L"asyncsvc.dll"); GetPluginManager()->LoadPlugins(NULL); CComObject<CMainDlg>* pMainDlg; CComObject<CMainDlg>::CreateInstance(&pMainDlg); HWND hWnd = 0; if (FAILED(pMainDlg->CreateEx(NULL, &hWnd))) { ATLTRACE(_T("Main dialog creation failed!\n")); return 0; } ::ShowWindow(hWnd, SW_HIDE); nRet = theLoop.Run(); _Module.RemoveMessageLoop(); } #ifdef _DEBUG _CrtDumpMemoryLeaks(); #endif return nRet; }
bool NFCMysqlModule::Execute() { if (mnLastCheckTime + 10 > GetPluginManager()->GetNowTime()) { return false; } mnLastCheckTime = GetPluginManager()->GetNowTime(); if (m_pMysqlDriverManager.get()) { m_pMysqlDriverManager->CheckMysql(); } return true; }
void NFCNetLogic::ConnectServer(const std::string strIp, int nPort) { m_listDelayMsg.clear(); m_bSocketReady = false; NF_SHARE_PTR<ConnectData> serverData = g_pNetClientModule->GetServerNetInfo(0); if (serverData) { serverData->eState = ConnectDataState::RECONNECT; // server config error, fix it if (strIp != "127.0.0.1") { serverData->strIP = strIp; } serverData->nPort = nPort; serverData->mnLastActionTime = GetPluginManager()->GetNowTime()-9; } else { ConnectData xServerData; xServerData.nGameID = 0; xServerData.strIP = strIp; xServerData.nPort = nPort; g_pNetClientModule->AddServer(xServerData); } }
STDMETHODIMP CFormsService::OnInitialized(IServiceProvider* pServiceProvider) { CHECK_E_POINTER(pServiceProvider); InvalidateRect(m_hControlWnd, NULL, TRUE); m_pServiceProvider = pServiceProvider; CComQIPtr<IMainWindow> pWindow = m_pControl; RETURN_IF_FAILED(m_pServiceProvider->QueryService(SERVICE_FORM_MANAGER, &m_pFormManager)); CComPtr<IObjArray> pObjectArray; RETURN_IF_FAILED(GetPluginManager()->GetPluginInfoCollection(PNAMESP_HOSTFORM, PVIEWTYPE_INPLACE_CONTROL, &pObjectArray)); UINT uiCount = 0; RETURN_IF_FAILED(pObjectArray->GetCount(&uiCount)); for (size_t i = 0; i < uiCount; i++) { CComPtr<IPluginInfo> pPluginInfo; RETURN_IF_FAILED(pObjectArray->GetAt(i, __uuidof(IPluginInfo), (LPVOID*)&pPluginInfo)); GUID gId = GUID_NULL; RETURN_IF_FAILED(pPluginInfo->GetId(&gId)); CComPtr<IControl> pControl; RETURN_IF_FAILED(m_pFormManager->OpenForm(gId, &pControl)); } RETURN_IF_FAILED(m_pFormManager->ActivateForm(CLSID_HomeTimeLineControl)); return S_OK; }
NFNetModule::NFNetModule(NFIPluginManager* p) { pPluginManager = p; mnBufferSize = 0; nLastTime = GetPluginManager()->GetNowTime(); m_pNet = NULL; }
void NFCMasterNet_ServerModule::LogGameServer() { if (mnLastLogTime + 10 > GetPluginManager()->GetNowTime()) { return; } mnLastLogTime = GetPluginManager()->GetNowTime(); ////////////////////////////////////////////////////////////////////////// m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), "Begin Log WorldServer Info", ""); NF_SHARE_PTR<ServerData> pGameData = mWorldMap.First(); while (pGameData) { std::ostringstream stream; stream << "Type: " << pGameData->pData->server_type() << " ID: " << pGameData->pData->server_id() << " State: " << NFMsg::EServerState_Name(pGameData->pData->server_state()) << " IP: " << pGameData->pData->server_ip() << " FD: " << pGameData->nFD; m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), stream); pGameData = mWorldMap.Next(); } m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), "End Log WorldServer Info", ""); m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), "Begin Log LoginServer Info", ""); ////////////////////////////////////////////////////////////////////////// pGameData = mLoginMap.First(); while (pGameData) { std::ostringstream stream; stream << "Type: " << pGameData->pData->server_type() << " ID: " << pGameData->pData->server_id() << " State: " << NFMsg::EServerState_Name(pGameData->pData->server_state()) << " IP: " << pGameData->pData->server_ip() << " FD: " << pGameData->nFD; m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), stream); pGameData = mLoginMap.Next(); } m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), "End Log LoginServer Info", ""); }
void NFCWorldNet_ServerModule::LogGameServer() { mnLastCheckTime = GetPluginManager()->GetNowTime(); m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), "--------------------Begin Log GameServer Info", ""); NF_SHARE_PTR<ServerData> pGameData = mGameMap.First(); while (pGameData) { std::ostringstream stream; stream << "Type: " << pGameData->pData->server_type() << " ID: " << pGameData->pData->server_id() << " State: " << NFMsg::EServerState_Name(pGameData->pData->server_state()) << " IP: " << pGameData->pData->server_ip() << " FD: " << pGameData->nFD; m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), stream); pGameData = mGameMap.Next(); } m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), "--------------------End Log GameServer Info", ""); m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), "--------------------Begin Log ProxyServer Info", ""); pGameData = mProxyMap.First(); while (pGameData) { std::ostringstream stream; stream << "Type: " << pGameData->pData->server_type() << " ID: " << pGameData->pData->server_id() << " State: " << NFMsg::EServerState_Name(pGameData->pData->server_state()) << " IP: " << pGameData->pData->server_ip() << " FD: " << pGameData->nFD; m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), stream); pGameData = mProxyMap.Next(); } m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), "--------------------End Log ProxyServer Info", ""); m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), "--------------------Begin Log DBServer Info", ""); pGameData = mDBMap.First(); while (pGameData) { std::ostringstream stream; stream << "Type: " << pGameData->pData->server_type() << " ID: " << pGameData->pData->server_id() << " State: " << NFMsg::EServerState_Name(pGameData->pData->server_state()) << " IP: " << pGameData->pData->server_ip() << " FD: " << pGameData->nFD; m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), stream); pGameData = mDBMap.Next(); } m_pLogModule->LogNormal(NFILogModule::NLL_INFO_NORMAL, NFGUID(), "--------------------End Log DBServer Info", ""); }
bool NFCWorldNet_ServerModule::Execute() { if (mnLastCheckTime + 10 > GetPluginManager()->GetNowTime()) { return true; } SynDBToGame(); SynGameToProxy(); SynWorldToProxy(); SynWorldToGame(); SynWorldToDB(); LogGameServer(); return true; }
STDMETHODIMP CFormsService::OnInitializing(IServiceProvider* pServiceProvider) { CHECK_E_POINTER(pServiceProvider); CComQIPtr<IMainWindow> pWindow = m_pControl; RETURN_IF_FAILED(pWindow->SetFlags(MainWindowFlags::MainWindowNone)); CComPtr<IUnknown> pUnk2; RETURN_IF_FAILED(GetPluginManager()->CreatePluginInstance(PNAMESP_HOSTFORM, PVIEWTYPE_CONTAINERWINDOW, CONTROL_TABCONTAINER, &pUnk2)); CComQIPtr<IContainerControl> pContainerWindow = pUnk2; RETURN_IF_FAILED(pWindow->SetContainerControl(pContainerWindow)); CComQIPtr<IControl> pControl = pContainerWindow; HWND hwnd = 0; RETURN_IF_FAILED(pControl->GetHWND(&hwnd)); LONG lStyle = GetWindowLong(hwnd, GWL_STYLE); lStyle &= ~(WS_BORDER); SetWindowLong(hwnd, GWL_STYLE, lStyle); InvalidateRect(hwnd, NULL, TRUE); return S_OK; }
void MiniLaunchBar::InitializePluginManager() { GetPluginManager()->Initialize(); }
NFCMysqlConnectMgrModule::NFCMysqlConnectMgrModule( NFIPluginManager* p ) { pPluginManager = p; mnLastCheckTime = GetPluginManager()->GetNowTime(); bCanReload = false; }