Função RpcServerUnregisterIf (rpcdce.h)
A função RpcServerUnregisterIf remove uma interface do registro de biblioteca em tempo de execução RPC.
Sintaxe
RPC_STATUS RpcServerUnregisterIf(
RPC_IF_HANDLE IfSpec,
UUID *MgrTypeUuid,
unsigned int WaitForCallsToComplete
);
Parâmetros
IfSpec
Interface a ser removida do registro.
Especifique um valor nulo para remover todas as interfaces registradas anteriormente com o valor UUID do tipo especificado no parâmetro MgrTypeUuid .
MgrTypeUuid
Ponteiro para o tipo UUID do EPV (vetor de ponto de entrada) do gerenciador a ser removido do registro. O valor de MgrTypeUuid deve ser o mesmo valor fornecido em uma chamada para a função RpcServerRegisterIf , a função RpcServerRegisterIf2 ou a função RpcServerRegisterIfEx .
Especifique um valor nulo para remover a interface especificada no parâmetro IfSpec para todos os UUIDs de tipo registrados anteriormente do registro.
Especifique um UUID nulo para remover o EPV do gerenciador padrão gerado por MIDL do registro. Nesse caso, todos os EPVs de gerente registrados com um UUID de tipo não nulo permanecem registrados.
WaitForCallsToComplete
Sinalizador que indica se é necessário remover a interface do registro imediatamente ou aguardar até que todas as chamadas atuais sejam concluídas.
Especifique um valor zero para desconsiderar chamadas em andamento e remover a interface do registro imediatamente. Especifique qualquer valor diferente de zero para aguardar até que todas as chamadas ativas sejam concluídas.
Valor retornado
Valor | Significado |
---|---|
|
A chamada foi bem-sucedida. |
|
O tipo de gerenciador é desconhecido. |
|
A interface é desconhecida. |
Comentários
Um servidor chama RpcServerUnregisterIf para remover a associação entre uma interface e um EPV de gerenciador. Para especificar o EPV do gerenciador a ser removido no parâmetro MgrTypeUuid , forneça o valor UUID do tipo especificado em uma chamada para RpcServerRegisterIf. Depois que ele é removido do registro, uma interface não está mais disponível para aplicativos cliente.
Quando uma interface é removida do registro, a biblioteca de tempo de execução RPC para de aceitar novas chamadas para essa interface. As chamadas que estão sendo executadas atualmente na interface têm permissão para serem concluídas, incluindo retornos de chamada.
A tabela a seguir resume o comportamento de RpcServerUnregisterIf.
IfSpec | MgrTypeUuid | Comportamento |
---|---|---|
Não nulo | Não nulo | Remove do registro o EPV do gerenciador associado aos parâmetros especificados. |
Não nulo | NULL | Remove todos os EPVs de gerente associados ao parâmetro IfSpec . |
NULL | Não nulo | Remove todos os EPVs de gerente associados ao parâmetro MgrTypeUuid . |
NULL | NULL | Remove todos os EPVs de gerente. Essa chamada tem o efeito de impedir que o servidor receba novas chamadas de procedimento remoto porque todos os EPVs do gerenciador para todas as interfaces não foram registrados. |
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | rpcdce.h (inclua Rpc.h) |
Biblioteca | Rpcrt4.lib |
DLL | Rpcrt4.dll |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de