?? microwin.txt
字號(hào):
服務(wù)器端:
先創(chuàng)建一個(gè)socket_serv;使用非阻塞方式
#include <fcntl.h>
socket_serv= socket(AF_INET,SOCK_STREAM,0);
fcntl(socket_serv,F_SETFL,O_NONBLOCK);
bind(socket_serv);
listen(socket_serv);
int client_sock[SIZE];
MwRegisterFdInput(HWND hwnd, int socket_serv);//把listen的socket加入輸入隊(duì)列中
MESSAGE循環(huán)
{case:WM_FDINPUT //有輸入信息
switch (wParam):
case socket_serv://有新連接
if client_sock[i]!=0
client_sock[i]=accept();//建立新連接
MwRegisterFdInput(HWND hwnd, int client_sock[i]);//把新連接加入消息隊(duì)列,這樣如果有數(shù)據(jù)達(dá)到,同樣有WM_FDINPUT消息
MwRegisterFdExcept(HWND hwnd, intclient_sock[i]);//加入連接中斷消息
case clinet_sock[i]://如果是已建立的連接,則說明有數(shù)據(jù)到達(dá)
recv(clinet_sock[i],buf,len);//接收數(shù)據(jù)
...處理
case:WM_FDEXCEPT
switch (wParam):
case:client_sock[i]
MwUnRegisterFdInput(HWND hwnd, int client_sock[i]);//從消息隊(duì)列中刪除
MwUnRegisterFdExcept(HWND hwnd, int client_sock[i]);//
client_sock[i]=0;
}
Client端基本相同
socket_client= socket(AF_INET,SOCK_STREAM,0);
connect(socket_client);
MwRegisterFdInput(HWND hwnd, int scoket_client)
case:WM_FDINPUT
recv();
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -