union RPC_ASYNC_NOTIFICATION_INFO (rpcasync.h)
L’union RPC_ASYNC_NOTIFICATION_INFO contient des informations de notification pour les appels de procédure distante asynchrone. Ces informations de notification peuvent être configurées pour les ports d’achèvement d’E/S (IOC), les appels de procédure asynchrone Windows (APC), la messagerie Windows et la notification d’événements Windows.
Syntaxe
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;
Membres
APC
Structure utilisée pour les notifications d’appel de procédure asynchrone (APC) Windows.
APC.NotificationRoutine
Appelle la routine de notification APC définie par l’utilisateur.
APC.hThread
Gérez le thread sur lequel la notification APC doit être publiée. La valeur zéro indique le thread actuel.
IOC
Structure utilisée pour la notification sur un port d’achèvement d’E/S.
IOC.hIOPort
Gérez le port d’achèvement des E/S.
IOC.dwNumberOfBytesTransferred
Défini par le client RPC avant le démarrage de l’appel asynchrone. Lorsque la notification est remise au port d’achèvement, cette valeur est renseignée à l’emplacement vers lequel pointe le paramètre lpNumberOfBytesTransferred de la fonction GetQueuedCompletionStatus .
IOC.dwCompletionKey
Défini par le client RPC avant le démarrage de l’appel asynchrone. Lorsque la notification est remise au port d’achèvement, cette valeur est renseignée à l’emplacement vers lequel pointe le paramètre lpCompletionKey de la fonction GetQueuedCompletionStatus .
IOC.lpOverlapped
Défini par le client RPC avant le démarrage de l’appel asynchrone. Lorsque la notification est remise au port d’achèvement, cette valeur est renseignée à l’emplacement vers lequel pointe le paramètre lpOverlapped de la fonction GetQueuedCompletionStatus .
HWND
Champs utilisés pour la notification par un message Windows. Lorsque l’exécution RPC publie le message, wParam est égal à zéro et lParam pointe vers le handle asynchrone de l’appel ( le RPC_ASYNC_STATE).
Windows Server 2003 ou version ultérieure : La notification via le HWND est déconseillée. N’utilisez pas ce membre.
HWND.hWnd
Identifie la fenêtre dans laquelle le message doit être publié.
HWND.Msg
Message à publier.
hEvent
Handle utilisé pour la notification par un événement.
Event
NotificationRoutine
Windows Vista ou versions antérieures de Windows : COM l’utilise en interne pour les rappels directs. N’utilisez pas ce membre.
Windows 7 ou versions ultérieures de Windows : pointeur de fonction facultatif vers un schéma de notification défini par l’utilisateur basé sur l’achèvement des appels RPC. Par exemple, une application peut appeler SubmitThreadpoolWork à partir du rappel de notification.
Notes
Avant Windows Vista et les versions antérieures de Windows, l’union RPC_ASYNC_NOTIFICATION_INFO faisait partie de la structure RPC_ASYNC_STATE . Pour plus d’informations, consultez la rubrique RPC_ASYNC_STATE .
Spécifications
Client minimal pris en charge | Windows XP avec SP2 [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2003 avec SP1 [applications de bureau uniquement] |
En-tête | rpcasync.h (inclure Rpc.h) |