estrutura RPC_BINDING_HANDLE_TEMPLATE_V1_A (rpcdce.h)

A estrutura RPC_BINDING_HANDLE_TEMPLATE_V1 contém as opções básicas com as quais criar um identificador de associação RPC.

Sintaxe

typedef struct _RPC_BINDING_HANDLE_TEMPLATE_V1_A {
  unsigned long Version;
  unsigned long Flags;
  unsigned long ProtocolSequence;
  unsigned char *NetworkAddress;
  unsigned char *StringEndpoint;
  union {
    unsigned char *Reserved;
  } u1;
  UUID          ObjectUuid;
} RPC_BINDING_HANDLE_TEMPLATE_V1_A, *PRPC_BINDING_HANDLE_TEMPLATE_V1_A;

Membros

Version

A versão dessa estrutura. Para RPC_BINDING_HANDLE_TEMPLATE_V1 isso deve ser definido como 1.

Flags

Valores de sinalizador que descrevem propriedades específicas do modelo RPC.

Valor Significado
RPC_BHT_OBJECT_UUID_VALID
O membro ObjectUuid contém um valor válido. Se esse sinalizador não estiver definido, o membro ObjectUuid não conterá uma UUID válida.

ProtocolSequence

Uma ID de sequência de protocolo associada a esse identificador de associação. Pode ser um dos seguintes valores.

  • RPC_PROTSEQ_LRPC – especifica o RPC local.
  • RPC_PROTSEQ_TCP – especifica RPC por TCP/IP.
  • RPC_PROTSEQ_NMP – especifica RPC sobre pipes nomeados.
  • RPC_PROTSEQ_HTTP – especifica RPC por HTTP.

NetworkAddress

Ponteiro para uma representação de cadeia de caracteres do endereço de rede ao qual associar.

StringEndpoint

Ponteiro para uma representação de cadeia de caracteres do ponto de extremidade ao qual associar. Se um ponto de extremidade dinâmico for usado, defina esse membro como NULL. Depois que o ponto de extremidade for resolvido, use RpcBindingToStringBinding para obtê-lo.

u1

u1.Reserved

Reservado. Esse membro deve ser definido como NULL.

ObjectUuid

A UUID do objeto remoto. A semântica para essa UUID é a mesma de uma associação de cadeia de caracteres. Depois que o identificador de associação for criado, chame RpcBindingSetObject para alterar a UUID conforme necessário.

Comentários

Os identificadores de associação rápida são ligeiramente diferentes dos identificadores de associação "clássicos" na maneira como são tratados durante as chamadas para RpcBindingReset. RpcBindingReset é uma chamada não operada para identificadores de associação rápida estática. No entanto, para identificadores de associação clássicos, rpcBindingReset converte um identificador de associação estático em um dinâmico para preservar a compatibilidade com versões anteriores.

A tabela a seguir demonstra o comportamento de identificadores de associação estáticos e dinâmicos em relação a RpcBindingReset e RpcEpResolveBinding.

Tipo de Ponto de Extremidade Estático Dinâmico
Tipo de identificador de associação Rápido Clássico Rápido Clássico
RpcBindingReset Sem operações Converte em dinâmico Remove o ponto de extremidade resolvido se um estiver presente Remove o ponto de extremidade resolvido se um estiver presente
RpcEpResolveBinding Sem operações Sem operações Resolve o ponto de extremidade se não for resolvido anteriormente Resolve o ponto de extremidade se não for resolvido anteriormente

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008 [somente aplicativos da área de trabalho]
Cabeçalho rpcdce.h (inclua Rpc.h)

Confira também

RPC_BINDING_HANDLE

RpcBindingBind

RpcBindingCreate