vvqboy 发表于 2014-7-17 13:19:54

我用MFC写了一个局域网文件传输程序,怎样判断对端电脑是否在线

我用MFC写了一个局域网文件传输程序,怎样判断对端电脑是否在线?
网络传输是用CSock写的。
判断需要每半分钟执行一次

格式天下 发表于 2014-7-17 13:19:55

拈花小仙 发表于 2014-7-18 22:07
@machimilk @格式天下

这个简单,你每个客户端创建一个连接后,将对应的Socket对象存放在在map之类的数据结构中,map这种数据结构是键值对的形式,比如我现在有2个人在线,分别是A,B那么此时map中存放的就是('A' , socket1) ('B' , socket2)第三人C登录客户端并且与服务器建立连接的时候,同时注册到map中,当C向A发送文件的时候,首先在map中查找有没有以‘A’为键的项,如果有,说明就在线,Tips:map数据结构应该是一个静态变量,同时你要写好addOnline()用来添加上线键值对,removeOnline()当客户端关闭时移除键值对,,,,ok,就这样喽

拈花小仙 发表于 2014-7-18 22:07:54

@machimilk @格式天下

machimilk 发表于 2014-7-18 22:29:18

好像要有客户端和服务端的分别吧

vvqboy 发表于 2014-7-29 11:10:02

格式天下 发表于 2014-7-26 19:49
这个简单,你每个客户端创建一个连接后,将对应的Socket对象存放在在map之类的数据结构中,map这种数据结 ...

您没理解我的意思,我现在就是知道ip地址,想把这个ip地址传给一个函数,在线返回ture,不在线返回flase就ok了

格式天下 发表于 2014-7-31 22:38:52

vvqboy 发表于 2014-7-29 11:10
您没理解我的意思,我现在就是知道ip地址,想把这个ip地址传给一个函数,在线返回ture,不在线返回flase ...

是要实现类似ping功能的函数?

cable5881 发表于 2014-8-1 19:33:06

哇 确实好牛逼啊 楼主好厉害哦{:1_1:}

cable5881 发表于 2014-8-1 19:33:37

哇 确实好牛逼啊 楼主好厉害哦{:1_1:}

vvqboy 发表于 2014-8-4 09:36:55

格式天下 发表于 2014-7-31 22:38
是要实现类似ping功能的函数?

嗯,不过除了知道对方电脑在线,还需要确认对方软件也登录了。

智商是硬伤 发表于 2015-8-24 08:57:52

{:7_146:}

迷雾少年 发表于 2015-8-24 16:04:06

1.自写ping,参考我的一个帖子。2.调用cmd命令得到返回直判断
页: [1]
查看完整版本: 我用MFC写了一个局域网文件传输程序,怎样判断对端电脑是否在线