uuid (attributo)
L'attributo di interfaccia [uuid] designa un identificatore univoco universale (UUID) assegnato all'interfaccia e che lo distingue da altre interfacce.
uuid (string-uuid)
uuid ("string-uuid")
-
string-uuid
-
Specifica una stringa costituita da 8 cifre esadecimali seguite da un trattino, quindi da tre gruppi di 4 cifre esadecimali ognuna seguita da un trattino, quindi da 12 cifre esadecimali. È possibile racchiudere la stringa UUID tra virgolette, tranne quando si usa l'opzione del compilatore MIDL /osf.
La libreria di runtime usa l'UUID dell'interfaccia designato dall'attributo [uuid] per stabilire la comunicazione tra le applicazioni client e server. L'attributo [uuid] può essere visualizzato nell'elenco di attributi dell'interfaccia per un'interfaccia RPC o un'interfaccia COM.
Per un'interfaccia RPC, l'elenco di attributi dell'interfaccia deve includere l'attributo [uuid] o l'attributo [local] e quello scelto deve essere esattamente una volta. Se l'elenco include l'attributo [uuid], può includere anche l'attributo [version].
Per un'interfaccia COM (identificata dall'attributo di interfaccia [object]), l'elenco di attributi dell'interfaccia deve includere l'attributo [uuid], ma non può includere l'attributo [version]. L'elenco per un'interfaccia COM può includere l'attributo [local] anche se è presente l'attributo [uuid].
Microsoft RPC supporta un'estensione per DCE IDL che consente di racchiudere l'UUID tra virgolette doppie ("" ""). Il formato tra virgolette è necessario per i preprocessori del compilatore C che interpretano i numeri UUID come numeri a virgola mobile.
Tutti i valori UUID devono essere generati dal computer per garantire l'univocità. Usare l'utilità Uuidgen per generare valori UUID univoci.
L'UUID e i numeri di versione dell'interfaccia vengono usati per determinare se il client può eseguire l'associazione al server. Affinché il client sia associato al server, l'UUID specificato nelle interfacce client e server deve essere lo stesso.
Si noti che un'interfaccia senza attributi può essere importata in un file IDL di base. Tuttavia, l'interfaccia deve contenere solo tipi di dati senza procedure. Se nell'interfaccia è contenuta anche una routine, è necessario specificare un attributo locale o UUID.
uuid(6B29FC40-CA47-1067-B31D-00DD010662DA)
uuid("6B29FC40-CA47-1067-B31D-00DD010662DA")