Поделиться через


Структура WSACOMPLETION (winsock2.h)

Структура WSACOMPLETION задает параметры уведомлений о завершении для вызовов элементов управления вводом-выводом, выполненных в зарегистрированное пространство имен.

Синтаксис

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

Параметры, необходимые для завершения обратного вызова. Структуры в объединении параметров указывают сведения, необходимые для выполнения обратного вызова каждого заданного типа. Например, структура WindowMessage должна быть заполнена, если для параметра Type задано значение NSP_NOTIFY_HWND.

Parameters.WindowMessage

Parameters.WindowMessage.hWnd

Тип: HWND Дескриптор Windows.

Parameters.WindowMessage.uMsg

Тип: UINT Дескриптор сообщения.

Parameters.WindowMessage.context

Тип: WPARAM Контекст сообщения или дескриптора.

Parameters.Event

Parameters.Event.lpOverlapped

Тип: LPWSAOVERLAPPED Указатель на структуру WSAOVERLAPPED .

Parameters.Apc

Parameters.Apc.lpOverlapped

Тип: LPWSAOVERLAPPED Указатель на структуру WSAOVERLAPPED .

Parameters.Apc.lpfnCompletionProc

Тип: _In_opt_ LPWSAOVERLAPPED_COMPLETION_ROUTINE

Указатель на процедуру завершения, предоставляемую приложением.

Parameters.Port

Parameters.Port.lpOverlapped

Тип: LPWSAOVERLAPPED Указатель на структуру WSAOVERLAPPED .

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