Función RpcServerUnsubscribeForNotification (rpcasync.h)
La función RpcServerUnsubscribeForNotification cancela la suscripción al servidor de las notificaciones RPC.
Sintaxis
RPC_STATUS RpcServerUnsubscribeForNotification(
[in] RPC_BINDING_HANDLE Binding,
[in] RPC_NOTIFICATIONS Notification,
[out] unsigned long *NotificationsQueued
);
Parámetros
[in] Binding
RPC_BINDING_HANDLE estructura que contiene el identificador de enlace de la llamada RPC actual especificada en una llamada anterior a RpcServerSubscribeForNotification. Si se llama a esta función en el mismo subproceso en el que RPC ha enviado una llamada, este parámetro se puede establecer en NULL; de lo contrario, se debe pasar un identificador de enlace explícito en este parámetro.
[in] Notification
Valor de la enumeración RPC_NOTIFICATIONS que especifica el tipo de notificación solicitada desde RPC por el servidor. Las notificaciones deben cancelarse individualmente, no se admiten varios valores.
Windows Vista: Actualmente, solo se admiten RpcNotificationClientDisconnect y RpcNotificationCallCancel . Si se especifica cualquier otro valor para este parámetro, se devuelve el código de error RPC_S_CANNOT_SUPPORT.
[out] NotificationsQueued
Puntero necesario a un valor que recibe el número de notificaciones en cola del tiempo de ejecución rpc para la llamada RPC especificada. Se debe proporcionar el puntero; no es opcional.
El código debe realizar un seguimiento del número de notificaciones que recibe. Al cancelar la suscripción a las notificaciones RPC, debe comprobar si el número de notificaciones que el tiempo de ejecución de RPC en cola coincide con el número de notificaciones que recibió. Si los números no coinciden, algunas notificaciones podrían seguir entrantes en otro subproceso. Debe retrasar la limpieza del estado de notificación hasta que reciba todas las notificaciones entrantes.
Valor devuelto
Esta función devuelve RPC_S_OK si se realiza correctamente; De lo contrario, se devuelve un código de error RPC_S_*.
Comentarios
Se debe llamar a RpcServerUnsubscribeForNotification para cada identificador de enlace RPC que también haya llamado a RpcServerSubscribeForNotification para la llamada RPC asociada. Se debe llamar a esta API antes de que se complete la llamada RPC asociada; de lo contrario, los resultados no están definidos y podrían provocar inestabilidad de la aplicación.
Las notificaciones no recuperadas después de que se devuelva esta API.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista, Windows XP con SP2 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008, Windows Server 2003 con SP1 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | rpcasync.h (incluir Rpc.h) |
Library | Rpcrt4.lib |
Archivo DLL | Rpcrt4.dll |