#include "StdAfx.h"
#include "Resource.h"
#include "TableFrameSink.h"
#include "GameServiceManager.h"
//////////////////////////////////////////////////////////////////////////////////
#define _DEBUG1
//机器定义
#ifndef _DEBUG
#define ANDROID_SERVICE_DLL_NAME TEXT("LandAndroidService.dll") //组件名字
#else
#define ANDROID_SERVICE_DLL_NAME TEXT("LandAndroidServiceD.dll") //组件名字
#endif
//////////////////////////////////////////////////////////////////////////////////
//构造函数
CGameServiceManager::CGameServiceManager()
{
#ifdef _DEBUG1
AllocConsole();
freopen("CONOUT$","w",stdout);
freopen("CONOUT$","w",stderr);
freopen("CONIN$","r",stdin);
#endif
//控件变量
m_hDllInstance=NULL;
//内核属性
m_GameServiceAttrib.wKindID=KIND_ID;
m_GameServiceAttrib.wChairCount=GAME_PLAYER;
m_GameServiceAttrib.wSupporType=(GAME_GENRE_GOLD|GAME_GENRE_SCORE|GAME_GENRE_MATCH|GAME_GENRE_EDUCATE);
//功能标志
m_GameServiceAttrib.cbDynamicJoin=FALSE;
m_GameServiceAttrib.cbAndroidUser=TRUE;
m_GameServiceAttrib.cbOffLineTrustee=FALSE;
//服务属性
m_GameServiceAttrib.dwServerVersion=VERSION_SERVER;
m_GameServiceAttrib.dwClientVersion=VERSION_CLIENT;
lstrcpyn(m_GameServiceAttrib.szGameName,GAME_NAME,CountArray(m_GameServiceAttrib.szGameName));
lstrcpyn(m_GameServiceAttrib.szDataBaseName,TEXT("QPTreasureDB"),CountArray(m_GameServiceAttrib.szDataBaseName));//QPLandDB
lstrcpyn(m_GameServiceAttrib.szClientEXEName,TEXT("Land.EXE"),CountArray(m_GameServiceAttrib.szClientEXEName));//Land
lstrcpyn(m_GameServiceAttrib.szServerDLLName,TEXT("LandServer.DLL"),CountArray(m_GameServiceAttrib.szServerDLLName));
return;
}
//析构函数
CGameServiceManager::~CGameServiceManager()
{
//释放 DLL
if (m_hDllInstance!=NULL)
{
AfxFreeLibrary(m_hDllInstance);
m_hDllInstance=NULL;
}
#ifdef _DEBUG1
FreeConsole();
#endif
return;
}
//接口查询
VOID * CGameServiceManager::QueryInterface(REFGUID Guid, DWORD dwQueryVer)
{
printf("Manager查询接口\n");
QUERYINTERFACE(IGameServiceManager,Guid,dwQueryVer);
QUERYINTERFACE(IGameServiceCustomRule,Guid,dwQueryVer);
QUERYINTERFACE_IUNKNOWNEX(IGameServiceManager,Guid,dwQueryVer);
return NULL;
}
//创建桌子
VOID * CGameServiceManager::CreateTableFrameSink(REFGUID Guid, DWORD dwQueryVer)
{
printf("Manager创建桌子\n");
//变量定义
CTableFrameSink * pTableFrameSink=NULL;
//建立对象
pTableFrameSink=new CTableFrameSink();
if (pTableFrameSink==NULL) printf("创建失败\n");
//查询接口
VOID * pObject=pTableFrameSink->QueryInterface(Guid,dwQueryVer);
if (pObject==NULL) printf("查询接口失败\n");
return pObject;
//删除对象
SafeDelete(pTableFrameSink);
return NULL;
}
//创建机器
VOID * CGameServiceManager::CreateAndroidUserItemSink(REFGUID Guid, DWORD dwQueryVer)
{
try
{
//创建组件
if( m_AndroidServiceHelper.GetInterface() == NULL )
{
m_AndroidServiceHelper.SetModuleCreateInfo(ANDROID_SERVICE_DLL_NAME,"CreateGameServiceManager");
if( !m_AndroidServiceHelper.CreateInstance() ) throw 0;
}
//创建机器人
VOID *pAndroidObject = m_AndroidServiceHelper->CreateAndroidUserItemSink(Guid,dwQueryVer);
if( pAndroidObject == NULL ) throw TEXT("创建机器人失败");
return pAndroidObject;
}
catch(...) {}
return NULL;
}
//创建数据
VOID * CGameServiceManager::CreateGameDataBaseEngineSink(REFGUID Guid, DWORD dwQueryVer)
{
printf("Manager创建数据\n");
return NULL;
}
//组件属性
bool CGameServiceManager::GetServiceAttrib(tagGameServiceAttrib & GameServiceAttrib)
{
printf("Manager组件属性\n");
//设置变量
GameServiceAttrib=m_GameServiceAttrib;
return true;
}
//调整参数
bool CGameServiceManager::RectifyParameter(tagGameServiceOption & GameServiceOption)
{
printf("Manager调整参数\n");
return true;
}
//获取配置
bool CGameServiceManager::SaveCustomRule(LPBYTE pcbCustomRule, WORD wCustonSize)
{
printf("Manager获取配置\n");
return true;
}
//默认配置
bool CGameServiceManager::DefaultCustomRule(LPBYTE pcbCustomRule, WORD wCustonSize)
{
printf("Manager默认配置\n");
return true;
}
//创建窗口
HWND CGameServiceManager::CreateCustomRule(CWnd * pParentWnd, CRect rcCreate, LPBYTE pcbCustomRule, WORD wCustonSize)
{
printf("Manager创建窗口\n");
//设置资源
AfxSetResourceHandle(GetModuleHandle(m_GameServiceAttrib.szServerDLLName));
AfxSetResourceHandle(GetModuleHandle(NULL));
return NULL;
}
//////////////////////////////////////////////////////////////////////////////////
//建立对象函数
extern "C" __declspec(dllexport) VOID * CreateGameServiceManager(const GUID & Guid, DWORD dwInterfaceVer)
{
printf("创建Manager对象\n");
static CGameServiceManager GameServiceManager;
return GameServiceManager.QueryInterface(Guid,dwInterfaceVer);
}
//////////////////////////////////////////////////////////////////////////////////
没有合适的资源?快使用搜索试试~ 我知道了~
网狐平台万能服务器源代码
共55个文件
obj:11个
pch:5个
h:5个
3星 · 超过75%的资源 需积分: 34 126 下载量 133 浏览量
2015-06-06
14:13:50
上传
评论 3
收藏 35.62MB ZIP 举报
温馨提示
自己编写的一个简单的网狐服务器,只需要修改所服务的游戏信息就可以开启服务,剩下的服务器与游戏交互要自己编写了,适合初学者。
资源推荐
资源详情
资源评论
收起资源包目录
服务器模板.zip (55个子文件)
服务器模板
消息定义
CMD_Game.h 7KB
dll
LandServer.dll 22KB
游戏服务器
GameServiceManager.h 2KB
GameServer.rc 6KB
resource.h 869B
Debug
TableFrameSink.obj 167KB
Stdafx.obj 416KB
flash.tlh 22KB
BuildLog.htm 2KB
GameServer.res 9KB
LandServer.pch 22.38MB
GameServer.obj 147KB
msado15.tli 74KB
flash.tli 22KB
msado15.tlh 98KB
vc70.pdb 1.48MB
vc70.idb 1.28MB
GameServiceManager.obj 187KB
GameServiceManager.cpp 5KB
GameServer.aps 28KB
TableFrameSink.h 4KB
GameServer.vcproj 9KB
GameServer.cpp 681B
Stdafx.cpp 141B
GameServer.sln 1KB
Release_Unicode
TableFrameSink.obj 117KB
Server.pch 16.81MB
GameLogic.obj 108KB
Stdafx.obj 368KB
服务器模板.pdb 2.92MB
flash.tlh 22KB
BuildLog.htm 2KB
游戏服务器.pdb 2.92MB
GameServer.res 9KB
GameServer.lib 2KB
DlgCustomRule.obj 118KB
LandServer.pch 22.63MB
GameServer.obj 98KB
msado15.tli 74KB
flash.tli 22KB
GameServer.exp 693B
HistoryScore.obj 98KB
msado15.tlh 98KB
vc70.pdb 1.5MB
vc70.idb 723KB
ServerItem.pch 22.63MB
GameServiceManager.obj 133KB
Service.pch 22.88MB
GameServer.ncb 91KB
GameServer.def 108B
Res
GameServer.rc2 377B
GameClient.ico 7KB
TableFrameSink.cpp 3KB
Stdafx.h 1KB
GameServer.suo 11KB
共 55 条
- 1
资源评论
- yuhaishun992017-04-17资源不错, 确实能学到许多知识
- qqw022017-02-03没说的,很普通,没用
- ltf9162017-07-10感觉没多大作用,看看还是可以的
- logens2017-06-29可以学习借鉴一下,对我来说有点用吧
- jamssap2017-04-26感觉一般吧,已经很过时了
左右...
- 粉丝: 52
- 资源: 9
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功