Příklady skriptování registru
Příklady skriptování v tomto tématu ukazují, jak lze přidat klíč registru systému registrace serveru COM registrátora a zadat více stromů analýzy.
Přidat klíč HKEY_CURRENT_USER
Následující analýzy stromu ukazuje jednoduchý skript, který přidá jeden klíč registru systému.Zejména skript přidá klíč, MyVeryOwnKey , na HKEY_CURRENT_USER .Přiřadí výchozí hodnotu řetězce HowGoesIt? na nový klíč:
HKEY_CURRENT_USER
{
'MyVeryOwnKey' = s 'HowGoesIt?'
}
Tento skript lze snadno rozšířit více podklíčů definovat takto:
HKCU
{
'MyVeryOwnKey' = s 'HowGoesIt?'
{
'HasASubkey'
{
'PrettyCool?' = d '55'
val 'ANameValue' = s 'WithANamedValue'
}
}
}
Nyní skript přidá podklíče, HasASubkey , na MyVeryOwnKey .Tento podklíč obě přidá PrettyCool? podklíč (výchozí hodnota je DWORD hodnotu 55) a ANameValue pojmenovanou hodnotu (s hodnotou řetězce WithANamedValue ).
Registrace serveru COM registrátora
Následující skript registruje samotný server COM registrátora.
HKCR
{
ATL.Registrar = s 'ATL Registrar Class'
{
CLSID = s '{44EC053A-400F-11D0-9DCD-00A0C90391D3}'
}
NoRemove CLSID
{
ForceRemove {44EC053A-400F-11D0-9DCD-00A0C90391D3} =
s 'ATL Registrar Class'
{
ProgID = s 'ATL.Registrar'
InprocServer32 = s '%MODULE%'
{
val ThreadingModel = s 'Apartment'
}
}
}
}
V době spuštění této analýzy stromu přidá ATL.Registrar klíčů na HKEY_CLASSES_ROOT .Tento nový klíč pak it:
Určuje ATL Registrar Class jako výchozí hodnotu řetězce na klíč.
Přidá CLSID jako podklíč.
Specifies {44EC053A-400F-11D0-9DCD-00A0C90391D3} for CLSID.(Tato hodnota je tajemníka CLSID pro použití s CoCreateInstance .)
Od CLSID je sdílena, by neměla být odebrána v režimu Unregister.Prohlášení, NoRemove CLSID , provádí označující, že CLSID by měla být otevřena v režimu rejstříku a v režimu Unregister ignorovány.
ForceRemove Příkaz poskytuje funkci domácnosti odebráním klíč a všechny jeho podklíče před obnovení klíče.To může být užitečné, pokud se změnily názvy podklíčů.V tomto příkladu skriptu ForceRemove zkontroluje, pokud {44EC053A-400F-11D0-9DCD-00A0C90391D3} již existuje.If it does, ForceRemove:
Odstraní rekurzivně {44EC053A-400F-11D0-9DCD-00A0C90391D3} a všechny jeho podklíče.
Znovu vytvoří {44EC053A-400F-11D0-9DCD-00A0C90391D3}.
Přidá ATL Registrar Class jako výchozí hodnotu řetězce pro {44EC053A-400F-11D0-9DCD-00A0C90391D3}.
Analýzy stromu nyní přidá dvě nové podklíče {44EC053A-400F-11D0-9DCD-00A0C90391D3}.První klíč ProgID , získá výchozí hodnotu řetězce, který je identifikátor ProgID.Druhý klíč InprocServer32 , získá výchozí hodnotu řetězce %MODULE% , je preprocesoru hodnotu vysvětleny v části Pomocí nahraditelné parametry (tajemníka předprocesoru), tohoto článku.InprocServer32také získává pojmenovanou hodnotu ThreadingModel , s hodnotou řetězce Apartment .
Určit více stromů analýzy
Pokud chcete zadat více než jeden analýzy stromu ve skriptu, stačí umístíte jeden strom na konci druhého.Například následující skript přidá klíč, MyVeryOwnKey , na stromy analýzy obou HKEY_CLASSES_ROOT a HKEY_CURRENT_USER :
HKCR
{
'MyVeryOwnKey' = s 'HowGoesIt?'
}
HKEY_CURRENT_USER
{
'MyVeryOwnKey' = s 'HowGoesIt?'
}
[!POZNÁMKA]
Ve skriptu Registrátor 4 kB je maximální velikost tokenu.(Token je libovolný prvek lze rozpoznat v syntaxi). V předchozím příkladu skriptu HKCR , HKEY_CURRENT_USER , 'MyVeryOwnKey' , a 'HowGoesIt?' jsou všechny tokeny.