Condividi tramite


Funzione RpcBindingCreateA (rpcdce.h)

La funzione RpcBindingCreate crea un nuovo handle di associazione RPC veloce basato su un modello fornito.

Sintassi

RPC_STATUS RpcBindingCreateA(
  [in]           RPC_BINDING_HANDLE_TEMPLATE_V1_A *Template,
  [in, optional] RPC_BINDING_HANDLE_SECURITY_V1_A *Security,
  [in, optional] RPC_BINDING_HANDLE_OPTIONS_V1    *Options,
  [out]          RPC_BINDING_HANDLE               *Binding
);

Parametri

[in] Template

RPC_BINDING_HANDLE_TEMPLATE struttura che descrive l'handle di associazione da creare tramite questa chiamata. Questi dati possono essere sovrascritti durante la chiamata, quindi l'API non mantiene un riferimento a questi dati. Il chiamante deve liberare la memoria usata da questa struttura quando l'API viene restituita.

[in, optional] Security

RPC_BINDING_HANDLE_SECURITY struttura che descrive le opzioni di sicurezza per questo handle di associazione. Questi dati possono essere sovrascritti durante la chiamata, quindi l'API non mantiene un riferimento a questi dati. Il chiamante deve liberare la memoria usata da questa struttura quando l'API viene restituita.

Questo parametro è facoltativo. Se questo parametro è impostato su NULL, verranno usate le impostazioni di sicurezza predefinite per RPC_BINDING_HANDLE_SECURITY.

[in, optional] Options

RPC_BINDING_HANDLE_OPTIONS struttura che descrive opzioni aggiuntive per l'handle di associazione. Questi dati possono essere sovrascritti durante la chiamata, quindi l'API non mantiene un riferimento a questi dati. Il chiamante deve liberare la memoria usata da questa struttura quando l'API viene restituita.

Questo parametro è facoltativo. Se questo parametro è impostato su NULL, verranno usate le opzioni predefinite per RPC_BINDING_HANDLE_OPTIONS.

[out] Binding

RPC_BINDING_HANDLE struttura che contiene l'handle di associazione appena creato. Se questa funzione non ha restituito RPC_S_OK, il contenuto di questa struttura non è definito. Per le chiamate RPC non locali, questo handle deve essere passato a RpcBindingBind.

Valore restituito

Questa funzione restituisce RPC_S_OK in caso di esito positivo; in caso contrario, viene restituito un codice di errore RPC_S_*. Per informazioni su questi codici di errore, vedere RPC Return Values.

Codice restituito Descrizione
RPC_S_OK
L'handle di associazione è stato creato correttamente.
RPC_S_CANNOT_SUPPORT
È stata richiesta una funzionalità obsoleta di RPC per questo handle di associazione.
Nota Le uniche sequenze di protocollo supportate per questa API sono ncalrpc; la scelta di un'altra sequenza di protocollo comporta la restituzione di questo codice di stato dell'errore.
 
 
Nota Per un elenco di codici di errore validi, vedere RPC Return Values.
 

Osservazioni

L'handle di associazione RPC restituito da questa API può essere usato con qualsiasi altra funzione che accetta un handle di associazione come parametro.

Tuttavia, prima di poter effettuare chiamate sull'handle di associazione, è necessario chiamare RpcBindingBind per rendere disponibile l'handle di associazione per le chiamate remote. L'API RpcBindingCreate non tocca la rete o tenta di comunicare con il server RPC, ma crea semplicemente una struttura di dati interna basata sui valori forniti nel modello. Una restituzione riuscita non indica che il server RPC è disponibile, accessibile o specificato correttamente.

Nota

L'intestazione rpcdce.h definisce RpcBindingCreate come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows Vista [app desktop | App UWP]
server minimo supportato Windows Server 2008 [app desktop | App UWP]
piattaforma di destinazione Finestre
intestazione rpcdce.h (include Rpc.h)
libreria Rpcrt4.lib
dll Rpcrt4.dll

Vedere anche

RPC_BINDING_HANDLE

RpcBindingBind