WSACOMPLETION 結構 (winsock2.h)
WSACOMPLETION結構會指定對已註冊命名空間進行之 I/O 控制項呼叫的完成通知設定。
語法
typedef struct _WSACOMPLETION {
WSACOMPLETIONTYPE Type;
union {
struct {
HWND hWnd;
UINT uMsg;
WPARAM context;
} WindowMessage;
struct {
LPWSAOVERLAPPED lpOverlapped;
} Event;
struct {
LPWSAOVERLAPPED lpOverlapped;
LPWSAOVERLAPPED_COMPLETION_ROUTINE lpfnCompletionProc;
} Apc;
struct {
LPWSAOVERLAPPED lpOverlapped;
HANDLE hPort;
ULONG_PTR Key;
} Port;
} Parameters;
} WSACOMPLETION, *PWSACOMPLETION, *LPWSACOMPLETION;
成員
Type
類型: WSACOMPLETIONTYPE
需要完成通知的類型。 請參閱<備註>。
Parameters
完成回呼所需的參數。 Parameters 等位內的結構會指定完成每個指定型別回呼所需的資訊。 例如,當 Type設定為 NSP_NOTIFY_HWND 時,必須填入WindowMessage結構。
Parameters.WindowMessage
Parameters.WindowMessage.hWnd
類型:HWNDWindows 控制碼。
Parameters.WindowMessage.uMsg
類型:UINT訊息控制碼。
Parameters.WindowMessage.context
類型:WPARAM訊息或控制碼的內容。
Parameters.Event
Parameters.Event.lpOverlapped
類型:LPWSAOVERLAPPEDWSAOVERLAPPED結構的指標。
Parameters.Apc
Parameters.Apc.lpOverlapped
類型:LPWSAOVERLAPPEDWSAOVERLAPPED結構的指標。
Parameters.Apc.lpfnCompletionProc
類型:_In_opt_ LPWSAOVERLAPPED_COMPLETION_ROUTINE
應用程式提供完成常式的指標。
Parameters.Port
Parameters.Port.lpOverlapped
類型:LPWSAOVERLAPPEDWSAOVERLAPPED結構的指標。
Parameters.Port.hPort
類型:HANDLE埠的控制碼。
Parameters.Port.Key
類型:ULONG_PTR索引鍵的指標。
備註
WSACOMPLETION結構可根據Type中提供的值,以下列任何格式提供回呼:
回呼格式 | 類型值 |
---|---|
輪詢 | NSP_NOTIFY_IMMEDIATELY |
視窗訊息 | NSP_NOTIFY_HWND |
事件 | NSP_NOTIFY_EVENT |
APC | NSP_NOTIFY_APC |
完成埠 | NSP_NOTIFY_PORT |
對於封鎖函式,請將 WSACOMPLETION 結構設定為 null。
規格需求
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限桌面應用程式] |
標頭 | winsock2.h |