Partager via


Informations du Registre des contrôles ActiveX

Un certain nombre d’entrées et d’indicateurs de Registre sont utilisés. En outre, les contrôles peuvent prendre en charge les catégories de composants pour classifier les fonctionnalités qu’ils fournissent.

Les clés de Registre liées aux contrôles sont marquées d’un astérisque dans l’arborescence suivante :

HKEY_CLASSES_ROOT
   CLSID
      {control_CLSID}
         ProgID = <identifier>
         InprocServer32 = <filename>.dll
         *DefaultIcon = <filename>.<ext>,resourceID
         *ToolboxBitmap32 = <filename>.<ext>,resourceID
         *Control
         verb
            *n = &Properties...
         *MiscStatus = 0
         TypeLib = {object_typelibID}
         *Version = version_number

L’entrée DefaultIcon permet d’identifier une icône à afficher lorsque le contrôle est réduit à une icône. La fonction ExtractIcon permet d’obtenir l’icône à partir du fichier .DLL ou .EXE spécifié.

L’entrée ToolboxBitmap32 identifie le nom de module et l’identificateur de ressource d’une bitmap 16*15 à utiliser pour le visage d’une barre d’outils ou d’un bouton de boîte à outils. La taille de l’icône Windows standard est trop grande pour être utilisée à cet effet. Cette entrée prend spécifiquement en charge les conteneurs de contrôle qui ont un mode création dans lequel on sélectionne des contrôles et les place sur un formulaire en cours de conception. Par exemple, en Visual Basic, l’icône du contrôle s’affiche dans la boîte à outils Visual Basic pendant le mode création.

L’entrée Control marque un objet en tant que contrôle. Cette entrée est souvent utilisée par les conteneurs pour remplir les boîtes de dialogue. Le conteneur utilise cette sous-clé pour déterminer s’il faut inclure un objet dans une boîte de dialogue qui affiche des contrôles.

La sous-clé Insertable peut également être utilisée avec des contrôles, selon que l’objet peut uniquement agir en tant qu’objet incorporé sur place sans fonctionnalités de contrôle spéciales. Les objets marqués avec Insertable apparaissent dans la boîte de dialogue Insérer un objet de leur conteneur. L’entrée Insertable signifie généralement que le contrôle a été testé avec des conteneurs non-contrôle.

Les sous-clés Insertable et Control sont facultatives. Un contrôle peut omettre la sous-clé Insertable s’il n’est pas conçu pour fonctionner avec des conteneurs plus anciens qui ne comprennent pas les contrôles. Un contrôle peut omettre la clé De contrôle s’il est conçu uniquement pour fonctionner avec un conteneur spécifique et ne souhaite donc pas être inséré dans d’autres conteneurs.

Les contrôles doivent avoir un verbe Properties, OLEIVERB_PROPERTIES, ainsi que tous les autres verbes qu’ils prennent en charge. Le verbe Properties, ainsi que le verbe standard OLEIVERB_PRIMARY, indique au contrôle d’afficher sa feuille de propriétés. Le verbe Propriétés s’affiche en tant qu’élément Propriétés dans le menu du conteneur lorsque le contrôle est actif. De cette façon, le contrôle peut afficher sa propre page de propriétés, ce qui permet à l’utilisateur final d’avoir certaines fonctionnalités utiles, même si le conteneur ne gère pas les contrôles.

Un contrôle définit la clé MiscStatus pour se décrire aux conteneurs potentiels. Les bits prennent les valeurs d’OLEMISC, et les contrôles ajoutent plusieurs valeurs à cette énumération. Pour plus d’informations, consultez les valeurs d’énumération OLEMISC . Le client peut obtenir ces informations en appelant IOleObject::GetMiscStatus sans avoir à instancier le contrôle au préalable.

Enfin, Version décrit la version du contrôle qui doit correspondre à la version de la bibliothèque de types associée à ce contrôle.

Également dans les informations de type d’un contrôle, le contrôle d’attribut marque une entrée de coclasse comme décrivant un contrôle.