Partager via


Attributs de type

Les attributs de type sont les attributs MIDL qui peuvent être appliqués aux déclarations de type :

L'[switch_type] attribut désigne le type d’un discriminateur d’union. Cet attribut s’applique uniquement à une union non encapsulée.

Un handle de contexte est un pointeur avec un attribut [context_handle]. L’attribut [context_handle] vous permet d’écrire des procédures qui conservent des informations d’état entre les appels de procédure distante. Un handle de contexte avec une valeur non null représente le contexte enregistré et sert deux objectifs :

  • Côté client, il contient les informations nécessaires à la bibliothèque d’exécution RPC pour diriger l’appel vers le serveur.
  • Côté serveur, il sert de handle sur le contexte actif.

Le [handle] attribut spécifie qu’un type peut se produire en tant que handle défini par l’utilisateur (générique). Cette fonctionnalité permet de concevoir des handles qui sont significatifs pour l’application. L’utilisateur doit fournir des routines de liaison et de dissociation pour effectuer une conversion entre le type de handle défini par l’utilisateur et le type de handle primitif RPC, handle_t. Un handle primitif contient des informations de destination significatives pour les bibliothèques d’exécution RPC. Un handle défini par l’utilisateur ne peut être défini que dans une déclaration de type, et non dans une déclaration de fonction. Un paramètre avec l’attribut [handle] a un double objectif. Il est utilisé pour déterminer la liaison de l’appel, et elle est transmise à la procédure appelée en tant que paramètre de données normal.