Funzione RpcServerUnsubscribeForNotification (rpcasync.h)
La funzione RpcServerUnsubscribeForNotification annulla la sottoscrizione del server dalle notifiche RPC.
Sintassi
RPC_STATUS RpcServerUnsubscribeForNotification(
[in] RPC_BINDING_HANDLE Binding,
[in] RPC_NOTIFICATIONS Notification,
[out] unsigned long *NotificationsQueued
);
Parametri
[in] Binding
RPC_BINDING_HANDLE struttura che contiene l'handle di associazione per la chiamata RPC corrente specificata in una chiamata precedente a RpcServerSubscribeForNotification. Se questa funzione viene chiamata nello stesso thread in cui RPC ha inviato una chiamata, questo parametro può essere impostato su NULL; in caso contrario, è necessario passare un handle di associazione esplicito in questo parametro.
[in] Notification
Valore dell'enumerazione RPC_NOTIFICATIONS che specifica il tipo di notifica richiesto da RPC dal server. Le notifiche devono essere annullate singolarmente, più valori non sono supportati.
Windows Vista: Attualmente sono supportati solo RpcNotificationClientDisconnect e RpcNotificationCallCancel . Se per questo parametro viene specificato qualsiasi altro valore, viene restituito il codice di errore RPC_S_CANNOT_SUPPORT.
[out] NotificationsQueued
Puntatore obbligatorio a un valore che riceve il numero di notifiche accodate dal runtime RPC per la chiamata RPC specificata. Il puntatore deve essere fornito; non è facoltativo.
Il codice deve tenere traccia del numero di notifiche ricevute. Quando si annulla la sottoscrizione dalle notifiche RPC, è necessario verificare se il numero di notifiche che il runtime RPC ha accodato corrisponde al numero di notifiche ricevute. Se i numeri non corrispondono, alcune notifiche potrebbero comunque essere in ingresso in un altro thread. È consigliabile ritardare la pulizia dello stato di notifica fino a quando non si ricevono tutte le notifiche in ingresso.
Valore restituito
Questa funzione restituisce RPC_S_OK in caso di esito positivo; in caso contrario, viene restituito un codice di errore RPC_S_* .
Commenti
RpcServerUnsubscribeForNotification deve essere chiamato per ogni handle di associazione RPC che ha anche chiamato RpcServerSubscribeForNotification per la chiamata RPC associata. Questa API deve essere chiamata prima del completamento della chiamata RPC associata; in caso contrario, i risultati non sono definiti e potrebbero causare l'instabilità dell'applicazione.
Le notifiche non rilevate possono essere recuperate dopo che questa API restituisce.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista, Windows XP con SP2 [solo app desktop] |
Server minimo supportato | Windows Server 2008, Windows Server 2003 con SP1 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | rpcasync.h (include Rpc.h) |
Libreria | Rpcrt4.lib |
DLL | Rpcrt4.dll |