if (PSuperVise^.mSocket.RemoteHost=Socket.RemoteHost) and
(PSuperVise^.mSocket.RemoteAddress=Socket.RemoteAddress) then
进行判断,结果在局域网内没有问题,但在外网(互联网)中,发现判断出错。
为什么?怎么办?
5 个解决方案
#1
if (PSuperVise^.mSocket.RemoteHost=Socket.RemoteHost)
這個判斷已經足夠了吧??
這個判斷已經足夠了吧??
#2
RemoteHost是否要在客户端设置后才有的?
#3
在Internet上Socket.RemoteHost指的网关或有真实IP的机器,除非客户端自定义一个识别标志,不然服务器是不能判断是不是同一台机器的。
#4
kmzym():
那怎样才能自定义识别标志,让客户端连接上来时就能知道对方属于哪台机器呢?
是不是Socket的属性里没有一项可以用来判断客户端身份的?
那怎样才能自定义识别标志,让客户端连接上来时就能知道对方属于哪台机器呢?
是不是Socket的属性里没有一项可以用来判断客户端身份的?
#5
to collecte
用Socket的属性不能判别客户的机器,可以在客户登录服务器的时候,发送客户相关信息来给服务器。
用Socket的属性不能判别客户的机器,可以在客户登录服务器的时候,发送客户相关信息来给服务器。
#1
if (PSuperVise^.mSocket.RemoteHost=Socket.RemoteHost)
這個判斷已經足夠了吧??
這個判斷已經足夠了吧??
#2
RemoteHost是否要在客户端设置后才有的?
#3
在Internet上Socket.RemoteHost指的网关或有真实IP的机器,除非客户端自定义一个识别标志,不然服务器是不能判断是不是同一台机器的。
#4
kmzym():
那怎样才能自定义识别标志,让客户端连接上来时就能知道对方属于哪台机器呢?
是不是Socket的属性里没有一项可以用来判断客户端身份的?
那怎样才能自定义识别标志,让客户端连接上来时就能知道对方属于哪台机器呢?
是不是Socket的属性里没有一项可以用来判断客户端身份的?
#5
to collecte
用Socket的属性不能判别客户的机器,可以在客户登录服务器的时候,发送客户相关信息来给服务器。
用Socket的属性不能判别客户的机器,可以在客户登录服务器的时候,发送客户相关信息来给服务器。