windows 网络编程总结

 

1.需要的头文件和库

进行Windows网络编程,你需要在你的程序中包含WINSOCK2.H或MSWSOCK.H,
 同时你需要添加引入库WS2_32. LIB或WSOCK32.LIB。准备好后,你就可以着手建立你的第一个网络程序了。

 

2.一个简单的client的例子

#include
#include

#pragma comment(lib,"WS2_32.LIB")
void main()
{
 
 WSADATA wsd;
 SOCKET sClient;
 UINT port = 3785;
 char szIp[] = "10.140.21.103";
 int iAddrSize;
 struct sockaddr_in server;
 WSAStartup( 0x11 , &wsd );
 sClient = socket( AF_INET , SOCK_STREAM ,0);
 server.sin_family = AF_INET;
 server.sin_addr.s_addr = inet_addr( szIp );
 server.sin_port = htons( port );
 connect( sClient , (struct sockaddr*)&server , sizeof( server ) );

 char buf[] = "jiangdewei sfdsdfsdfsdfsd.";
 send(sClient,buf,strlen(buf),0);

 closesocket(sClient);


windows 的5种编程模型:

如果你想在Windows平台上构建服务器应用,那么I/O模型是你必须考虑的。
Windows操作系统提供了选择(Select)、异步选择(WSAAsyncSelect)、事件选择(WSAEventSelect)、重叠I/O(Overlapped I/O)和完成端口(Completion Port)共五种I/O模型。每一种模型均适用于一种特定的应用场景。


这里需要注意的是:WSAAsyncSelect和WSAEventSelect调用后,套接字被自动设置为非阻塞模式 。这里就是WSA前缀的作用。



你可能感兴趣的:(windows)