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

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

  [复制链接]
发表于 2005-12-15 17:33:39 | 显示全部楼层 |阅读模式
因目前pChat的用户数量不断增多,预计将来大约会有1/10以上的用户可能会采用现有社区的帐号来结合pChat平台的游戏。/ W2 A: a1 @+ H1 |2 n/ K# E2 ^' x
而目前pChat平台的游戏主要是采用MySQL数据库并且一般是独立玩家帐号数据的形式。不方便这些用户与自己的社区帐号进行结合。
+ @0 z/ p$ w3 ?. |) Y: g
# C1 r, H' k& P6 T) A: t, u因此拟在下一版本的pChat Server中采用两个DLL文件的形式。. P' ?! c% n) p3 |, G0 R- m
一个用于OnUserLogin()接口的调用,
4 H( D" m3 ~  d2 ]" I1 L" ~另一个用于其他接口的调用。% ~3 M1 [# c; @9 @- O" D+ b  _
% t# h( Z3 _2 F; L/ W
这样,对于普通的采用与现有社区结合结合方式的用户来说,就可以非常方便的对pChat平台的游戏进行升级。基本上可以不用修改游戏程序了。
1 s3 F) t, [6 n1 `# _. q0 `# I8 Z  k' i0 k: T  n, z0 M9 B
欢迎大家发表自己的意见与建议。
发表于 2005-12-15 19:23:11 | 显示全部楼层
好功能!不过,如果能登陆江湖后,再登录论坛不需要再输入一遍用户名和密码,那该多好啊!!
回复

使用道具 举报

 楼主| 发表于 2005-12-15 19:37:45 | 显示全部楼层
下面是引用dede于2005-12-15 19:23发表的:
6 J4 Y! [  g3 B3 S好功能!不过,如果能登陆江湖后,再登录论坛不需要再输入一遍用户名和密码,那该多好啊!!
+ J( M. M6 Z( `, b! c% a- _
实现是可以实现的,只不过已经超出这里讨论的范围了。
回复

使用道具 举报

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

使用道具 举报

发表于 2005-12-16 08:45:35 | 显示全部楼层
不赞成采用两个DLL
' [1 H6 y6 G, V$ `) S! @1 w5 P: U! g1 }/ v/ v
我的实现方法是:在pchat目录下建立了一个users.ini文件,里面记录的是:  W  k  f  N4 o: F
;*******************************************************************9 K% i+ T% B! N4 Y
; 有效用户表个数,最小为1,即PCHAT自代的用户表
$ H* `! E. g( H' ~3 a[pub]' p6 E- j0 Y8 i: Z- U
Max_UserTable = 3         ;最小为1,基本用户表
2 b+ l4 \7 R1 l1 `/ M' T
3 [1 A9 d" s2 l6 p4 ^;1号用户表
6 L$ q* F1 J+ Z) r[1]
5 n, ]6 Z, s1 Z( o;用户ID起始序号
2 ]0 h- Z+ n# U  c1 x6 C( [UserId_Head = 0
+ @0 t4 \& P) L;dsn连接
9 c8 C2 h/ J) w8 E0 Z2 P  LDSN = dsn=pchat
% V5 n/ d9 B; g: D! x;字段定义2 P- f- q9 c! ^8 Q. |8 v" L% g
UserId = uin
3 C, e4 [- A7 n- G) k9 `UserName = nick$ D: Z" j4 a. @+ k8 x
UserPassword = passwd
( F; e& b$ a3 A- W' q: \1 YUserSex = gender
5 ]2 j) j2 Q- u, q
1 z( [' l# T- D% @' c; R1 d[2]; _( v% L& e2 e2 e, j
UserId_Head = 200000000
, X  i* S& x! c# z" |, R% I, s+ lDSN = dsn=fywww. I3 m; r! L$ i  z' [& t& l
UserId = userid) ?; L; [: T- O. I
UserName = username
4 c! |! L' v( y# k5 f. U; W1 dUserPassword = userpassword4 f' B) S& L+ e" z' X# H, C
UserSex = usersex
+ c  `( b  G( b. R8 V$ j/ r/ y- [5 d4 Y$ V0 |+ N7 _! A& U7 F7 W
[3]
  ^( j* a- H7 j9 R1 CUserId_Head = 3000000001 x$ Y9 v1 R5 p) {
DSN = dsn=fy
8 }- K, l& _9 e0 ]UserId = uin; _+ V) C# j5 y5 [
UserName = nick4 S8 U$ p) r; G
UserPassword = passwd. z, w  Q0 F8 Z& i6 |
UserSex = gender
& B) g! N8 W" T8 n- L" Y
" d( `- h( F7 l$ x, C6 l如果是单用户表,建议将以上某段定义放到pchat_ini中即可
( ~+ e6 A% [, m至于用户ID和性别,很多网站的数据库都支持,如果不支持,只需要在DLL中加一条转换语句。. X- Y0 K1 v- |: D; p- L1 g

0 l  W& m$ G+ E' }8 a% qdede的用户登陆问题,我的江湖已经做了,用户在江湖中选择充值后,直接转ASP网页选择充值金额、转银行支付、增加江湖充值金额。如果是论坛,更简单。整个无须再输入密码。
1 b( {# u, Y- N% l1 M. |实现过程:在江湖中加一条转论坛或其他指令,指令执行函数先对用户、时间、IP等进行记录,并生成加密串,然后带用户ID和加密串转ASP程序,在ASP程序中检查用户ID和加密串的合法性,以及时间是否超时(如最大10秒),通过的话,就认可认证,模拟论坛登陆成功操作。
回复

使用道具 举报

 楼主| 发表于 2005-12-16 13:53:26 | 显示全部楼层
下面是引用calmhe于2005-12-16 08:45发表的:
; l" z* o1 v0 d3 v不赞成采用两个DLL! X# D( B. A0 W+ m1 Q) @! G

, o9 J" |$ N: ^. q我的实现方法是:在pchat目录下建立了一个users.ini文件,里面记录的是:
0 @6 O) c; n1 r+ u;*******************************************************************9 f, m! T! I7 h" U# d
; 有效用户表个数,最小为1,即PCHAT自代的用户表- \+ f( Z" y  o9 o4 `
.......

; s! g4 z  Z  t" O+ N( i双DLL与你的这个功能没任何影响,可以将两个DLL的定义都指向同一个DLL文件。
回复

使用道具 举报

 楼主| 发表于 2005-12-18 14:28:21 | 显示全部楼层
原来的服务器端INI中的 “DllFileName = DLL文件名”改为:
; l7 o/ v* E$ O6 O. C: GAuthDllFile = 登录验证的DLL文件名
& Y8 C: p8 l* I2 y! k* b0 |* aMainDllFile = 游戏内容的DLL文件名

5 |* t0 I* S; y( Q# T2 n# ]
6 O1 a* o5 i& T: o& |, s其中的 AuthDllFile 指定的DLL只使用OnUserLogin()接口函数,其他内容在 MainDllFile 指定的DLL中调用。
3 o. p+ J0 T$ Y) u0 {  G4 w如果使用的是默认的数据库表和字段结构,两个DLL可以是一样的(也就是说和以前没什么区别)。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-6-18 09:03 , Processed in 0.021370 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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