中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-01 11:14
中国DOS联盟论坛 » DOS开发编程 & 发展交流 (开发室) » 网络通讯开发问题 查看 1,047 回复 4
楼 主 网络通讯开发问题 发表于 2007-09-09 16:38 ·  中国 陕西 西安 电信
初级用户
积分 31
发帖 13
注册 2007-09-09 15:29
18年会员
UID 96938
性别 男
状态 离线
本人的程序在DOS 6.22环境下运行,需要用UDP协议和上位机通信,但没有这方面的经验.请各位高手指点:
1.如何驱动,配置网卡;
2.如何应用borland c++/ socket.h建立和网卡的联系;
2 发表于 2007-09-09 17:22 ·  中国 广东 深圳 电信
高级用户
★★
积分 668
发帖 295
注册 2005-07-26 00:00
21年会员
UID 41110
性别 男
来自 广东深圳
状态 离线
有三种途径解决

一是利用Wattcp的TCP/IP协议栈,使用“Packet Driver”网卡驱动,功能强大,但难度大,没有中文文档,接口与Windows的Socket有些不尽相同。 数据包被放在常规内存中。


二是利用WinSail的TCP/IP协议栈,使用“Packet Driver”网卡驱动,功能较弱,但有中文文档,接口基本与Windows的Socket兼容,方便从Windows的客户端移植代码过来。 数据包被放在扩展内存中,不占用常规内存。

三是利用Microsoft Client 3.0l的TCP/IP协议栈,使用“NDIS2”网卡驱动,功能最强大,要想用它写出自己的应用程序,那可能要打越洋电话给世界首富---“微软”的盖茨才行。


以上三种TCP/IP协议栈,如果您需要强大的TCP/IP支持,那就选择Wattcp,占用内存大;如果只是利用UDP传送数据,建议使用WinSail,占用内存小。选用Microsoft Client是下下策!


DOS下的网卡驱动一般有两种形式,一种是“NDIS2”形式,是微软公司推出的,只能在“Config.Sys”文件中加载,不能卸载。另一种形式是“Packet Drvier”形式,由“xxxxx”公司推出的,在DOS命令行中加载,可卸载。由于现在新的网卡基本上没有“Packet Driver”驱动,但NDIS2驱动可以转成Packet Driver驱动,关于这方面的转换,您可以浏览其它的贴子获得。

[ Last edited by firstsail on 2007-9-9 at 07:49 PM ]
3 发表于 2007-09-09 21:29 ·  中国 陕西 西安 电信
初级用户
积分 31
发帖 13
注册 2007-09-09 15:29
18年会员
UID 96938
性别 男
状态 离线
firstsail:
谢谢你的指点,我是做工控的,多年以前接触过DOS编程,现在几乎忘光了.而且有这方面经验的人太少了.
没想到这个论坛有很多高手.您的回复对我很有价值,我会根据您提供的思路做一些实验.我在西安工作,您来西安我请你吃羊肉泡.我的邮箱:quance@vip.sina.com
4 发表于 2007-09-12 16:04 ·  中国 四川 德阳 电信
初级用户
积分 147
发帖 13
注册 2005-03-25 00:00
21年会员
UID 37426
性别 男
状态 离线
网上有很多针对单片机开发的TCP/IP协议栈,你可以参考一下,源代码完全开放,当然了不可能支持TCP/IP所有的功能(仅仅支持ARP、ICMP、TCP、IP、UDP、HTTP、数据链路层协议),最后要想实现MSDOS下的网络通讯还需要编写物理层协议即编写RTL8139网卡驱动程序。
  注:网上有大量针对单片机的RTL8019AS网卡驱动程序源代码可供参考。
5 发表于 2007-09-13 14:07 ·  中国 陕西 西安 电信
初级用户
积分 31
发帖 13
注册 2007-09-09 15:29
18年会员
UID 96938
性别 男
状态 离线
BA_WANG_MAO网友:
谢谢你的指点,我的程序用UDP就足够了.
论坛跳转: