Partager via


À propos de la bibliothèque du Registre hors connexion

La bibliothèque de Registre hors connexion est utilisée pour modifier une ruche de registre en dehors du registre système actif.

La bibliothèque de Registre hors connexion est destinée aux scénarios de mise à jour du Registre, tels que la maintenance d’une image de système d’exploitation. Les fonctions de Registre hors connexion fournissent les fonctionnalités suivantes qui ne sont pas disponibles avec les fonctions de Registre standard :

  • Les fonctions de Registre hors connexion peuvent être utilisées pour modifier une ruche du Registre dans n’importe quel format de Registre pris en charge. Les fonctions de Registre standard peuvent apporter des modifications uniquement à une ruche de Registre active et les modifications doivent être compatibles avec la version de Windows s’exécutant sur le système.
  • La bibliothèque de Registre hors connexion nécessite uniquement un accès en lecture pour ouvrir un fichier hive du Registre et un accès en écriture pour enregistrer le fichier. Aucune autre vérification d’accès n’est effectuée sur les objets de la ruche, ce qui permet de modifier la ruche avec des privilèges utilisateur standard. Avec les fonctions de Registre standard, le chargement d’une ruche dans le registre actif est une opération privilégiée qui nécessite un accès administratif.

Les fonctions de Registre hors connexion ne doivent pas être utilisées comme substitut aux fonctions du Registre système pour les raisons suivantes :

  • Il est impossible de partager des ruches de Registre entre des processus à l’aide des fonctions de Registre hors connexion.
  • Les fonctions de Registre hors connexion utilisent un verrouillage simple qui peut entraîner une dégradation grave des performances pour les applications multithread.
  • Les modifications apportées aux fonctions de Registre hors connexion ne sont pas enregistrées tant que la fonction ORSaveHive n’est pas appelée.

Les applications ne doivent pas utiliser les fonctions de Registre hors connexion pour contourner les exigences de sécurité du registre système. Pour charger une ruche, une application s’exécutant sans les privilèges spéciaux requis par la fonction RegLoadKey peut utiliser la fonction RegLoadAppKey .

Windows Server 2003 et Windows XP : La fonction RegLoadAppKey n’est pas prise en charge.

Une ruche de Registre hors connexion est une ruche de Registre qui a été chargée en mémoire à l’aide des fonctions de Registre hors connexion. Pour créer une ruche de Registre hors connexion vide, utilisez la fonction ORCreateHive . Pour modifier une ruche de Registre existante, utilisez la fonction RegSaveKey ou RegSaveKeyEx pour enregistrer une ruche du registre système actif dans un fichier, puis utilisez la fonction OROpenHive pour ouvrir le fichier.

Les fonctions ORCreateHive et OROpenHive retournent un handle à la clé racine de la ruche du Registre hors connexion. Ce handle peut être utilisé comme un handle pour n’importe quelle autre clé dans la ruche du Registre hors connexion avec les exceptions suivantes : les fonctions ORCreateKey et OROpenKey ne peuvent pas être utilisées pour renvoyer un handle à la clé racine ; la fonction ORCloseKey ne peut pas être utilisée pour fermer la clé racine ; et la fonction ORDeleteKey ne peut pas être utilisée pour supprimer la clé racine. Dans tous ces cas, la fonction échoue avec ERROR_INVALID_PARAMETER.

Utilisez la fonction ORCreateKey pour ajouter des clés à une ruche de Registre hors connexion ouverte et la fonction ORSetValue pour définir les valeurs des clés. La bibliothèque de Registre hors connexion prend en charge d’autres opérations de registre de base telles que l’énumération, la récupération et la suppression de clés et de valeurs, et la définition d’attributs de clé tels que le comportement de sécurité et de virtualisation. Pour obtenir la liste des fonctions, consultez Fonctions de bibliothèque de registre hors connexion.

Pour enregistrer les modifications apportées à une ruche de Registre hors connexion ouverte, utilisez la fonction ORSaveHive pour enregistrer la ruche dans un fichier. (Les modifications ne persistent pas, sauf si ORSaveHive est appelé.) Après avoir enregistré la ruche, utilisez la fonction ORCloseHive pour fermer la ruche et libérer les ressources qui lui sont associées.

Une ruche de Registre hors connexion est validée uniquement lorsqu’elle est ouverte à l’aide de la fonction OROpenHive . Si la ruche est endommagée, l’opération échoue tout simplement ; aucune tentative de réparation de la ruche n’est effectuée. Les vérifications d’accès sur les objets de la ruche ne sont pas effectuées tant que la ruche n’est pas chargée dans un registre actif avec la fonction RegLoadKey .

Les fonctions de Registre hors connexion ne prennent pas en charge les clés prédéfinies.

Toutes les chaînes de nom de clé et de valeur passées aux fonctions de Registre hors connexion doivent être Unicode.

Library_Functions du Registre hors connexion