Informazioni sugli alberi di analisi

È possibile definire uno o più alberi di analisi nello script di registrazione, in cui ogni albero di analisi ha il formato seguente:

<root-key>{<espressione> del Registro di sistema}+

dove:

<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> ::=
  [ForceRemoveval | | NoRemove] <Key-Name> [<Key-Value>] [ {<Add-Key ]> }

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

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

<AlfaNumerico> ::=
  qualsiasi carattere non Null.

<Chiave-valore> ::=
<Key-Type> <Key-Name>

<Tipo chiave> ::=
s | d

Nota

HKEY_CLASSES_ROOT e HKCR sono equivalenti HKEY_CURRENT_USER ; e HKCU sono equivalenti; e così via.

Un albero di analisi può aggiungere più chiavi e sottochiavi alla <chiave> radice. Il registrar mantiene aperto ogni handle di sottochiave fino a quando il parser non ha completato l'analisi di tutte le relative sottochiavi. È più efficiente rispetto all'uso di una singola chiave alla volta. Ecco un esempio:

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

In questo caso, il registrar si apre inizialmente (crea). HKEY_CLASSES_ROOT\MyVeryOwnKey Vede quindi che MyVeryOwnKey ha una sottochiave. Anziché chiudere la chiave a MyVeryOwnKey, il registrar mantiene l'handle e apre (crea) HasASubKey usando questo handle padre. Il Registro di sistema può essere più lento quando non è aperto alcun handle padre. Quindi, l'apertura e l'apertura HKEY_CLASSES_ROOT\MyVeryOwnKey HasASubKey con come MyVeryOwnKey padre è più veloce rispetto all'apertura , alla chiusura MyVeryOwnKeydi e quindi all'apertura MyVeryOwnKeyMyVeryOwnKey\HasASubKeydi .

Vedi anche

Creazione di script di registrazione