/* Copyright (c) 2002-2012 Croteam Ltd. This program is free software; you can redistribute it and/or modify it under the terms of version 2 of the GNU General Public License as published by the Free Software Foundation This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ // RCon.cpp : Defines the class behaviors for the application. // #include "stdafx.h" #include "RCon.h" #include "RConDlg.h" #ifdef _DEBUG #undef new #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CRConApp BEGIN_MESSAGE_MAP(CRConApp, CWinApp) //{{AFX_MSG_MAP(CRConApp) // NOTE - the ClassWizard will add and remove mapping macros here. // DO NOT EDIT what you see in these blocks of generated code! //}}AFX_MSG ON_COMMAND(ID_HELP, CWinApp::OnHelp) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CRConApp construction CRConApp::CRConApp() { // TODO: add construction code here, // Place all significant initialization in InitInstance } ///////////////////////////////////////////////////////////////////////////// // The one and only CRConApp object CRConApp theApp; ///////////////////////////////////////////////////////////////////////////// // CRConApp initialization BOOL CRConApp::SubInitInstance() { // initialize engine SE_InitEngine( "Serious Sam"); CTString strCmdLine = CStringA(m_lpCmdLine); char strHost[80], strPass[80]; strHost[0] = 0; strPass[0] = 0; ULONG ulPort; strCmdLine.ScanF("%80s %u \"%80[^\"]\"", strHost, &ulPort, strPass); CNetworkProvider np; np.np_Description = "TCP/IP Client"; _pNetwork->StartProvider_t(np); m_ulHost = StringToAddress(strHost); m_uwPort = ulPort; m_ulCode = rand()*rand(); m_strPass = strPass; CRConDlg dlg; m_pMainWnd = &dlg; dlg.m_strLog = (const char*)CTString(0, "Serious Sam RCON v1.0\r\nServer: %s:%d\r\nReady for commands...\r\n", strHost, ulPort); int nResponse = dlg.DoModal(); // Since the dialog has been closed, return FALSE so that we exit the // application, rather than start the application's message pump. return FALSE; } BOOL CRConApp::InitInstance() { BOOL bResult; CTSTREAM_BEGIN { bResult = SubInitInstance(); } CTSTREAM_END; return bResult; } void MinimizeApp(void) { theApp.m_pMainWnd->ShowWindow(SW_SHOWMINIMIZED); // theApp.m_pMainWnd->ShowWindow(SW_HIDE); } void RestoreApp(void) { theApp.m_pMainWnd->EnableWindow(TRUE); theApp.m_pMainWnd->SetActiveWindow(); theApp.m_pMainWnd->ShowWindow(SW_SHOW); theApp.m_pMainWnd->SetFocus(); theApp.m_pMainWnd->SetForegroundWindow(); }