找回密码
 注册
搜索
查看: 5374|回复: 6

2.5版服务器端下次更新:将考虑使用两个DLL文件

  [复制链接]
发表于 2005-12-15 17:33:39 | 显示全部楼层 |阅读模式
因目前pChat的用户数量不断增多,预计将来大约会有1/10以上的用户可能会采用现有社区的帐号来结合pChat平台的游戏。* M2 X6 S2 O% ~8 u' M8 n/ ^0 V
而目前pChat平台的游戏主要是采用MySQL数据库并且一般是独立玩家帐号数据的形式。不方便这些用户与自己的社区帐号进行结合。0 h" ?) {' }9 `4 a

% y: c6 C# ]: S8 o# B3 P9 U2 f" P因此拟在下一版本的pChat Server中采用两个DLL文件的形式。
6 @6 s6 x9 L" U. e! H$ y一个用于OnUserLogin()接口的调用,6 [. N8 S" O1 J+ T+ R4 ^
另一个用于其他接口的调用。
* \4 }( |3 g: Q- ^& O8 `1 l9 J1 ]3 j) g7 }* B0 n0 a
这样,对于普通的采用与现有社区结合结合方式的用户来说,就可以非常方便的对pChat平台的游戏进行升级。基本上可以不用修改游戏程序了。9 y6 I9 a) c* h2 E; n" Z  k
, _4 i) g# ]; |* |+ p
欢迎大家发表自己的意见与建议。
发表于 2005-12-15 19:23:11 | 显示全部楼层
好功能!不过,如果能登陆江湖后,再登录论坛不需要再输入一遍用户名和密码,那该多好啊!!
回复

使用道具 举报

 楼主| 发表于 2005-12-15 19:37:45 | 显示全部楼层
下面是引用dede于2005-12-15 19:23发表的:# {- ^, _" V( C9 o4 S
好功能!不过,如果能登陆江湖后,再登录论坛不需要再输入一遍用户名和密码,那该多好啊!!
  y# |- \6 H% {4 Z5 M* n
实现是可以实现的,只不过已经超出这里讨论的范围了。
回复

使用道具 举报

发表于 2005-12-16 08:12:32 | 显示全部楼层
没有啊!既然要让用户方便整合,自然这是一道不可否定的墙!
回复

使用道具 举报

发表于 2005-12-16 08:45:35 | 显示全部楼层
不赞成采用两个DLL& f, e7 t' I/ \# O; M

* A/ O# n9 F8 F0 R' ?我的实现方法是:在pchat目录下建立了一个users.ini文件,里面记录的是:
! ]$ {) U) W. l* n# X0 k  D;*******************************************************************( n$ `; C5 ]" X! h0 u# T
; 有效用户表个数,最小为1,即PCHAT自代的用户表
; I  L+ I/ R7 C, s[pub]
3 g9 b1 x! L  R4 w/ W1 eMax_UserTable = 3         ;最小为1,基本用户表, L6 Z& P4 a, y* c, ^3 s+ x. ?

8 O9 d$ C( p/ Q1 q$ R! @;1号用户表+ B$ B4 e$ h9 o7 Z+ e
[1]
) W0 P0 j- Q+ w( S3 W+ ^+ Y;用户ID起始序号3 i. \7 Z( X( u0 B( ~
UserId_Head = 0
: |! j! _2 W# q. b* Q  y;dsn连接+ ]2 U" _) i/ D$ m1 s4 \% k$ C
DSN = dsn=pchat
8 Z3 N. P$ }. [;字段定义; X; K" S. ]: n( c
UserId = uin  T8 i. W% A) }# I
UserName = nick' B9 a$ w/ o% q4 r
UserPassword = passwd" d' P1 J- Z% X0 H4 Y/ V
UserSex = gender$ Q% R. r' [3 t  u! Z8 u5 ~

0 A$ q! V  f+ q  ~7 V[2]' g$ J& T. S4 p8 b2 y
UserId_Head = 200000000
9 ~: Y& Y. E+ j2 O1 FDSN = dsn=fywww
5 G$ c' v% ^7 mUserId = userid9 t9 U1 C( y7 G0 A4 S% R% q
UserName = username* w1 U4 k; i9 u5 x! p/ T8 p
UserPassword = userpassword
# |- W% ?( N8 m6 `* H6 l0 K. }' KUserSex = usersex5 q" N  P' z7 M: \0 q
- i( Z3 S! Z5 I) n/ U0 w- C" W" ?( R
[3]4 [+ [2 f5 N. s6 ]7 K9 ^% k5 z
UserId_Head = 300000000
! u; Z- k& l. l. F6 pDSN = dsn=fy
3 U3 f$ W% E- R5 E6 {UserId = uin
, o& h. i/ I8 EUserName = nick
/ A! H4 ]+ {7 m6 g$ x* fUserPassword = passwd* P9 ~5 U3 {1 D
UserSex = gender" r2 s  B* z  C
- d. V& n' P* M4 `+ p* d
如果是单用户表,建议将以上某段定义放到pchat_ini中即可
# ?* ?) r& }6 F4 y) F* |" k至于用户ID和性别,很多网站的数据库都支持,如果不支持,只需要在DLL中加一条转换语句。
; W& \3 }/ l, X" o9 y$ S
8 x0 G- L" P. o  `& V3 s* f# Mdede的用户登陆问题,我的江湖已经做了,用户在江湖中选择充值后,直接转ASP网页选择充值金额、转银行支付、增加江湖充值金额。如果是论坛,更简单。整个无须再输入密码。* m: J4 I+ h1 [2 Q
实现过程:在江湖中加一条转论坛或其他指令,指令执行函数先对用户、时间、IP等进行记录,并生成加密串,然后带用户ID和加密串转ASP程序,在ASP程序中检查用户ID和加密串的合法性,以及时间是否超时(如最大10秒),通过的话,就认可认证,模拟论坛登陆成功操作。
回复

使用道具 举报

 楼主| 发表于 2005-12-16 13:53:26 | 显示全部楼层
下面是引用calmhe于2005-12-16 08:45发表的:7 K$ R4 [" S6 T7 Q
不赞成采用两个DLL( h8 g' J. ~' }. |

5 n6 e, ^! k2 O& @+ [我的实现方法是:在pchat目录下建立了一个users.ini文件,里面记录的是:  b" b4 d$ _* f
;*******************************************************************) q$ H! M9 Q; ~# H
; 有效用户表个数,最小为1,即PCHAT自代的用户表2 U' f. x7 @9 J
.......

, P" T; p! G% k2 l+ u双DLL与你的这个功能没任何影响,可以将两个DLL的定义都指向同一个DLL文件。
回复

使用道具 举报

 楼主| 发表于 2005-12-18 14:28:21 | 显示全部楼层
原来的服务器端INI中的 “DllFileName = DLL文件名”改为:
: l5 i) ?$ j. T6 E% g5 OAuthDllFile = 登录验证的DLL文件名: ^1 K$ \0 i5 v. f5 i" K( G$ J) W
MainDllFile = 游戏内容的DLL文件名

0 F, |# N. e$ Z! @/ V
+ T1 e6 ^! Q- E# T: y& `其中的 AuthDllFile 指定的DLL只使用OnUserLogin()接口函数,其他内容在 MainDllFile 指定的DLL中调用。6 l* S- Q; e# A
如果使用的是默认的数据库表和字段结构,两个DLL可以是一样的(也就是说和以前没什么区别)。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|宁德市腾云网络科技有限公司 ( 闽ICP备2022007940号-5|闽公网安备 35092202000206号 )

GMT+8, 2026-5-2 12:41 , Processed in 0.020487 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表