Condividi tramite


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_* .

Nota Per un elenco di codici di errore validi, vedere Valori restituiti RPC.
 

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

Vedi anche

RpcServerSubscribeForNotification