RPC_ASYNC_NOTIFICATION_INFO unión (rpcasync.h)
La unión de RPC_ASYNC_NOTIFICATION_INFO contiene información de notificación para las llamadas asincrónicas a procedimientos remotos. Esta información de notificación se puede configurar para los puertos de finalización de E/S (IOC), las llamadas a procedimientos asincrónicos de Windows (APC), la mensajería de Windows y la notificación de eventos de Windows.
Sintaxis
typedef union _RPC_ASYNC_NOTIFICATION_INFO {
struct {
PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
HANDLE hThread;
} APC;
struct {
HANDLE hIOPort;
DWORD dwNumberOfBytesTransferred;
DWORD_PTR dwCompletionKey;
LPOVERLAPPED lpOverlapped;
} IOC;
struct {
HWND hWnd;
UINT Msg;
} HWND;
HANDLE hEvent;
PKEVENT Event;
PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
} RPC_ASYNC_NOTIFICATION_INFO, *PRPC_ASYNC_NOTIFICATION_INFO;
Members
APC
Estructura usada para las notificaciones de llamada a procedimientos asincrónicos (APC) de Windows.
APC.NotificationRoutine
Llama a la rutina de notificación de APC definida por el usuario.
APC.hThread
Identificador del subproceso en el que se debe publicar la notificación APC. Un valor de cero indica el subproceso actual.
IOC
Estructura usada para la notificación en un puerto de finalización de E/S.
IOC.hIOPort
Identificador del puerto de finalización de E/S.
IOC.dwNumberOfBytesTransferred
Establezca por el cliente RPC antes de que se inicie la llamada asincrónica. Cuando la notificación se entrega al puerto de finalización, este valor se rellena en la ubicación a la que apunta el parámetro lpNumberOfBytesTransferred de la función GetQueuedCompletionStatus .
IOC.dwCompletionKey
Establezca por el cliente RPC antes de que se inicie la llamada asincrónica. Cuando la notificación se entrega al puerto de finalización, este valor se rellena en la ubicación a la que apunta el parámetro lpCompletionKey de la función GetQueuedCompletionStatus .
IOC.lpOverlapped
Establezca por el cliente RPC antes de que se inicie la llamada asincrónica. Cuando la notificación se entrega al puerto de finalización, este valor se rellena en la ubicación a la que apunta el parámetro lpOverlapped de la función GetQueuedCompletionStatus .
HWND
Campos usados para la notificación por un mensaje de Windows. Cuando el tiempo de ejecución de RPC publica el mensaje, wParam es cero y lParam apunta al identificador asincrónico de la llamada (el RPC_ASYNC_STATE).
Windows Server 2003 o posterior: La notificación a través del HWND está en desuso. No use este miembro.
HWND.hWnd
Identifica la ventana a la que se debe publicar el mensaje.
HWND.Msg
Mensaje que se va a publicar.
hEvent
Identificador usado para la notificación por un evento.
Event
NotificationRoutine
Windows Vista o versiones anteriores de Windows: COM usa esto internamente para devoluciones de llamada directas. No use este miembro.
Windows 7 o versiones posteriores de Windows: puntero de función opcional a un esquema de notificación definido por el usuario basado en la finalización de llamadas RPC. Por ejemplo, una aplicación podría llamar a SubmitThreadpoolWork desde la devolución de llamada de notificación.
Comentarios
Antes de Windows Vista y versiones anteriores de Windows, la unión de RPC_ASYNC_NOTIFICATION_INFO formaba parte de la estructura de RPC_ASYNC_STATE . Consulte el tema RPC_ASYNC_STATE para obtener información adicional.
Requisitos
Cliente mínimo compatible | Windows XP con SP2 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 con SP1 [solo aplicaciones de escritorio] |
Encabezado | rpcasync.h (incluir Rpc.h) |