Partager via


Présentation des arborescences d’analyse

Vous pouvez définir une ou plusieurs arborescences d’analyse dans votre script de registrar, où chaque arborescence d’analyse a la forme suivante :

<root-key>{<registry expression>}+

où :

<root-key> ::=
HKEY_CLASSES_ROOT | HKEY_CURRENT_USER |
HKEY_LOCAL_MACHINE | HKEY_USERS |
HKEY_PERFORMANCE_DATA | HKEY_DYN_DATA |
HKEY_CURRENT_CONFIG | HKCR | HKCU |
HKLM | HKU | HKPD | HKDD | HKCC

<registry-expression> ::=
<Add-Key> | <Delete-Key>

<Add-Key> ::=
  [ForceRemove | NoRemove | val] <Key-Name> [<Key-Value>] [ { <Add-Key> } ]

<Delete-Key> ::=
Delete <Key-Name>

<Key-Name> ::=
'<AlphaNumeric>+'

<AlphaNumeric> ::=
  n’importe quel caractère non nul.

<Key-Value> ::=
<Key-Type> <Key-Name>

<Key-Type> ::=
s | d

Remarque

HKEY_CLASSES_ROOT et HKCR sont équivalents ; HKEY_CURRENT_USER et HKCU sont équivalents ; et ainsi de suite.

Une arborescence d’analyse peut ajouter plusieurs clés et sous-clés au <root-key>. Le Registrar garde chaque handle de sous-clé ouvert jusqu’à ce que l’analyseur ait terminé l’analyse de toutes ses sous-clés. C’est plus efficace que d’utiliser une seule clé à la fois. Voici un exemple :

HKEY_CLASSES_ROOT
{
    'MyVeryOwnKey'
    {
        'HasASubKey'
        {
            'PrettyCool'
        }
    }
}

Ici, le Registrar ouvre initialement (crée) HKEY_CLASSES_ROOT\MyVeryOwnKey. Il voit ensuite que MyVeryOwnKey a une sous-clé. Au lieu de fermer la clé pour MyVeryOwnKey, le Registrar garde le handle et ouvre (crée) HasASubKey à l’aide de ce handle parent. (Le registre système peut être plus lent quand aucun handle parent n’est ouvert.) Ainsi, l’ouverture de HKEY_CLASSES_ROOT\MyVeryOwnKey et l’ouverture de HasASubKey avec MyVeryOwnKey comme parent sont plus rapides que l’ouverture de MyVeryOwnKey, la fermeture de MyVeryOwnKey, puis l’ouverture de MyVeryOwnKey\HasASubKey.

Voir aussi

Création de scripts de registrar