中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » DOS网络编程读写超时控制问题
作者:
标题: DOS网络编程读写超时控制问题 上一主题 | 下一主题
dsysps
初级用户





积分 98
发帖 34
注册 2006-11-3
状态 离线
『楼 主』:  DOS网络编程读写超时控制问题

系统环境OS,MSCLIENT3.0,如何实现读写超时限制?如何实现连接超时限制?

2006-11-4 04:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
dsysps
初级用户





积分 98
发帖 34
注册 2006-11-3
状态 离线
『第 2 楼』:  

使用如下代码,如果网络断了,有几分钟不返回
rc=connect(sd,(struct sockaddr*)&server_addr,sizeof(server_addr));
        if(rc<0)
        {
                printf("ERROR:connect() err no:%d\n",errno);
                close_socket(sd);
                return;
        }

2006-11-4 05:01
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
spoton
初级用户





积分 54
发帖 25
注册 2006-10-31
来自 疯人院
状态 离线
『第 3 楼』:  

ms-client 俺不知道是啥
但那个 tcp/ip socket 有 option 可加

setsockopt( fd_s, SOL_SOCKET, SO_RCVTIMEO, &tor, sizeof(tor));

ETC...(MS-CLIENT 我不知有无)

2006-11-6 12:04
查看资料  发短消息 网志   编辑帖子  回复  引用回复
dsysps
初级用户





积分 98
发帖 34
注册 2006-11-3
状态 离线
『第 4 楼』:  

MSCLIENT中没有SO_RCVTIMEO定义
WINDOWS下实现读写读写超时限制可以用
int MilliSeconds = 1000;
setsockopt(sConnect,SOL_SOCKET, SO_RCVTIMEO,
             (char *)&MilliSeconds, sizeof(MilliSeconds));
setsockopt(sConnect,        SOL_SOCKET, SO_SNDTIMEO,
             (char *)&MilliSeconds, sizeof(MilliSeconds));
connect超时如何限制?

2006-11-6 21:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
dsysps
初级用户





积分 98
发帖 34
注册 2006-11-3
状态 离线
『第 5 楼』:  

到现在还没有解决,请大家帮忙!!!!

2006-11-17 23:40
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
dsysps
初级用户





积分 98
发帖 34
注册 2006-11-3
状态 离线
『第 6 楼』:  

再次恳请大家帮忙,困扰小弟半年多了!!!!!!

2007-5-31 15:19
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
whowin
初级用户





积分 134
发帖 37
注册 2006-9-28
状态 离线
『第 7 楼』:  

dos实模式下的网络编程,我认为最好用的库是DMP做的DSOCK
32位下的比较多,比较好用的应该是WATTCP

两个都能实现超时处理,而且WATTCP是用标准的SELECT方法实现的,非常好
MS的东西尽量少用,尤其在工控场合,MS除了出过一个好东西DOS外,没有出过任何好东西,其实MS-DOS最早也不是他们的,只是MS-DOS最后发展的最好.
上面说到的两个都是免费的,网址分别是:

www.dmp.com.cn

http://www.bgnett.no/~giva/

不过两者都需要PACKET DRIVER,不过你能用MSCLIENT,应该是有PACKET driver的.

2007-5-31 16:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: