标题: atong请进!关于WATTCP :如何多WIN2K客户机同时连单DOS服务器!
[打印本页]
作者: kugui
时间: 2006-1-19 14:21
标题: atong请进!关于WATTCP :如何多WIN2K客户机同时连单DOS服务器!
敬请各位高手踊跃发言,指点一二,不胜感激啊!(我只能实现单台WIN2K与DOS服务器的TCP/IP通讯。)
作者: zhgwbzhd
时间: 2006-1-20 20:34
使用UDP应该可以吧
作者: GONGXP
时间: 2006-1-21 18:23
标题: 可以
以下为客户端代码例子:
#include <stdio.h>
#include <string.h>
#include <rtos.h>
#include <net.h>
#include <mem.h>
#include <stdlib.h>
#include <ctype.h>
void main(void)
{
static tcp_Socket s;
char remotbuf[100] = "lanry";
char serverIp[20] = "192.168.0.100"; //服务器IP地址
char AddrBuf[50];
char szRead[512];
DWORD host;
int status;
int rlen = 5;
sock_init(); /*初始化协议栈*/
printf("WATTCP.CFG address is: [%s]\n", inet_ntoa(AddrBuf, gethostid()));
printf("Connecting to %s:%d\n", serverIp, 9104);
host = inet_addr(serverIp); /*服务器端IP*/
if(!tcp_open(&s, 0, host, 9104, NULL)) /*连接服务器*/
{
printf("Unable to open TCPC session\n");
goto sock_err;
}
printf("Wating to be established\n\r");
sock_wait_established(&s, sock_delay, NULL, &status);
printf("Connection is Successful!\n");
/*以下代码用户可以根据需要修改*/
while(1)
{
rt_sleep(10);
tcp_tick(NULL); //给协议栈执行机会
sock_write(&s, (byte *)remotbuf, rlen); //向服务端发送信息
//接收服务端发送来的信息
if(sock_dataready(&s))
{
memset(szRead, 0, 512);
//无阻塞接收数据,另外一个阻塞接收数据函数为sock_read
sock_fastread(&s, (byte*)szRead, sizeof(szRead));
}
}
sock_err:
puts("Unable to connect to the server!\n");
sock_close(&s);
}
作者: kugui
时间: 2006-1-23 12:25
标题: 谢谢!
我的DOS机是服务器,请问有没有用WATTCP实现在DOS机多连接的服务器端代码,是多台WIN2K同时连接一台DOS服务器