Compartilhar via


Função RpcBindingCreateW (rpcdce.h)

A função RpcBindingCreate cria um novo identificador de associação RPC rápido com base em um modelo fornecido.

Sintaxe

RPC_STATUS RpcBindingCreateW(
  [in]           RPC_BINDING_HANDLE_TEMPLATE_V1_W *Template,
  [in, optional] RPC_BINDING_HANDLE_SECURITY_V1_W *Security,
  [in, optional] RPC_BINDING_HANDLE_OPTIONS_V1    *Options,
  [out]          RPC_BINDING_HANDLE               *Binding
);

Parâmetros

[in] Template

RPC_BINDING_HANDLE_TEMPLATE estrutura que descreve o identificador de associação a ser criado por essa chamada. Esses dados podem ser substituídos durante a chamada, portanto, a API não mantém uma referência a esses dados. O chamador deve liberar a memória usada por essa estrutura quando a API retornar.

[in, optional] Security

RPC_BINDING_HANDLE_SECURITY estrutura que descreve as opções de segurança para esse identificador de associação. Esses dados podem ser substituídos durante a chamada, portanto, a API não mantém uma referência a esses dados. O chamador deve liberar a memória usada por essa estrutura quando a API retornar.

Esse parâmetro é opcional. Se esse parâmetro for definido como NULL, as configurações de segurança padrão para RPC_BINDING_HANDLE_SECURITY serão usadas.

[in, optional] Options

RPC_BINDING_HANDLE_OPTIONS estrutura que descreve opções adicionais para o identificador de associação. Esses dados podem ser substituídos durante a chamada, portanto, a API não mantém uma referência a esses dados. O chamador deve liberar a memória usada por essa estrutura quando a API retornar.

Esse parâmetro é opcional. Se esse parâmetro for definido como NULL, as opções padrão para RPC_BINDING_HANDLE_OPTIONS serão usadas.

[out] Binding

RPC_BINDING_HANDLE estrutura que contém o identificador de associação recém-criado. Se essa função não retornar RPC_S_OK, o conteúdo dessa estrutura será indefinido. Para chamadas RPC não locais, esse identificador deve ser passado para RpcBindingBind.

Valor de retorno

Essa função retorna RPC_S_OK com êxito; caso contrário, um código de erro RPC_S_* será retornado. Para obter informações sobre esses códigos de erro, consulte RPC Return Values.

Código de retorno Descrição
RPC_S_OK
O identificador de associação foi criado com êxito.
RPC_S_CANNOT_SUPPORT
Um recurso obsoleto do RPC foi solicitado para esse identificador de associação.
Observação As únicas sequências de protocolo com suporte para essa API são ncalrpc; escolher outra sequência de protocolo resulta no retorno desse código de status de erro.
 
 
Observação Para obter uma lista de códigos de erro válidos, consulte RPC Return Values.
 

Observações

O identificador de associação RPC retornado por essa API pode ser usado com qualquer outra função que aceite um identificador de associação como um parâmetro.

No entanto, antes que qualquer chamada possa ser feita no identificador de associação, RpcBindingBind deve ser chamado para disponibilizar o identificador de associação para chamadas remotas. A API RpcBindingCreate não toca na rede nem tenta se comunicar com o servidor RPC. Em vez disso, ele simplesmente cria uma estrutura de dados interna com base nos valores fornecidos no modelo. Um retorno bem-sucedido não indica que o servidor RPC está disponível, acessível ou especificado corretamente.

Nota

O cabeçalho rpcdce.h define RpcBindingCreate 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 Vista [aplicativos da área de trabalho | Aplicativos UWP]
servidor com suporte mínimo Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
da Plataforma de Destino Windows
cabeçalho rpcdce.h (inclua Rpc.h)
biblioteca Rpcrt4.lib
de DLL Rpcrt4.dll

Consulte também

RPC_BINDING_HANDLE

RpcBindingBind