Funzione RpcServerInterfaceGroupDeactivate (rpcdce.h)
La funzione RpcServerInterfaceGroupDeactivate indica al runtime RPC di tentare di chiudere il gruppo di interfacce specificato, facoltativamente interrompendo l'operazione se esiste un'attività client in sospeso.
Sintassi
RPC_STATUS RpcServerInterfaceGroupDeactivate(
[in] RPC_INTERFACE_GROUP IfGroup,
[in] unsigned long ForceDeactivation
);
Parametri
[in] IfGroup
Un RPC_INTERFACE_GROUP da RpcServerInterfaceGroupCreate che definisce il gruppo di interfacce da disattivare
[in] ForceDeactivation
Se TRUE, il runtime RPC deve ignorare l'attività client e disattivare in modo incondizionato il gruppo di interfacce. Se FALSE, l'operazione deve essere interrotta se si verifica una nuova attività.
Valore restituito
Valore | Significato |
---|---|
|
La chiamata ha avuto esito positivo. |
|
ForceDeactivation è FALSE ed è presente un'attività client in sospeso. |
Commenti
RpcServerInterfaceGroupDeactivate viene usato dalle applicazioni server per annullare la registrazione delle interfacce e degli endpoint in un gruppo di interfacce. Esegue la maggior parte del lavoro di arresto che le applicazioni server RPC devono eseguire. Esegue le operazioni seguenti:
- Annulla la registrazione degli endpoint e delle interfacce dall'endpoint RPC.
- Annullare la registrazione degli endpoint dal runtime del server.
- Annulla la registrazione delle interfacce dal runtime del server.
- Indica al runtime di interrompere l'ascolto delle chiamate se non sono presenti altre interfacce.
Se ForceDeactivation è FALSE, RpcServerInterfaceGroupDeactivate disattiva solo il gruppo di interfacce se non è presente alcuna attività client in sospeso. Se viene restituita una nuova attività durante il processo di disattivazione, viene restituita RPC_S_SERVER_TOO_BUSY . In questo caso, l'operazione viene eseguito il rollback e il gruppo di interfacce continuerà a ricevere e inviare chiamate.
Se ForceDeactivation è TRUE, RpcServerInterfaceGroupDeactivate non riesce.
Le applicazioni di servizio possono chiamare RpcServerInterfaceGroupDeactivate con ForceDeactivation impostata su FALSE dalla funzione di callback inattiva RpcServerInterfaceGroupCreate. Se usato in combinazione con i trigger di avvio del servizio RPC, ciò consente loro di arrestare in modo sicuro senza chiamate mancanti da potenziali client.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 8 [solo app desktop] |
Server minimo supportato | Windows Server 2012 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | rpcdce.h (include Rpc.h) |
Libreria | Rpcrt4.lib |
DLL | Rpcrt4.dll |