socket实现tcp/ip服务端源码,无线程

王朝vc·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

WORD wVersion=MAKEWORD(2,0);

WSADATA wsData;

int nResult= WSAStartup(wVersion,&wsData);

if(nResult !=0)

{

MessageBox("版本不对","ok",MB_OK);

return;

}

SOCKET sock=socket(AF_INET,SOCK_STREAM,IPPROTO_IP);

if(sock==INVALID_SOCKET)

{

MessageBox("socker err","err",MB_OK);

return;

}

sockaddr_in addr;

addr. sin_family=AF_INET;

addr. sin_port= htons(6000); //保证字节顺序

addr. sin_addr.s_addr= inet_addr("192.168.0.152");

nResult=bind(sock,(sockaddr*)&addr,sizeof(sockaddr));

if(nResult==SOCKET_ERROR)

{

MessageBox("绑定套接字时出错","错误",MB_OK);

return;

}

nResult=listen(sock,5);//最多5个连接

if(nResult==SOCKET_ERROR)

{

MessageBox("listen err","错误",MB_OK);

return;

}

int len;

sockaddr_in addrclient;

SOCKET s_d=accept(sock,(sockaddr*)&addrclient,&(len=sizeof(sockaddr)));

if(s_d==INVALID_SOCKET)

{

MessageBox("accept err","错误",MB_OK);

return;

}

char mess[1000];

nResult =recv(s_d,mess,1000,0);

if(nResult==SOCKET_ERROR)

{

int t=WSAGetLastError();

MessageBox("rexv err","错误",MB_OK);

return;

}

MessageBox("rexv ok","ok",MB_OK);

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航