Função RpcNsBindingUnexportW (rpcnsi.h)
A função RpcNsBindingUnexport remove os identificadores de associação de uma interface e objetos de uma entrada no banco de dados name-service.
Sintaxe
RPC_STATUS RpcNsBindingUnexportW(
unsigned long EntryNameSyntax,
RPC_WSTR EntryName,
RPC_IF_HANDLE IfSpec,
UUID_VECTOR *ObjectUuidVec
);
Parâmetros
EntryNameSyntax
Sintaxe de EntryName.
Para usar a sintaxe especificada na entrada de valor do Registro HKEY_LOCAL_MACHINE\Software\Microsoft\Rpc\NameService\DefaultSyntax, forneça um valor de RPC_C_NS_SYNTAX_DEFAULT.
EntryName
Ponteiro para o nome de entrada do qual remover identificadores de associação e UUIDs de objeto.
IfSpec
Especificação de interface para os identificadores de associação a serem removidos do banco de dados do serviço de nome. Um valor de parâmetro nulo indica que não é necessário cancelar a exibição de identificadores de associação (somente UUIDs de objeto devem ser não relatadas).
ObjectUuidVec
Ponteiro para um vetor de UUIDs de objeto que o servidor não deseja mais oferecer. O aplicativo constrói esse vetor. Um valor nulo indica que não há UUIDs de objeto para desexportar (somente identificadores de associação devem ser não relatados).
Valor de retorno
Valor | Significado |
---|---|
|
A chamada foi bem-sucedida. |
|
A opção de versão é inválida. |
|
A sintaxe de nome é inválida. |
|
A sintaxe de nome não tem suporte. |
|
O nome está incompleto. |
|
A entrada nome-serviço não foi encontrada. |
|
O serviço de nome não está disponível. |
|
A interface não foi encontrada. |
|
Nem todos os objetos não são relatados. |
Observações
A função RpcNsBindingUnexport
Em vigor com o Windows 2000, o ambiente de tempo de execução do RPC usa o Active Directory como seu banco de dados de serviço de nome. Isso significa que as entradas não relatadas autorizadas serão removidas do cache local e do Active Directory. Unexports não autorizados serão removidos apenas do cache local. Consulte controle de acesso na seção Segurança do SDK (Platform Software Development Kit) para obter mais informações sobre listas de autorização e controle de acesso.
Se RpcNsBindingUnexport não encontrar identificadores de associação para a interface especificada, a função retornará um código de status RPC_S_INTERFACE_NOT_FOUND e não exibirá as UUIDs do objeto, se alguma tiver sido especificada.
Se um ou mais identificadores de associação para a interface especificada forem encontrados e não forem acessados sem erros, RpcNsBindingUnexport desexporta os UUIDs do objeto especificado, se houver.
Se qualquer um dos UUIDs de objeto especificado não tiver sido encontrado, RpcNsBindingUnexport retornará o código de status RPC_S_NOT_ALL_OBJS_UNEXPORTED.
Além de chamar RpcNsBindingUnexport, um servidor também deve chamar a função RpcEpUnregister para cancelar o registro dos pontos de extremidade que o servidor registrou anteriormente no banco de dados de mapa de ponto de extremidade local.
Depois de criada, uma entrada de servidor persiste, mesmo quando todos os identificadores de associação e UUIDs são removidos. Uma entrada de servidor deve ter pelo menos um identificador de associação para existir. Como resultado, a exportação apenas de UUIDs para uma entrada inexistente não tem efeito e a não comunicação de todos os identificadores de associação exclui a entrada.
Use RpcNsBindingUnexport criteriosamente. Para manter um servidor ativado automaticamente disponível, você deve deixar seus identificadores de associação no banco de dados de serviço de nome entre os horários em que os processos do servidor são ativados. No entanto, com associações dinâmicas, se você não cancelar a exibição de identificadores de associação, o Active Directory poderá se tornar tão grande quanto incontrolável.
Portanto, antes de chamar essa função, tenha em mente quanto tempo espera que o servidor fique indisponível e o tipo de associação em uso. Se você estiver usando associações estáticas, reserve essa função para quando esperar que um servidor fique indisponível por um tempo estendido, por exemplo, quando ele estiver sendo permanentemente removido do serviço.
Nota
O cabeçalho rpcnsi.h define RpcNsBindingUnexport como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 2000 Professional [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows 2000 Server [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | rpcnsi.h (inclua Rpc.h) |
biblioteca | Rpcns4.lib |
de DLL |
Rpcns4.dll |
Consulte também
RpcEpUnregister