共用方式為


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

另請參閱

WSANSPIoctl