Структура 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 |