All of the sections in a script, with the exception of [Setup], [Messages], [CustomMessages], [LangOptions], and [Code], contain lines separated into parameters. The following is an example of a [Files] section:
[Files] Source: "MYPROG.EXE"; DestDir: "{app}" Source: "MYPROG.CHM"; DestDir: "{app}" Source: "README.TXT"; DestDir: "{app}"; Flags: isreadme
Each parameter consists of a name, followed by a colon, and then a value. Unless otherwise noted, parameters are optional in that they assume a default value if they are not specified. Multiple parameters on a line are separated by semicolons, and can be listed in any order.
The value of a parameter is traditionally surrounded in double quotes (") when it contains a user-defined string, such as a filename. Using quotes is not required, though, but by doing so it makes it possible to embed leading and trailing spaces in the value, as well as semicolons and double-quote characters.
To embed a double-quote character inside a quoted value, use two consecutive double-quote characters. For example:
"This "" contains "" embedded "" quotes"
The compiler would see that as:
This " contains " embedded " quotes
If you want the value of a parameter to be a single double-quote character, use four double-quote characters: """". The outer two are needed to surround the string in quotes; the inner two are used to embed a single double-quote character.