An optional parameter is one that doesn't always need to be supplied. This doesn't mean that it might not actually be required in some circumstances! Sometimes you will need to supply one of a number of optional parameters.
The documentation will always tell you if a parameter is mandatory or optional, any fine detail as to what you can pass will be documented in the information for that command's parameter. Please read the "parameter quoting" section for more information about how parameters should be supplied.
All optional parameters are supplied as the name of the parameter immediately followed by an equal sign ("=") which is also immediately followed by the parameter's value. If you have spaces around the equal sign then most commands will now tell you that this is invalid (keyword parameters not supported).
|The Parameter's Name|
The name of the parameter is almost always case insensitive (so "component='fred'" is the same as "COMPONENT='fred'"). One main exception to this is for the "row" command where the parameter's name is actually the name of an MSI table's column (which are case-sensitive).
|The Parameter's Value|
Sometimes the parameter value's case will matter, it is suggested that the documented case always be used.
A lot of commands take "Y" or "N" responses. Please be aware many will not correctly handle "y" or "n" instead. As I update commands I will try to correct this...
Where the data is obviously case sensitive such as with the MSI table name on a "table" command you must supply it in the exact case required.
Please also be aware that an empty or blank value is not always the same as if the parameter is not supplied. One possible reason for this is that when a parameter is not supplied a value from a default macro is frequently used and this value may or may not be "empty".