找回密码
 注册
查看: 5613|回复: 6

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

  [复制链接]
发表于 2005-12-15 17:33:39 | 显示全部楼层 |阅读模式
因目前pChat的用户数量不断增多,预计将来大约会有1/10以上的用户可能会采用现有社区的帐号来结合pChat平台的游戏。+ U2 q+ _3 O* D6 g' ^" n1 H5 f
而目前pChat平台的游戏主要是采用MySQL数据库并且一般是独立玩家帐号数据的形式。不方便这些用户与自己的社区帐号进行结合。
& J& L3 B/ ~! c* H! N$ w0 s7 I" f2 b, T9 @1 v
因此拟在下一版本的pChat Server中采用两个DLL文件的形式。
0 B5 E3 }; j7 T( a3 V# o# F一个用于OnUserLogin()接口的调用,# B4 w/ p4 A4 P% Z" _+ C
另一个用于其他接口的调用。+ P6 P* k7 Z" S4 K) D2 i. f4 Q5 a
% V# ^% E; T2 M1 _
这样,对于普通的采用与现有社区结合结合方式的用户来说,就可以非常方便的对pChat平台的游戏进行升级。基本上可以不用修改游戏程序了。
* k7 Z+ V+ v5 S3 s
' m3 e1 _7 i8 r8 L欢迎大家发表自己的意见与建议。
发表于 2005-12-15 19:23:11 | 显示全部楼层
好功能!不过,如果能登陆江湖后,再登录论坛不需要再输入一遍用户名和密码,那该多好啊!!
回复

使用道具 举报

 楼主| 发表于 2005-12-15 19:37:45 | 显示全部楼层
下面是引用dede于2005-12-15 19:23发表的:
  z3 [) g7 {6 V# t5 g3 W# M1 ^9 l好功能!不过,如果能登陆江湖后,再登录论坛不需要再输入一遍用户名和密码,那该多好啊!!

: T( X+ P" w4 f* `$ h2 z* l: j0 ~实现是可以实现的,只不过已经超出这里讨论的范围了。
回复

使用道具 举报

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

使用道具 举报

发表于 2005-12-16 08:45:35 | 显示全部楼层
不赞成采用两个DLL
# D& ]: ~( B# k6 M# n  S7 C! A! ~/ O  E
我的实现方法是:在pchat目录下建立了一个users.ini文件,里面记录的是:
' L, |7 @; a( N. D; B;*******************************************************************
) K0 t: d5 f. c. `- s& S% n6 g, T; 有效用户表个数,最小为1,即PCHAT自代的用户表4 F( ~, J/ k9 t8 S5 J1 ~
[pub]; A$ e9 B1 E) J' k8 p
Max_UserTable = 3         ;最小为1,基本用户表7 g! |4 ~: H# y, v

" O9 P/ X: i9 L;1号用户表, m, i! g0 _( U3 X3 U
[1]
& t. c0 J( h; |9 o3 b, p. r, X% E;用户ID起始序号
8 j9 l% R  B( }8 ^! oUserId_Head = 0
& i0 t. {% X/ G1 s" l5 X1 f6 F;dsn连接
2 ?+ @: j) J# \" X0 ?4 H+ YDSN = dsn=pchat
5 d5 l5 W! j1 P" J! ^;字段定义- g# X; ]  Y. J2 M
UserId = uin
* H4 V. q4 a9 p1 TUserName = nick
  @/ _- r  [  z( @( i' B# P+ t* n- CUserPassword = passwd
! ]$ t% F6 O, H' P3 \( o% W8 IUserSex = gender
: }$ R, {/ n1 A& i) s/ M
# l3 ~6 ~* n2 E6 W1 e3 {6 _[2]
5 b# M2 a3 B+ ~: q4 g+ T2 T8 PUserId_Head = 200000000
4 m5 O9 _% ^9 i" Q8 I6 `* nDSN = dsn=fywww
7 Y" R' t2 s+ i3 D  XUserId = userid- F0 [, k) D* D  m& ~
UserName = username
# c/ ~' E: A$ i/ B3 VUserPassword = userpassword2 z2 o9 H- r1 F0 Q+ e, U
UserSex = usersex3 @& G1 c6 S: e+ ^& X5 }/ R1 s

( v% d$ {9 x- l& i9 N3 V[3]0 m9 Q& \( q2 o4 w
UserId_Head = 300000000
- N8 u, o4 o) Z& y: UDSN = dsn=fy
7 |, J. Y) D9 T6 s1 nUserId = uin" G! G  K! p7 p! ?1 s6 o
UserName = nick, p  \( _, X$ f  [0 T* m+ r
UserPassword = passwd; `1 A1 N$ L* F# b
UserSex = gender
9 K0 F( v- X0 n- v+ r( t+ w
, _2 Q/ W8 p& ~# A如果是单用户表,建议将以上某段定义放到pchat_ini中即可
& B7 d3 t! }& \4 q, A$ g& Z( ], ]至于用户ID和性别,很多网站的数据库都支持,如果不支持,只需要在DLL中加一条转换语句。
2 U; U, L+ t" n$ F& P" _8 X* g$ Z  x  k9 W2 W
dede的用户登陆问题,我的江湖已经做了,用户在江湖中选择充值后,直接转ASP网页选择充值金额、转银行支付、增加江湖充值金额。如果是论坛,更简单。整个无须再输入密码。
6 S" g5 I+ Q* W8 K# r2 `. ^实现过程:在江湖中加一条转论坛或其他指令,指令执行函数先对用户、时间、IP等进行记录,并生成加密串,然后带用户ID和加密串转ASP程序,在ASP程序中检查用户ID和加密串的合法性,以及时间是否超时(如最大10秒),通过的话,就认可认证,模拟论坛登陆成功操作。
回复

使用道具 举报

 楼主| 发表于 2005-12-16 13:53:26 | 显示全部楼层
下面是引用calmhe于2005-12-16 08:45发表的:. U2 K- J1 o; g- v
不赞成采用两个DLL
( @& \. i! `! d8 c* m2 o7 _3 j; H$ L
我的实现方法是:在pchat目录下建立了一个users.ini文件,里面记录的是:7 n9 B7 {- h1 ~% l6 @9 {& S' F
;*******************************************************************
& d# B: a% f, ]3 K; 有效用户表个数,最小为1,即PCHAT自代的用户表
  ]% |" k* d4 c- i.......
' ]# x5 K; S! k8 w; N) g
双DLL与你的这个功能没任何影响,可以将两个DLL的定义都指向同一个DLL文件。
回复

使用道具 举报

 楼主| 发表于 2005-12-18 14:28:21 | 显示全部楼层
原来的服务器端INI中的 “DllFileName = DLL文件名”改为:* |  \0 n7 S! E
AuthDllFile = 登录验证的DLL文件名
9 Y  g- ]4 F2 G$ U) gMainDllFile = 游戏内容的DLL文件名

3 a  D% V5 Z; x2 {# t) G5 ?6 B
0 ^: k% ^' w. P9 n: k其中的 AuthDllFile 指定的DLL只使用OnUserLogin()接口函数,其他内容在 MainDllFile 指定的DLL中调用。: r+ b' w7 m0 g4 y
如果使用的是默认的数据库表和字段结构,两个DLL可以是一样的(也就是说和以前没什么区别)。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-10-2 08:42 , Processed in 0.018900 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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