MAKEMSI quickly and reliably creates MSI files in a non-programmatic way
Have your say! Join the MAKEMSI discussion list or view archive! Suggest improvements. No question too simple or too complex.
[Bottom][Contents][Prev]: Parameters[Next]: Mandatory Parameters
Have your say! Join the MAKEMSI discussion list or view archive! Suggest improvements. No question too simple or too complex.
\->Source Code->Parameters->Parameter Quoting

Parameter Quoting

Quotes are not always required around a parameters value but I highly recommend you get into the habit of supplying them.

If you have used HTML tags before then you know that you can use either single or double quotes to quote a value, MAKEMSI supports these plus almost any other non-alphanumeric characters. MAKEMSI has no "escape" character sequences.

I tend to use double quotes for values that can't (or don't) contain double quotes and "^" for most other cases. Some examples of quoted strings follow:

  1. "ABC"

  2. 'ABC'

  3. ^ABC^

  4. ~A"b'C^~.

Note that depending on what code page is being used by default (or configured with "MAKEMSI_MM_CODEPAGE"), what appear to be different characters can be translated into the same character! This can result in "PPWIZARD" reporting quoting problems but you can't see this in the text editor you are using (its probably on a different codepage). This has happened to at least two different people on Japanese (using the "^" quote). If it happens to you check out your editors configuration otherwise the simplest solution is to use an alternative quote such as "#" or "!" etc.

EXAMPLES

;--- Create Feature (a number of items defaulting) --------------------------
<$Feature "F_Dennis" Title=^Dennis' "Feature"^ Attributes="3+4+5">
   ;--- Create Component (assign to feature) --------------------------------
   <$Component "C_Dennis" Directory_="WindowsFolder">
       ;--- Do stuff --------------------------------------------------------
       ;...
   <$/Component>

   ;--- Create SUB-Feature --------------------------------------------------
   <$Feature "F_Under_Dennis" CREATE="Y">  ;;CREATE="Y" REQUIRED here as no attributes supplied
       <$Component "C_Under_Dennis" ComponentId="" Directory_="WindowsFolder">
           ;--- Do stuff ----------------------------------------------------
           ;...
       <$/Component>
   <$/Feature>
<$/Feature>


;--- Update feature ---------------------------------------------------------
<$Feature "F_Dennis" Level="99" CREATE="N"><$/Feature>

;--- Reference existing feature ---------------------------------------------
<$Feature "Fred">
   'Just a reference (becomes default feature)
<$/Feature>


Microsoft awarded me an MVP (Most Valuable Professional award) in 2004, 2005, 2006, 2007, 2008 & 2009 for the Windows SDK (Windows Installer) area.Please email me any feedback, additional information or corrections.
See this page online (look for updates)

[Top][Contents][Prev]: Parameters[Next]: Mandatory Parameters


MAKEMSI© is (C)opyright Dennis Bareis 2003-2008 (All rights reserved).
Saturday May 28 2022 at 3:11pm
Visit MAKEMSI's Home Page
Microsoft awarded me an MVP (Most Valuable Professional award) in 2004, 2005, 2006, 2007, 2008 & 2009 for the Windows SDK (Windows Installer) area.