Handle impliciti e espliciti

Per dichiarare un handle di serializzazione, usare il tipo di handle primitivo handle_t. Gli handle di serializzazione possono essere espliciti o impliciti. Specificare handle impliciti nell'ACF dell'applicazione usando l'attributo [implicit_handle]. Il compilatore MIDL genererà una variabile di handle di serializzazione globale. Le procedure di serializzazione con un handle implicito usano questa variabile globale per accedere a un contesto di serializzazione valido.

Quando si usa la codifica dei tipi, le routine generate che supportano la serializzazione di un particolare tipo usano l'handle implicito globale per accedere al contesto di serializzazione. Si noti che le routine remote potrebbero dover usare l'handle implicito come handle di associazione. Assicurarsi che l'handle implicito sia impostato su un handle di serializzazione valido prima di effettuare una chiamata di serializzazione.

Un handle esplicito viene specificato come parametro del prototipo della procedura di serializzazione nel file IDL oppure può essere specificato anche usando l'attributo [explicit_handle] nell'ACF. Il parametro handle esplicito viene usato per stabilire il contesto di serializzazione appropriato per la routine. Per stabilire il contesto corretto in caso di serializzazione dei tipi, il compilatore genera le routine di supporto che usano il parametro esplicito handle_t come handle di serializzazione. È necessario fornire un handle di serializzazione valido quando si chiama una routine di serializzazione o di tipo di serializzazione.