Opis składni formularza (BNF) Backus Nauer
Skrypty używane przez Sekretarza ATL są opisane w tym temacie, używając składni BNF używa notacji pokazane w poniższej tabeli.
Konwencja/symbol |
Znaczenie |
---|---|
::= |
Odpowiednik |
| |
LUB |
X+ |
Jeden lub więcej Xs. |
[X] |
Xjest opcjonalne.Opcjonalne ograniczniki są oznaczone []. |
Każdy Pogrubienie tekstu |
Literał ciągu znaków. |
Każdy kursywą tekstu |
Jak skonstruować literał ciągu znaków. |
Jak wskazano w powyższej tabeli, Sekretarz skryptów używać literały ciągów znaków.Wartości te są rzeczywisty tekst, który musi być umieszczone w skrypcie.W poniższej tabeli opisano literały ciągów znaków używanych w skrypcie ATL sekretarza.
Literał ciągu |
Akcja |
---|---|
ForceRemove |
Całkowicie usuwa następny klucz (jeśli istnieje) i odtwarza go. |
NoRemove |
Nie usuwa następny klucz podczas Wyrejestruj. |
Val |
Określa, że <Key Name> jest faktycznie nazwanej wartości. |
Usuń |
Usuwa następny klucz w rejestrze. |
s |
Określa, że następna wartość ciągu (REG_SZ). |
d |
Określa, że następna wartość DWORD (REG_DWORD). |
m |
Określa, że następna wartość ciągu wielokrotnego (REG_MULTI_SZ). |
b |
Określa, że następna wartość wartość binarna (REG_BINARY). |
Przykłady składni BNF
Oto kilka przykładów składni, aby lepiej zrozumieć, jak literały notacji i ciągu działają w skrypcie ATL sekretarza.
Przykładowa składnia 1
<registry expression> ::= <Add Key>
Określa, że registry expression jest równoważne z Add Key.
Przykładowa składnia 2
<registry expression> ::= <Add Key> | <Delete Key>
Określa, że registry expression jest odpowiednikiem albo Add Key lub Delete Key.
Przykładowa składnia 3
<Key Name> ::= '<AlphaNumeric>+'
Określa, że Key Name jest równoważne z jedną lub więcej AlphaNumerics.
Przykładowa składnia 4
<Add Key> ::= [ForceRemove | NoRemove | val]<Key Name>
Określa, że Add Key jest równoważne z Key Namei że literały ciągów ForceRemove, NoRemove, i val, są opcjonalne.
Przykładowa składnia 5
<AlphaNumeric> ::= any character not NULL, that is, ASCII 0
Określa, że AlphaNumeric jest równoważne do każdy znak NIEPUSTY.
Przykładowa składnia 6
val 'testmulti' = m 'String 1\0String 2\0'
Określa, że nazwa klucza testmulti wartość wielociągu składa się z String 1 i String 2.
Przykładowa składnia 7
val 'testhex' = d '&H55'
Określa, że nazwa klucza testhex jest DWORD wartość szesnastkową 55 (85 dziesiętnym).Uwaga Ten format jednakową & h notacji jako znaleziony w specyfikacji języka Visual Basic.