当前位置: 首页>>代码示例>>C++>>正文


C++ CDPSrvr::StartServer方法代码示例

本文整理汇总了C++中CDPSrvr::StartServer方法的典型用法代码示例。如果您正苦于以下问题:C++ CDPSrvr::StartServer方法的具体用法?C++ CDPSrvr::StartServer怎么用?C++ CDPSrvr::StartServer使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CDPSrvr的用法示例。


在下文中一共展示了CDPSrvr::StartServer方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: Init

BOOL CRunObject::Init( void )
{
    if( LoadAIScript() == FALSE )
        return FALSE;

// 
    m_hClose	= CreateEvent( NULL, FALSE, FALSE, NULL );
    DWORD dwThreadId;
    m_hRunObject	= chBEGINTHREADEX( NULL, 0, _Run, (LPVOID)this, 0, &dwThreadId ); 
//
    /*
#ifdef __GIFTBOX0213
    if( !CDPAccountClient::GetInstance()->ConnectToServer( s_szAccountAddr, PN_ACCOUNTSRVR_2, TRUE ) )
    {
        OutputDebugString( "Can't connect to account server." );
        return FALSE;
    }
    CGiftboxMan::GetInstance()->Upload( CDPAccountClient::GetInstance() );
#endif	// __GIFTBOX0213
    */
    if( !g_DPSrvr.StartServer( (u_short)( g_uKey + PN_WORLDSRVR ), TRUE ) )
    {
        OutputDebugString( "Can't start server." );
        return FALSE;
    }
    if( !g_DPCoreClient.Run( g_szCoreAddr, PN_CORESRVR + 0, g_uKey ) )
    {
        OutputDebugString( "Can't connect to core server." );
        return FALSE;
    }
    if( !g_dpDBClient.ConnectToServer( g_szDBAddr, PN_DBSRVR_1, TRUE ) )
    {
        OutputDebugString( "Can't connect to database server." );
        return FALSE;
    }
    if ( g_eLocal.GetState( ENABLE_GUILD_INVENTORY ) )
        g_dpDBClient.SendQueryGuildBank();
    if( g_eLocal.GetState( EVE_WORMON ) )
        g_dpDBClient.SendQueryGuildQuest();

#if __VER >= 13 // __RAINBOW_RACE
    if( g_eLocal.GetState( EVE_RAINBOWRACE ) )
        g_dpDBClient.SendRainbowRaceReqLoad();
#endif // __RAINBOW_RACE

#ifdef __INVALID_LOGIN_0320
    g_dpDBClient.CalluspXXXMultiServer( g_uIdofMulti, NULL );
#else	// __INVALID_LOGIN_0320
    g_dpDBClient.CalluspXXXMultiServer( g_uIdofMulti, 0 );
#endif	// __INVALID_LOGIN_0320
    if( !CXMasEvent::GetInstance()->LoadScript( "spevent.txt" ) )
    {
        OutputDebugString( "can't read spevent.txt" );
        return FALSE;
    }
    if( g_eLocal.GetState( EVE_SCHOOL ) )
    {
#ifdef __IDC
        if( !CEveSchool::GetInstance()->LoadPos( "..\\script\\school.txt" ) )	//
#else	// __IDC
        if( !CEveSchool::GetInstance()->LoadPos( "school.txt" ) )
#endif	// __IDC
        {
            OutputDebugString( "school.txt not found" );
            return FALSE;
        }
    }
    if( g_eLocal.GetState( EVE_GUILDCOMBAT ) && !g_GuildCombatMng.LoadScript( "GuildCombat.txt" ) )
    {
        OutputDebugString( "GuildCombat.txt not found" );
        return FALSE;
    }
#if __VER >= 12 // __ITEMCREATEMON_S0602
#if __VER < 12 // __NEW_ITEMCREATEMON_SERVER
    if( !g_CreateMonster.LoadScript( "CreateMonster.txt" ) )
    {
        OutputDebugString( "CreateMonster.txt Not Found!" );
        return FALSE;
    }
#endif // __NEW_ITEMCREATEMON_SERVER
#endif // __ITEMCREATEMON_S0602

    return TRUE;
}
开发者ID:KerwinMa,项目名称:AerothFlyffSource,代码行数:84,代码来源:ThreadMng.cpp

示例2: InitInstance

BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
#ifndef _DEBUG
//   InitEH();
#endif	// _DEBUG

#ifdef __BILLING0712
    if( ::CreateBillingMgr() == FALSE )		// CreateWindow전에 호출되어야 한다.
        return FALSE;
#endif

    HWND hWnd;
    hInst = hInstance; // Store instance handle in our global variable
    hMainWnd = hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
        CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);	
    if( !hWnd )
        return FALSE;
    
    HMENU hMenu		= GetMenu( hWnd );
    CheckMenuItem( hMenu, IDM_OPT_INTERNAL, MF_CHECKED );
    EnableMenuItem( hMenu, IDM_OPT_INTERNAL, MF_DISABLED | MF_GRAYED );
    g_dpSrvr.m_bCheckAddr	= true;

    int x = 400, y = 416;
    SetWindowPos( hWnd, NULL, x, y, 400, 416, SWP_SHOWWINDOW );

    LOAD_WS2_32_DLL;

    ::srand( timeGetTime() );

    // Script함수의 호출순서가 중요하다. (menu -> script -> createdbworker)
    if( Script( "AccountServer.ini" ) == FALSE )	
        return FALSE;

#ifdef __SECURITY_0628
    LoadResAuth( "Flyff.b" );
#endif	// __SECURITY_0628

//	if( CQuery::EnableConnectionPooling() )
//		OutputDebugString( "EnableConnectionPooling\n" );

    g_DbManager.CreateDbWorkers();
    
    if( g_dpSrvr.LoadAddrPmttd( "pmttd.ini" ) == false )
    {
        TRACE("LoadAddrPmttd false\n");
    }	
    
    if( g_dpSrvr.LoadIPCut( "IPCut.ini" ) == FALSE )
    {
        TRACE( "LoadIPCut FALSE\n" );
    }
    
    g_MyTrace.Initialize( hWnd, "SquireD", RGB( 0x00, 0x00, 0x00 ), RGB( 0xff, 0xff, 0xff ) );
    CTime time	= CTime::GetCurrentTime();
    g_MyTrace.Add( 0, FALSE, "%s", time.Format( "%Y/%m/%d %H:%M:%S" ) );
    g_MyTrace.AddLine( '\0' );
    
    if( FALSE == g_dpSrvr.StartServer( PN_ACCOUNTSRVR_0 )
        || FALSE == g_dpDbSrvr.StartServer( PN_ACCOUNTSRVR_1 )
        || FALSE == CDPAdbill::GetInstance()->StartServer( PN_ADBILL )
        /*
#ifdef __GIFTBOX0213
        || FALSE == CDPWldSrvr::GetInstance()->StartServer( PN_ACCOUNTSRVR_2 )
#endif	// __GIFTBOX0213
        */
         )
    {
        AfxMessageBox( "Unable to start server" );
        return FALSE;
    }

#ifdef __BILLING0712
    if( GetBillingMgr()->Init( hWnd ) == false )
        return FALSE;
#endif

    SetTimer( hWnd, IDT_SENDPLAYERCOUNT, 1000 * 60, NULL );
    SetTimer( hWnd, IDT_TIME_CHECKADDR, 1000 * 30, NULL );
    if( ::GetLanguage() == LANG_THA )
        SetTimer( hWnd, IDT_PREVENT_EXCESS, 1000 * 60, NULL );

/*
#ifdef __S0114_RELOADPRO
    SetTimer( hWnd, IDT_RELOAD_PROJECT, 1000 * 30, NULL );
#endif // __S0114_RELOADPRO
*/
    SetTimer( hWnd, IDT_BUYING_INFO, 500, NULL );

    if( FALSE == g_DbManager.AllOff() )
        return FALSE;

    ShowWindow(hWnd, nCmdShow);
    UpdateWindow(hWnd);	
    return TRUE;
}
开发者ID:iceberry,项目名称:flyffsf,代码行数:96,代码来源:AccountServer.cpp


注:本文中的CDPSrvr::StartServer方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。