clé HKEY_CLASSES_ROOT

La clé de HKEY_CLASSES_ROOT (HKCR) contient des associations d’extensions de nom de fichier et des informations d’inscription de classe COM, telles que des ProgID, des CLSID et des IID. Il est principalement destiné à la compatibilité avec le Registre dans Windows 16 bits.

Les informations d’inscription de classe et d’extension de nom de fichier sont stockées sous les clés HKEY_LOCAL_MACHINE et HKEY_CURRENT_USER . La cléHKEY_LOCAL_MACHINE\Software\Classes contient des paramètres par défaut qui peuvent s’appliquer à tous les utilisateurs sur l’ordinateur local. La cléHKEY_CURRENT_USER\Software\Classes contient des paramètres qui s’appliquent uniquement à l’utilisateur interactif. La clé HKEY_CLASSES_ROOT fournit une vue du Registre qui fusionne les informations de ces deux sources. HKEY_CLASSES_ROOT fournit également cette vue fusionnée pour les applications conçues pour les versions précédentes de Windows.

Les paramètres spécifiques à l’utilisateur ont priorité sur les paramètres par défaut. Par exemple, le paramètre par défaut peut spécifier une application particulière pour gérer .doc fichiers. Toutefois, un utilisateur peut remplacer ce paramètre en spécifiant une autre application dans le Registre.

Les fonctions de Registre telles que RegOpenKeyEx ou RegQueryValueEx vous permettent de spécifier la clé HKEY_CLASSES_ROOT . Lorsque vous appelez ces fonctions à partir d’un processus en cours d’exécution dans le compte d’utilisateur interactif, le système fusionne les paramètres par défaut dans HKEY_LOCAL_MACHINE\Software\Classes avec les paramètres de l’utilisateur interactif à HKEY_CURRENT_USER\Software\Classes. Pour plus d’informations sur la façon dont ces paramètres sont fusionnés, consultez Vue fusionnée de HKEY_CLASSES_ROOT.

Pour modifier les paramètres de l’utilisateur interactif, stockez les modifications sous HKEY_CURRENT_USER\Software\Classes plutôt que sous HKEY_CLASSES_ROOT.

Pour modifier les paramètres par défaut, stockez les modifications sous HKEY_LOCAL_MACHINE\Software\Classes. Si vous écrivez des clés dans une clé sous HKEY_CLASSES_ROOT, le système stocke les informations sous HKEY_LOCAL_MACHINE\Software\Classes. Si vous écrivez des valeurs dans une clé sous HKEY_CLASSES_ROOT et que la clé existe déjà sous HKEY_CURRENT_USER\Software\Classes, le système y stocke les informations au lieu de HKEY_LOCAL_MACHINE\Software\Classes.

Les processus s’exécutant dans un contexte de sécurité autre que celui de l’utilisateur interactif ne doivent pas utiliser la clé HKEY_CLASSES_ROOT avec les fonctions du Registre. Au lieu de cela, ces processus peuvent ouvrir explicitement la cléHKEY_LOCAL_MACHINE\Software\Classes pour accéder aux paramètres par défaut. Pour ouvrir une clé de Registre qui fusionne le contenu de HKEY_LOCAL_MACHINE\Software\Classes avec les paramètres d’un utilisateur spécifié, ces processus peuvent appeler la fonction RegOpenUserClassesRoot . Par exemple, un thread qui emprunte l’identité d’un client peut appeler RegOpenUserClassesRoot s’il doit récupérer une vue fusionnée pour le client en cours d’emprunt d’identité. Notez que RegOpenUserClassesRoot échoue si le profil utilisateur de l’utilisateur spécifié n’a pas été chargé. Le système charge automatiquement le profil de l’utilisateur interactif lors de la connexion. Pour les autres utilisateurs, vous devez appeler la fonction LoadUserProfile pour charger explicitement le profil de l’utilisateur.

Si une application est exécutée avec des droits d’administrateur et que le contrôle de compte d’utilisateur est désactivé, le runtime COM ignore la configuration COM par utilisateur et accède uniquement à la configuration COM par ordinateur. Les applications qui nécessitent des droits d’administrateur doivent inscrire des objets COM dépendants pendant l’installation dans le magasin de configuration COM par machine (HKEY_LOCAL_MACHINE\Software\Classes). Pour plus d’informations, consultez AC : UAC : COM Per-User Configuration.

Windows Server 2003 et Windows XP/2000 : Les applications peuvent inscrire des objets COM dépendants dans le magasin de configuration COM par ordinateur ou par utilisateur (HKEY_LOCAL_MACHINE\Software\Classes ou HKEY_CURRENT_USER\Software\Classes).

HKEY_CLASSES_ROOT (référence du Registre du Kit de ressources)