Compartir a través de


Función RpcServerUnregisterIf (rpcdce.h)

La función RpcServerUnregisterIf quita una interfaz del registro de biblioteca en tiempo de ejecución rpc.

Sintaxis

RPC_STATUS RpcServerUnregisterIf(
  RPC_IF_HANDLE IfSpec,
  UUID          *MgrTypeUuid,
  unsigned int  WaitForCallsToComplete
);

Parámetros

IfSpec

Interfaz que se va a quitar del registro.

Especifique un valor NULL para quitar todas las interfaces registradas anteriormente con el valor UUID de tipo especificado en el parámetro MgrTypeUuid .

MgrTypeUuid

Puntero al tipo UUID del vector de punto de entrada del administrador (EPV) que se va a quitar del registro. El valor de MgrTypeUuid debe ser el mismo que se proporcionó en una llamada a la función RpcServerRegisterIf , rpcServerRegisterIf2 o a la función RpcServerRegisterIfEx .

Especifique un valor NULL para quitar la interfaz especificada en el parámetro IfSpec para todos los UUID de tipo registrados anteriormente del registro.

Especifique un UUID nulo para quitar el administrador predeterminado EPV generado por MIDL del registro. En este caso, todos los EPV de administrador registrados con un UUID de tipo no nulo permanecen registrados.

WaitForCallsToComplete

Marca que indica si se va a quitar la interfaz del Registro inmediatamente o esperar hasta que se completen todas las llamadas actuales.

Especifique un valor de cero para omitir las llamadas en curso y quitar la interfaz del Registro inmediatamente. Especifique cualquier valor distinto de cero para esperar hasta que se completen todas las llamadas activas.

Valor devuelto

Valor Significado
RPC_S_OK
La llamada se realizó correctamente.
RPC_S_UNKNOWN_MGR_TYPE
No se conoce el tipo de administrador.
RPC_S_UNKNOWN_IF
No se conoce la interfaz.
 
Nota Para obtener una lista de códigos de error válidos, consulte Rpc Return Values.
 

Comentarios

Un servidor llama a RpcServerUnregisterIf para quitar la asociación entre una interfaz y un administrador EPV. Para especificar el administrador EPV que se va a quitar en el parámetro MgrTypeUuid , proporcione el valor UUID de tipo que se especificó en una llamada a RpcServerRegisterIf. Después de quitarlo del Registro, una interfaz ya no está disponible para las aplicaciones cliente.

Cuando se quita una interfaz del Registro, la biblioteca en tiempo de ejecución rpc deja de aceptar nuevas llamadas para esa interfaz. Las llamadas que se están ejecutando actualmente en la interfaz pueden completarse, incluidas las devoluciones de llamada.

En la tabla siguiente se resume el comportamiento de RpcServerUnregisterIf.

IfSpec MgrTypeUuid Comportamiento
No null No null Quita del registro el administrador EPV asociado a los parámetros especificados.
No null NULL Quita todos los EPV de administrador asociados al parámetro IfSpec .
NULL No null Quita todos los EPV de administrador asociados al parámetro MgrTypeUuid .
NULL NULL Quita todos los EPV de administrador. Esta llamada tiene el efecto de impedir que el servidor reciba nuevas llamadas a procedimientos remotos porque se han anulado el registro de todas las EPV de administrador para todas las interfaces.
 
 
Nota Si el valor de IfSpec es NULL, esta función dejará registradas las interfaces de escucha automática . Las interfaces de escucha automática deben quitarse del registro individualmente. Consulte RpcServerRegisterIfEx para obtener más detalles.
 

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado rpcdce.h (incluir Rpc.h)
Library Rpcrt4.lib
Archivo DLL Rpcrt4.dll

Consulte también

RPC_MGR_EPV

Registrar interfaces

RpcServerRegisterIf

RpcServerRegisterIf2

RpcServerRegisterIfEx

RpcServerUnregisterIfEx