MIDAS高级问题(100分)

  • 主题发起人 主题发起人 zcm1975117
  • 开始时间 开始时间
Z

zcm1975117

Unregistered / Unconfirmed
GUEST, unregistred user!
请问在服务器端,怎么知道客户已经没有使用客户端程序了(主要是非法退出,或突然停电了)
 
http://www.delphibbs.com/delphibbs/DispQ.asp?LID=542575
 
在server里定時檢查.
 
兄弟:可以说得详细一些嘛!!最好有段代码呀!!
 
其实这样的问题凡是在跨越机器边界的情况下都存在,因此这样的环境下的通讯机制都有
考虑,在DCOM下也有,他是通过定期轮讯来检测“死连接”(Dead link) 的情况,并将
死连接的对象释放。
这就是DCOM比SocketConnection 要好一些的原因,因为ScktSrvr没有实现超时检测。
 
这要看你的服务端线程模式,如果使用M...的话,可以有一个简单的方法:
在远程数据模块的Create,Destroy中对一量个全局变量赋值,分别表示加、减一个客户端。
 
http://www.delphibbs.com/delphibbs/DispQ.asp?LID=542575
以前讨论过
 
在scktsrvr中设置timeout的时间
 
我在用BCB5做多层结构系统时,我在Server端加入了一个取得服务器IP地址的方法:GetServerIP它的参数是vIP:Variant *,IN方式,并在服务端实现了这个方法,
加入的代码如下:
*vIP="192.168.0.01";最后我注册成功。
可是在我开发客户端程序时,我用TSocketConnection
当取得它的服务时我是这样做的:
Variant* vip;
SocketConnection1->AppServer.GetServerIP(vip);
Edit1->Tex=vip;
可 是我在运行程序时出错,没有编译通过。
它说getserverIP不是variant的成员
getserverIP is not a memober of variant
请问?
我该如何去调用这个方法呢?
请各位大侠多多指教?
小生的QQ:65466700(24小时在线恭候)
MAIL: alongsun@sina.com
 
后退
顶部