The scripts used by the ATL Registrar follow BNF syntax and use the notation shown in the next table.
Convention/Symbol | What It Means |
::= |
Equivalent |
| |
OR |
X+ |
One or more X s. |
[X] |
X is optional. Optional delimiters are denoted by [] . |
Any bold text | A string literal. |
Any italicized text | How to construct the string literal. |
As indicated in the preceding table, registrar scripts use string literals. These values are actual text that must appear in your script. The following table describes the string literals used in an ATL Registrar script.
String Literal | Description |
ForceRemove | Completely remove the following key (if it exists) and then recreate it. |
NoRemove | Do not remove the following key during Unregister. |
val | The following <Key Name> is actually a named value. |
Delete | Delete the following key during Register. |
s | The following value is a string. |
d | The following value is a DWORD. |
Here are a few syntax examples to help you understand how the notation and string literals work in an ATL Registrar script.
Syntax example 1
<registry expression> ::= <Add Key>
specifies that registry expression
is equivalent to Add Key
.
Syntax example 2
<registry expression> ::= <Add Key> | <Delete Key>
specifies that registry expression
is equivalent to either Add Key
or Delete Key
.
Syntax example 3
<Key Name> ::= '<AlphaNumeric>+'
specifies that Key Name
is equivalent to one or more AlphaNumerics
.
Syntax example 4
<Add Key> ::= [ForceRemove | NoRemove | val]<Key Name>
specifies that Add Key
is equivalent to Key Name
, and that the string literals, ForceRemove
, NoRemove
, and val
, are optional.
Syntax example 5
<AlphaNumeric> ::= any character not NULL, i.e. ASCII 0
specifies that AlphaNumeric
is equivalent to any non-NULL character.