[Visual Studio C++][Socket程式設計] WSAAsyncSelect()函式使用講解
阿新 • • 發佈:2018-11-10
一.前言
WSAAsyncSelect()函式允許應用程式以Windows訊息的方式接收網路事件通知。
二.講解
1.函式的功能
- WSAAsyncSelect()函式
WSAAsyncSelect()函式自動把套接字設為非阻塞模式,並且為套接字繫結一個視窗控制代碼,當有網路事件發生時,便向這個視窗傳送訊息。
2.函式使用
WSAAsyncSelect()
①.原型:
intWSAAsyncSelect( SOCKET s, HWND hWnd, U_INT wMsg, long IEvent )
②.引數:
- s :需要設定的套接字控制代碼。
- hWnd: 指定一個視窗控制代碼, 套接字的通知訊息將被髮到此視窗中。
-
wMsg: 網路事件到來的ID,可以在WM_USER以上數值中任意指定一個值。
-
IEvent:指定哪些通知碼需要傳送。
lEvent引數表
值 |
意義 |
FD_READ | 欲接收 讀準備好 的通知. |
FD_WRITE | 欲接收 寫準備好 的通知. |
FD_OOB | 欲接收 帶邊資料到達 的通知. |
FD_ACCEPT | 欲接收 將要連線 的通知. |
FD_CONNECT | 欲接收 已連線好 的通知. |
FD_CLOSE | 欲接收 套介面關閉 的通知. |
③.舉例:
rc = WSAAsyncSelect(s,hWnd,wMsg,FD_READ|FD_WRITE);