社区
网络编程
帖子详情
当客户端断开时,服务器端如何即时得到已经断开的客户端的地址信息呢?
icegrape
2006-12-22 09:00:11
在服务器端,vc6.0,用基于MFC的CAsyncSocket类编程,想在某个客户端断开连接时,得知客户端的具体信息,但是在OnClose()函数调用GetPeerName((SOCKADDR*)&addrClose, &len),函数返回值显示WSAENOTSOCK,为什么呢?
是不是因为此时客户端已经关闭,无法得到已经断开的客户端的地址信息?
那么如果这种方法行不通,如何才能在某个客户端断开时,即时得到其相关信息呢?
...全文
243
11
打赏
收藏
当客户端断开时,服务器端如何即时得到已经断开的客户端的地址信息呢?
在服务器端,vc6.0,用基于MFC的CAsyncSocket类编程,想在某个客户端断开连接时,得知客户端的具体信息,但是在OnClose()函数调用GetPeerName((SOCKADDR*)&addrClose, &len),函数返回值显示WSAENOTSOCK,为什么呢? 是不是因为此时客户端已经关闭,无法得到已经断开的客户端的地址信息? 那么如果这种方法行不通,如何才能在某个客户端断开时,即时得到其相关信息呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
ProgrameMan
2006-12-23
打赏
举报
回复
是的,当一个套接字关闭后是无法使用 GetPeerName函数的,至于原因就是实现的方式问题
icegrape
2006-12-23
打赏
举报
回复
恩,呵呵,想问一下“在OnClose()函数调用GetPeerName((SOCKADDR*)&addrClose, &len),函数返回值显示WSAENOTSOCK,为什么呢?”这种方法是不是行不通,原因到底是什么呢?
是因为此时如果客户端关闭的话,用GetPeerName函数就不行了,是吗?
ProgrameMan
2006-12-23
打赏
举报
回复
虽然每一个客户端都是基于同一个类,但是类的实例是不同的啊
icegrape
2006-12-23
打赏
举报
回复
我的所有客户端都是基于同一个类的,当产生OnClose事件时,如何判断是哪一个客户端断开了呢?
ProgrameMan
2006-12-23
打赏
举报
回复
不用客气,及时结贴就好 呵呵
icegrape
2006-12-23
打赏
举报
回复
多谢多谢^_^
vc和网络编程都是刚刚接触,很多咚咚都稀里糊涂的
发帖有人回复真是十分感激阿,呵呵
ProgrameMan
2006-12-23
打赏
举报
回复
网线段开于客户端关闭是有区别的,一般的做法是客户端定期向服务器发送一些少量信息的数据(称之为心跳包),当服务器在一定时间内没有接收到来自客户端得心跳包则认为客户端已经无效了。
icegrape
2006-12-23
打赏
举报
回复
如果网线断开的话,还会触发OnClose事件吗?网线断开是不是与客户端关闭有很大区别?
如果那样的话,如何检测客户端的连接情况呢?
ProgrameMan
2006-12-23
打赏
举报
回复
操作系统自身对 tcp 以及 GetPeerName 的实现。
icegrape
2006-12-23
打赏
举报
回复
能再问一哈,这个“实现方式”具体指的是什么呢?
ProgrameMan
2006-12-22
打赏
举报
回复
在连接建立后先保存一份地址信息,关闭的时候在使用不就行了吗
即
时
通信的简单实现(使用Java套接字实现)
CClient.java:
客户
端
类,实现连接
服务器
,监听
客户
端
标准输入,并将
客户
端
命令发送到
服务器
端
,同
时
在系统标准输出设备上显示
服务器
发回的所有
信息
。 CServer.java:
服务器
端
类,监听192.168.10.200机的8888
端
口,...
基于Socket的多
客户
端
网络聊天系统的开发与设计
服务器
端
应当建立一个ServerSocket,用于不断进行侦听
客户
端
是否有连接请求或者
断开
连接。
服务器
端
就是一个管理
信息
发送的控制中心;
客户
端
要想进行
信息
的传递,首先必须先将
信息
发送至
服务器
端
,然后
服务器
再根据...
Signalr即
时
通讯Demo
SignalR当然也提供了非常简单易用的高阶API,使
服务器
端
可以单个或批量调用
客户
端
上的JavaScript函数,并且非常 方便地进行连接管理,例如
客户
端
连接到
服务器
端
,或
断开
连接,
客户
端
分组,以及
客户
端
授权,使用...
Signalr即
时
通讯.Net MVC Demo 下载
SignalR当然也提供了非常简单易用的高阶API,使
服务器
端
可以单个或批量调用
客户
端
上的JavaScript函数,并且非常 方便地进行连接管理,例如
客户
端
连接到
服务器
端
,或
断开
连接,
客户
端
分组,以及
客户
端
授权,使用...
网络工程实验报告 netbios实现一个类似qq的通信程序--
客户
端
-共18页-4312字
在
服务器
端
,当
服务器
端
程序运行
时
便初始化socket, 创建
服务器
端
,在
服务器
端
包含一个发送窗口和一个接收窗口,以及一个ListBox来显示当前连接到
服务器
上的
客户
端
的IP
地址
。
服务器
端
功能: 1、 初始化netbios, 创建...
网络编程
18,356
社区成员
64,214
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章