• 日常搜索
  • 端口查询
  • IP查询
  • 在线工具
  • 搜本站

网狐源码6.6.1.0升级编程手册

原名网狐游戏6.6.1.0升级编程手册(2012版)

1、数据库使用 SQL Server2008 Express

如果附加数据库时, 提示数据库没有访问权限。 只要将数据库文件和日志文件的user 权限改为完全控制即可。

网狐源码6.6.1.0升级编程手册  第1张

编写批处理文件 attachDB.bat 将数据库目录中的所有数据库加载到 SQL Server2008 Express。

网狐源码6.6.1.0升级编程手册  第2张

attachDB.bat:

SQLCMD -S ".\SQLEXPRESS" -U sa -P 123456 -i "Attach.sql"
SQLCMD -S ".\SQLEXPRESS" -U sa -P 123456 -i "用户链接.sql"

Attach.sql:

EXEC sp_attach_db @dbname = N'CxGameTreasuredb',

@filename1 = N'D:\QP\DB\CxGameTreasuredb.mdf',
@filename2 = N'D:\QP\DB\CxGameTreasuredb_1.ldf';

EXEC sp_attach_db @dbname = N'KYGameDB',

@filename1 = N'D:\QP\DB\KYGameDB.mdf',
@filename2 = N'D:\QP\DB\KYGameDB_log.ldf';

EXEC sp_attach_db @dbname = N'News',

@filename1 = N'D:\QP\DB\News.mdf',
@filename2 = N'D:\QP\DB\News_1.ldf';

EXEC sp_attach_db @dbname = N'QPBilliardsDB',

@filename1 = N'D:\QP\DB\QPBilliardsDB.mdf',
@filename2 = N'D:\QP\DB\QPBilliardsDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPcdmjDB',

@filename1 = N'D:\QP\DB\QPcdmjDB.mdf',
@filename2 = N'D:\QP\DB\QPcdmjDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPChessDB',

@filename1 = N'D:\QP\DB\QPChessDB.mdf',
@filename2 = N'D:\QP\DB\QPChessDB_log.ldf';

EXEC sp_attach_db @dbname = N'QP***ChessDB',

@filename1 = N'D:\QP\DB\QP***ChessDB.mdf',
@filename2 = N'D:\QP\DB\QP***ChessDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPGameScoreDB',

@filename1 = N'D:\QP\DB\QPGameScoreDB.mdf',

@filename2 = N'D:\QP\DB\QPGameScoreDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPGameUserDB',

@filename1 = N'D:\QP\DB\QPGameUserDB.mdf',
@filename2 = N'D:\QP\DB\QPGameUserDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPGoBangDB',

@filename1 = N'D:\QP\DB\QPGoBangDB.mdf',
@filename2 = N'D:\QP\DB\QPGoBangDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPGuanPaiDB',

@filename1 = N'D:\QP\DB\QPGuanPaiDB.mdf',
@filename2 = N'D:\QP\DB\QPGuanPaiDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPLandDB',

@filename1 = N'D:\QP\DB\QPLandDB.mdf',
@filename2 = N'D:\QP\DB\QPLandDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPLandCrazyDB',

@filename1 = N'D:\QP\DB\QPLandCrazyDB.mdf',
@filename2 = N'D:\QP\DB\QPLandCrazyDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPLandEXVDDB',

@filename1 = N'D:\QP\DB\QPLandEXVDDB.mdf',
@filename2 = N'D:\QP\DB\QPLandEXVDDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPLandSCDB',

@filename1 = N'D:\QP\DB\QPLandSCDB.mdf',
@filename2 = N'D:\QP\DB\QPLandSCDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPLandVDDB',

@filename1 = N'D:\QP\DB\QPLandVDDB.mdf',
@filename2 = N'D:\QP\DB\QPLandVDDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPLLShowDB',

@filename1 = N'D:\QP\DB\QPLLShowDB.mdf',
@filename2 = N'D:\QP\DB\QPLLShowDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPServerInfoDB',

@filename1 = N'D:\QP\DB\QPServerInfoDB.mdf',
@filename2 = N'D:\QP\DB\QPServerInfoDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPShuangKouBBDB',

@filename1 = N'D:\QP\DB\QPShuangKouBBDB.mdf',
@filename2 = N'D:\QP\DB\QPShuangKouBBDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPShuangKouDB',

@filename1 = N'D:\QP\DB\QPShuangKouDB.mdf',
@filename2 = N'D:\QP\DB\QPShuangKouDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPSparrowDZDB',

@filename1 = N'D:\QP\DB\QPSparrowDZDB.mdf',
@filename2 = N'D:\QP\DB\QPSparrowDZDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPTreasureDB',

@filename1 = N'D:\QP\DB\QPTreasureDB.mdf',
@filename2 = N'D:\QP\DB\QPTreasureDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPUpGradeDB',

@filename1 = N'D:\QP\DB\QPUpGradeDB.mdf',
@filename2 = N'D:\QP\DB\QPUpGradeDB_log.ldf';

EXEC sp_attach_db @dbname = N'QPWeiQiDB',

@filename1 = N'D:\QP\DB\QPWeiQiDB.mdf',
@filename2 = N'D:\QP\DB\QPWeiQiDB_log.ldf';

EXEC sp_attach_db @dbname = N'WHPaoHuZiDB',

@filename1 = N'D:\QP\DB\WHPaoHuZiDB.mdf',
@filename2 = N'D:\QP\DB\WHPaoHuZiDB_log.ldf';

EXEC sp_attach_db @dbname = N'WHSanDaYiDB',

@filename1 = N'D:\QP\DB\WHSanDaYiDB.mdf',
@filename2 = N'D:\QP\DB\WHSanDaYiDB_log.ldf';

EXEC sp_attach_db @dbname = N'WHThreasureDB',

@filename1 = N'D:\QP\DB\WHThreasureDB.mdf',
@filename2 = N'D:\QP\DB\WHThreasureDB_log.ldf';

用户链接.sql

-- 变量定义

DECLARE @DBName VARCHAR(32)
DECLARE @DBUser VARCHAR(32)
DECLARE @DBPassword VARCHAR(32)
DECLARE @DBSourceAddr VARCHAR(32)
DECLARE @LinkServerName VARCHAR(32)

-- 设置变量

SET @LinkServerName='QPGameUserDBLink'
SET @DBSourceAddr='.\SQLEXPRESS'
SET @DBName='QPGameUserDB'

-- 删除连接服务器

IF EXISTS(SELECT SrvName FROM MASTER.DBO.SYSSERVERS WHERE
SrvName=@LinkServerName)
BEGIN
EXEC SP_DROPSERVER @LinkServerName,'DropLogins'
END

-- 建立链接服务器

EXEC SP_ADDLINKEDSERVER
@Server=@LinkServerName,
@SrvProduct=@LinkServerName,
@Provider='SQLOLEDB',
@DataSrc=@DBSourceAddr,
@Location='',
@ProvStr='',
@Catalog=@DBName

-- 用户映射

EXEC SP_ADDLINKEDSRVLOGIN
@RmtSrvName=@LinkServerName,@Useself='true',@LocalLogin=NULL,@RmtUser=NULL,@Rmt
Password=NULL

-- 设置链接服务器

EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName='RPC',@OptValue='true'
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName='RPC OUT',@OptValue='true'
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName='Data
Access',@OptValue='true'
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName='Collation
CompaTible',@OptValue='true'
EXEC SP_SERVEROPTION @Server=@LinkServerName,@OptName='Use Remote
Collation',@OptValue='true'

-- 链接服务器状态

EXEC SP_HELPSERVER @LinkServerName

编写批处理文件 detachDB.bat SQL Server2008 Express 中的所有数据卸载。 如果数据库正在被使用, 请重启 SQL Server2008 服务!

detachDB.bat

SQLCMD -S ".\SQLEXPRESS" -U sa -P 123456 -i "Detach.sql"

Detach.sql

EXEC sp_detach_db 'KYGameDB', 'true';
EXEC sp_detach_db 'CxGameTreasuredb', 'true';
EXEC sp_detach_db 'News', 'true';
EXEC sp_detach_db 'QPBilliardsDB', 'true';
EXEC sp_detach_db 'QPcdmjDB', 'true';
EXEC sp_detach_db 'QPChessDB', 'true';
EXEC sp_detach_db 'QP***ChessDB', 'true';
EXEC sp_detach_db 'QPGameScoreDB', 'true';
EXEC sp_detach_db 'QPGameUserDB', 'true';
EXEC sp_detach_db 'QPGoBangDB', 'true';
EXEC sp_detach_db 'QPGuanPaiDB', 'true';
EXEC sp_detach_db 'QPLandCrazyDB', 'true';
EXEC sp_detach_db 'QPLandDB', 'true';
EXEC sp_detach_db 'QPLandEXVDDB', 'true';
EXEC sp_detach_db 'QPLandSCDB', 'true';
EXEC sp_detach_db 'QPLandVDDB', 'true';
EXEC sp_detach_db 'QPLLShowDB', 'true';
EXEC sp_detach_db 'QPServerInfoDB', 'true';
EXEC sp_detach_db 'QPShuangKouBBDB', 'true';
EXEC sp_detach_db 'QPShuangKouDB', 'true';
EXEC sp_detach_db 'QPSparrowDZDB', 'true';

EXEC sp_detach_db 'QPTreasureDB', 'true';
EXEC sp_detach_db 'QPUpGradeDB', 'true';
EXEC sp_detach_db 'QPWeiQiDB', 'true';
EXEC sp_detach_db 'WHPaoHuZiDB', 'true';
EXEC sp_detach_db 'WHSanDaYiDB', 'true';
EXEC sp_detach_db 'WHThreasureDB', 'true';

2、集成开发环境使用 VS2010

网狐源码6.6.1.0升级编程手册  第3张

部主框架共有 20 个工程。从 VS2003/5 升级到 VS2010 需要做以下修改

Stdafx.h 修改点

#ifndef WINVER// 允许使用特定于 Windows 95 和 Windows NT 4 或更高版本的功能。
#define WINVER 0x0500 // 将此更改为针对于 Windows 98 和 Windows 2000 或更高版本的合适的值。
#endif
#ifndef _WIN32_WINNT // 允许使用特定于 Windows NT 4 或更高版本的功能。
#define _WIN32_WINNT 0x0500 // 将此更改为针对于 Windows 2000 或更高版本的合适的值。
#endif
#ifndef _WIN32_WINDOWS// 允许使用特定于 Windows 98 或更高版本的功能。
#define _WIN32_WINDOWS 0x0510 // 将此更改为针对于 Windows Me 或更高版本的合适的值。
#endif
#ifndef _WIN32_IE// 允许使用特定于 IE 4.0 或更高版本的功能。

#define _WIN32_IE 0x0500 // 将此更改为针对于 IE 5.0 或更高版本的合适的值。
#endif

工程属性修改点:

网狐源码6.6.1.0升级编程手册  第4张

网狐源码6.6.1.0升级编程手册  第5张

Database.cpp 函数SetConnectionInfo修改点

//构造连接字符串
//m_strConnect.Format(TEXT("Provider=SQLOLEDB.1;Password=%s;Persist Security Info=True;UserID=%s;Initial Catalog=%d.%d.%d.%d;Data Source=%s,%ld;"),

// szPassword, szUser, szDBName, a, b, c, d, wPort);
m_strConnect.Format(TEXT("Provider=SQLOLEDB;Driver={SQLServer};Server=.\\SQLEXPRESS;Database=%s;UID=%s;PWD=%s;"),
szDBName, szUser, szPassword);

ServiceLoaderDlg.cpp 函数GetDBConnectInfo修改点

去掉加密处理
//CXOREncrypt::CrevasseData(szDBUser,DBConnectInfo.szDataBaseUser,sizeof(DBConnectInfo.szDataBaseUser));
//CXOREncrypt::CrevasseData(szDBPass,DBConnectInfo.szDataBasePass,sizeof(DBConnectInfo.szDataBasePass));
_tcscpy(DBConnectInfo.szDataBaseUser,szDBUser);
_tcscpy(DBConnectInfo.szDataBasePass,szDBPass)

数据库QPServerInfoDB,表DataBaseInfo的记录修改点

密码设为非加密的

网狐源码6.6.1.0升级编程手册  第6张

3、以德州为例运行整个程序

编译德州程序

设置参考 2:

网狐源码6.6.1.0升级编程手册  第7张

修改版本号为 6,6,1,0:

网狐源码6.6.1.0升级编程手册  第8张

拷贝德州的资源文件

在目录 D:\e\Myproject\QP2012\QP\游戏源码\运行\debug\DZShowHand 下拷贝相关文件

网狐源码6.6.1.0升级编程手册  第9张

启动中心服务器

在目录 D:\e\Myproject\QP2012\QP\游戏源码\运行\debug 下, 双击 CenterServer.exe,
然后单击 参数配置 出现如图界面

网狐源码6.6.1.0升级编程手册  第10张

启动服务

网狐源码6.6.1.0升级编程手册  第11张

启动服务加载器

在目录 D:\e\Myproject\QP2012\QP\游戏源码\运行\debug 下, 双击 ServiceLoader.exe,

网狐源码6.6.1.0升级编程手册  第12张

点击系统配置出现如下界面:

网狐源码6.6.1.0升级编程手册  第13张

请正确填写您的数据库信息与中心服务器的 IP 地址。 点击确认后, 回到初始界面。 再点击创建房间 , 选择德州 DLL 出现如下界面

网狐源码6.6.1.0升级编程手册  第14张

进行如下配置:

网狐源码6.6.1.0升级编程手册  第15张

常规配置:

常规配置只需要配置 房间标示 游戏类型 桌子数目 服务端口 服务器地址 数据库名字(默认不需要配置) 和数据库地址;
1. 房间标识:房间的唯一标示 建议: 四位数以上, 以数字+类型标识组成。 不足四位的以 0 填补。 如 6001;
2. 游戏类型: 游戏的类型 一般类型标示小于 100 的选择金币游戏。 其余选择积分游戏;
3. 桌子数目 .这里填写你在这房间的桌子数.程序会为你计算出这房间最大进入人数.基数为 100.最多请不要超过 96 张桌子每个房间 建议: 48 张桌子;
4. 服务端口: 服务的通讯端口 建议与房间标示配置为一样;
5. 服务地址: 本机公网 IP 地址;
6. 数据库地址: 数据库地址;
7. 视频地址: 一般装在游戏服务器本身。 即本身IP;

非常规配置

1.类型 标示:服务会默认填写 自 己的 类型 标示,与 数据 库 QPServerInfoDB 下 的GameKindItem 表里的 KindID 对应;
2. 站点标示:服务器会默认填写自 己的类型标示,与数据库 QPServerInfoDB 下的GameKindItem 表里的 SortID 对应;
3. 排序标示: 同一游戏的房间排序。 越小越上;
4. 人数容量: 房间可进人数;
5. 最少积分: 进入房间的最少积分;
6. 单元积分: 输赢积分的倍数;
7. 限制积分: 进入房间的最大积分;
8.税收比例: 抽取赢家所得游戏币的比例 5 为 5%;

保存配置

每次新创建房间都需要保存方便下次启动.点击保存后填写保存路径和保存名字,建议保存在默认目录,使用房间的名字为保存名字

点击启动服务:

网狐源码6.6.1.0升级编程手册  第16张

启动登录服务器:

在目录 D:\e\Myproject\QP2012\QP\游戏源码\运行\debug 下, 双击 LogonServer.exe

网狐源码6.6.1.0升级编程手册  第17张

点击参数设置:

网狐源码6.6.1.0升级编程手册  第18张

点击启动服务:

网狐源码6.6.1.0升级编程手册  第19张

启动游戏大厅:

在目录 D:\e\Myproject\QP2012\QP\游戏源码\运行\debug 下, 双击 GamePlaza.exe,

网狐源码6.6.1.0升级编程手册  第20张

申请账号 test1:

网狐源码6.6.1.0升级编程手册  第21张

点击德州房间:

网狐源码6.6.1.0升级编程手册  第22张

等待一会之后显示:

网狐源码6.6.1.0升级编程手册  第23张

选择加入:

网狐源码6.6.1.0升级编程手册  第24张

再启动一个游戏大厅, 申请账号 test2, 重复上述操作后, 显示:

网狐源码6.6.1.0升级编程手册  第25张

可以开始玩了!END!!!


文章目录
  • 1、数据库使用 SQL Server2008 Express
    • attachDB.bat:
    • Attach.sql:
    • 用户链接.sql
    • detachDB.bat
    • Detach.sql
  • 2、集成开发环境使用 VS2010
    • Stdafx.h 修改点
    • 工程属性修改点:
    • Database.cpp 函数SetConnectionInfo修改点
    • ServiceLoaderDlg.cpp 函数GetDBConnectInfo修改点
    • 数据库QPServerInfoDB,表DataBaseInfo的记录修改点
  • 3、以德州为例运行整个程序
    • 编译德州程序
    • 拷贝德州的资源文件
    • 启动中心服务器
    • 启动服务加载器
    • 常规配置:
    • 非常规配置
    • 保存配置
    • 点击启动服务:
    • 启动登录服务器:
    • 启动游戏大厅:
  • 发表评论