Partager via


Table du Registre

La table Registre contient les informations de Registre que l’application doit définir dans le Registre système.

La table Registre contient les colonnes suivantes.

Colonne Type Clé Nullable
Registre identificateur Y N
Racine entier N N
Clé RegPath N N
Nom mise en forme N Y
Valeur mise en forme N Y
Composant_ identificateur N N

 

Colonnes

Registre

Clé primaire utilisée pour identifier un enregistrement de Registre.

racine

Clé racine prédéfinie pour la valeur de Registre. Entrez une valeur de -1 dans ce champ pour que la clé racine dépende du type d’installation. Entrez l’une des autres valeurs du tableau suivant pour forcer l’écriture de la valeur de Registre sous une clé racine particulière.

Constant Hexadécimal Décimal Clé racine
(aucun) - 0x001 -1 S’il s’agit d’une installation par utilisateur, la valeur de Registre est écrite sous HKEY_CURRENT_USER. S’il s’agit d’une installation par ordinateur, la valeur de Registre est écrite sous HKEY_LOCAL_MACHINE. Notez qu’une installation par ordinateur est spécifiée en définissant la propriété ALLUSERS sur 1.
msidbRegistryRootClassesRoot 0x000 0 HKEY_CLASSES_ROOTLe programme d’installation écrit ou supprime la valeur du HKCU\Software\Classes hive lors de l’installation dans le contexte d’installation de par utilisateur.
Le programme d’installation écrit ou supprime la valeur du HKLM\Software\Classes ruche pendant les installations par machine.
msidbRegistryRootCurrentUser 0x001 1 HKEY_CURRENT_USER
msidbRegistryRootLocalMachine 0x002 2 HKEY_LOCAL_MACHINE
msidbRegistryRootUsers 0x003 3 HKEY_USERS

 

Notez qu’il est recommandé que les entrées de Registre écrites dans la HKCU hive référencent un composant dont le bit RegistryKeyPath est défini dans la colonne Attributs de la table composant . Cela garantit que le programme d’installation écrit les entrées de Registre nécessaires lorsqu’il existe plusieurs utilisateurs sur le même ordinateur.

clé

Clé localisable pour la valeur de Registre.

nom de

Cette colonne contient le nom de la valeur de Registre (localisable). S’il s’agit de Null, les données entrées dans la colonne Valeur sont écrites dans la clé de Registre par défaut.

Si la colonne Valeur est Null, les chaînes indiquées dans le tableau suivant de la colonne Name ont une importance particulière.

Corde Signification
+ La clé doit être créée, s’il est absent, lorsque le composant est installé.
- La clé doit être supprimée, le cas échéant, avec toutes ses valeurs et sous-clés, lorsque le composant est désinstallé.
* La clé doit être créée, s’il est absent, lorsque le composant est installé. En outre, la clé doit être supprimée, le cas échéant, avec toutes ses valeurs et sous-clés, lorsque le composant est désinstallé.

 

Notez que la table RemoveRegistry doit être utilisée si une clé de Registre installée doit être supprimée, avec ses valeurs et ses sous-clés, lorsque le composant est installé.

valeur

Cette colonne est la valeur de Registre localisable. Le champ est formaté. Si la valeur est attachée à l’un des préfixes suivants (c’est-à-dire#%valeur), la valeur est interprétée comme décrit dans la table. Notez que chaque préfixe commence par un signe numérique (#). Si la valeur commence par deux signes de nombre consécutifs (#), le premier # est ignoré et la valeur est interprétée et stockée en tant que chaîne.

Préfixe Signification
#x La valeur est interprétée et stockée en tant que valeur hexadécimale (REG_BINARY).
#% La valeur est interprétée et stockée en tant que chaîne extensible (REG_EXPAND_SZ).
# La valeur est interprétée et stockée en tant qu’entier (REG_DWORD).

 

  • Si la valeur contient la séquence tilde [~], la valeur est interprétée comme une liste délimitée par null de chaînes (REG_MULTI_SZ). Par exemple, pour spécifier une liste contenant les trois chaînes a, b et c, utilisez « a[~]b[~]c ».
  • La séquence [~] dans la valeur sépare les chaînes individuelles et est interprétée et stockée en tant que caractère Null.
  • Si un [~] précède la liste de chaînes, les chaînes doivent être ajoutées à toutes les chaînes de valeur de Registre existantes. Si une chaîne d’ajout se produit déjà dans la valeur de Registre, l’occurrence d’origine de la chaîne est supprimée.
  • Si un [~] suit la fin de la liste de chaînes, les chaînes doivent être ajoutées à toutes les chaînes de valeur de Registre existantes. Si une chaîne imminente se produit déjà dans la valeur de Registre, l’occurrence d’origine de la chaîne est supprimée.
  • Si un [~] est à la fois au début et à la fin ou au début ni à la fin de la liste de chaînes, les chaînes doivent remplacer toutes les chaînes de valeur de Registre existantes.
  • Sinon, la valeur est interprétée et stockée en tant que chaîne (REG_SZ).

Component_

Clé externe dans la première colonne de la table composant référençant le composant qui contrôle l’installation de la valeur de Registre.

Remarques

Les actions WriteRegistryValues et RemoveRegistryValues dans tables de séquences traiter les informations de cette table. Pour plus d’informations sur l’utilisation de tables de séquences , consultez Utilisation d’une table de séquences.

Les informations de Registre sont écrites dans le registre système lorsque le composant correspondant a été sélectionné pour être installé localement ou exécuté à partir de la source.

Notez que le programme d’installation supprime une clé de Registre après avoir supprimé la dernière valeur ou la sous-clé sous la clé. Pour empêcher la suppression d’une clé de Registre vide lors de la désinstallation, écrivez une valeur factice sous la clé que vous devez conserver et entrer + dans la colonne Nom. Si * se trouve dans la colonne Name, la clé est supprimée, avec toutes ses valeurs et sous-clés, lorsque le composant est supprimé.

Une action personnalisée peut être utilisée pour ajouter des lignes à la table de Registre pendant une opération d’installation, de désinstallation ou de réparation. Ces lignes ne sont pas conservées dans la table Registre et les informations sont disponibles uniquement pendant la transaction actuelle. L’action personnalisée doit donc être exécutée dans chaque transaction d’installation, de désinstallation ou de réparation qui nécessite les informations contenues dans ces lignes supplémentaires. L’action personnalisée doit être effectuée avant les actions RemoveRegistryValues et WriteRegistryValues dans la séquence d’actions.

Pour plus d’informations sur la sécurisation d’une clé de Registre, consultez la de table MsiLockPermissionsEx et table LockPermissions.

Validation

ICE02
ICE03
ICE06
ICE32
ICE38
ICE43
ICE46
ICE49
ICE53
ICE55
ICE57
ICE70
ICE80