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

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

  [复制链接]
发表于 2005-12-15 17:33:39 | 显示全部楼层 |阅读模式
因目前pChat的用户数量不断增多,预计将来大约会有1/10以上的用户可能会采用现有社区的帐号来结合pChat平台的游戏。4 X8 ^8 D3 n1 t2 K
而目前pChat平台的游戏主要是采用MySQL数据库并且一般是独立玩家帐号数据的形式。不方便这些用户与自己的社区帐号进行结合。
& {3 [$ Y5 m9 d# g" t1 e) H0 K+ B; u1 g3 z' i+ K/ n6 S
因此拟在下一版本的pChat Server中采用两个DLL文件的形式。
# G* t( n2 T" f! N% X0 V9 H一个用于OnUserLogin()接口的调用,8 \/ h' T, x5 u% ?1 c1 P5 Z
另一个用于其他接口的调用。# u( Z% g- u7 {0 T# c6 Y
/ u" \1 h1 {- J0 \5 M7 a8 f
这样,对于普通的采用与现有社区结合结合方式的用户来说,就可以非常方便的对pChat平台的游戏进行升级。基本上可以不用修改游戏程序了。1 R5 W' u" Q+ Y, w1 R
! x! u7 P2 |+ [) g! u  {
欢迎大家发表自己的意见与建议。
发表于 2005-12-15 19:23:11 | 显示全部楼层
好功能!不过,如果能登陆江湖后,再登录论坛不需要再输入一遍用户名和密码,那该多好啊!!
回复

使用道具 举报

 楼主| 发表于 2005-12-15 19:37:45 | 显示全部楼层
下面是引用dede于2005-12-15 19:23发表的:) @  C7 b9 e9 p5 Z7 {  ^6 K2 R7 R! }
好功能!不过,如果能登陆江湖后,再登录论坛不需要再输入一遍用户名和密码,那该多好啊!!

1 _9 c" Y/ \) i实现是可以实现的,只不过已经超出这里讨论的范围了。
回复

使用道具 举报

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

使用道具 举报

发表于 2005-12-16 08:45:35 | 显示全部楼层
不赞成采用两个DLL
: {  q4 E+ u8 x8 `3 D' x+ b  y. n$ A! r/ |
我的实现方法是:在pchat目录下建立了一个users.ini文件,里面记录的是:9 ~$ h, T% U; b; V7 [& C6 Z
;*******************************************************************
" @$ |5 {# ?4 t- s; m# b- o3 \; 有效用户表个数,最小为1,即PCHAT自代的用户表# }6 P7 X7 t2 _3 B: p! W
[pub]; V# W2 b/ ~+ X) G
Max_UserTable = 3         ;最小为1,基本用户表: {% o/ h1 l5 ?5 Z: t
4 s, \' j0 @( `6 h
;1号用户表
' e1 V- V2 g' `' h[1]
' D: R+ D4 l. F. G6 ^; w' w;用户ID起始序号$ [( Z* R6 p4 R. |* L7 E
UserId_Head = 04 m1 R/ `/ Q) h+ v: Z7 R
;dsn连接% b: B; ?' b- P6 u
DSN = dsn=pchat% B" k/ B' ~4 |
;字段定义
+ F* I% d9 y+ P  PUserId = uin
+ Y5 Q, ?! y# q5 TUserName = nick1 y+ Y$ A, \( n& P  @( A" E$ R0 n$ S
UserPassword = passwd( P; s1 B# c# v+ |2 x
UserSex = gender
8 G7 s4 k# u& B$ S2 W4 ?  }( N: F5 z4 r# T- Z8 M* [' w; j
[2]
$ r6 P2 v9 K- D- sUserId_Head = 200000000
& P( D& |- |4 _DSN = dsn=fywww, k" Q- I6 b6 i3 F, j
UserId = userid. M6 ~9 Z. ~$ L1 i4 T' h! ^
UserName = username
- l! P* A  g: [% eUserPassword = userpassword1 y7 L9 p7 X( }- M) \  w
UserSex = usersex$ N- I$ G3 Q5 W# b
+ B5 `1 |) ?( [+ W' i5 C
[3], x. Z& c2 ]; G# V& B; K
UserId_Head = 3000000000 ]4 g$ X# u' T# p3 n) Z
DSN = dsn=fy" O6 D. }3 e; S
UserId = uin
2 b3 E' J6 F- Z, @8 Q; }" l8 WUserName = nick
4 [) t$ I  H" fUserPassword = passwd
" x9 b6 P8 I3 E* y6 _; _+ DUserSex = gender
5 l) r* R( m, ]2 X
9 `' k0 A- N! w: G如果是单用户表,建议将以上某段定义放到pchat_ini中即可
  [7 I2 `7 G3 v: X: y% ]  I至于用户ID和性别,很多网站的数据库都支持,如果不支持,只需要在DLL中加一条转换语句。! s" \& p; Q% z% ~( G

9 Y, U) f  u% F2 D4 I. O+ Adede的用户登陆问题,我的江湖已经做了,用户在江湖中选择充值后,直接转ASP网页选择充值金额、转银行支付、增加江湖充值金额。如果是论坛,更简单。整个无须再输入密码。) `; J6 q$ N2 L  B$ b
实现过程:在江湖中加一条转论坛或其他指令,指令执行函数先对用户、时间、IP等进行记录,并生成加密串,然后带用户ID和加密串转ASP程序,在ASP程序中检查用户ID和加密串的合法性,以及时间是否超时(如最大10秒),通过的话,就认可认证,模拟论坛登陆成功操作。
回复

使用道具 举报

 楼主| 发表于 2005-12-16 13:53:26 | 显示全部楼层
下面是引用calmhe于2005-12-16 08:45发表的:4 T- Q+ p, {) t) P% J0 C  l
不赞成采用两个DLL' s/ X; c" }. s: I, |

$ m5 e% @" S; c6 }, V4 P+ P3 K我的实现方法是:在pchat目录下建立了一个users.ini文件,里面记录的是:0 E. t+ m; a7 Z7 K* d
;*******************************************************************
, H, g9 f2 U% B4 ?- E; 有效用户表个数,最小为1,即PCHAT自代的用户表2 u2 J$ }4 h, g; e
.......
' ?: J, K2 v+ m
双DLL与你的这个功能没任何影响,可以将两个DLL的定义都指向同一个DLL文件。
回复

使用道具 举报

 楼主| 发表于 2005-12-18 14:28:21 | 显示全部楼层
原来的服务器端INI中的 “DllFileName = DLL文件名”改为:$ m( E# W; @7 y0 U0 J
AuthDllFile = 登录验证的DLL文件名
* W" K( `% B  F: ]" c8 FMainDllFile = 游戏内容的DLL文件名
$ ~1 ~* d8 u) s$ `( C; F

: |: U. h* y8 u. j9 e; }% ]! p0 v其中的 AuthDllFile 指定的DLL只使用OnUserLogin()接口函数,其他内容在 MainDllFile 指定的DLL中调用。: ?4 z. s( |3 m* |/ T
如果使用的是默认的数据库表和字段结构,两个DLL可以是一样的(也就是说和以前没什么区别)。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-9-30 09:02 , Processed in 0.035846 second(s), 15 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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