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]: /Msi[Next]: MsiValFilter
Have your say! Join the MAKEMSI discussion list or view archive! Suggest improvements. No question too simple or too complex.
\->Source Code->Commands->MsiExtraFiles

The "MsiExtraFiles" Command

This command is used to associate files to the generated MSI, these are files which should be placed "beside" the MSI (available at install time).

An example where this command can be useful is where you want to nest an MSI and it may also need to have data files placed relative to it. While Windows Installer will display its own message it will be ugly, this command will display a much more user friendly message if the file is missing.

This command also adds to the reserved space on the first media, so for example if your product requires 2 or more CD-ROMs and you place a 100Meg file of the first CD-ROM then MAKEMSI will know that there is now 100 meg less space available and generate CAB files accordingly.

The macro takes these parameters:

Note that currently an administrative install will not copy these files to the generated administrative image, you will need to copy them yourself.

Main "MsiExtraFiles" Related Options

Please see the "options for commands" section of the manual.

#define? DEFAULT_MSIEXTRA_CHECK            Y                          ;;N=NO, Y=YES
#define? MSIEXTRA_MSILOCATION              <$MSI_MSILOCATION>         ;;By default will copy to where MSI is...
#define? MSIEXTRA_CHECK_WHEN_CONDITION     <$CONDITION_INSTALL_ONLY>  ;;Only want the validation during install...
#define? MSIEXTRA_VALIDATE_AFTER           CostFinalize               ;;Must insert "ResolveSource" action if validate occurs during repairs etc!
#define? MSIEXTRA_ALLOW_FILE_SIZE_PARMS    Y                          ;;"N" = Don't allow missing files to be specified by filename and size
#define? DEFAULT_MSIEXTRA_DOCO             Y                          ;;"N" = Don't add to doco (by default)
#define? MSIEXTRA_FILE_DETAILS_HOOK                                   ;;Macro can contain Rexx code to store or process file info
#if ['<$SUNDRY_IF_POSSIBLE_DONT_USE_SCRIPT_CUSTOM_ACTIONS>' = 'Y']
    #define? MSIEXTRA_USE_CUSTOM_ACTIONS    N                         ;;By default don't use VBSCRIPT CA
#elseif
    #define? MSIEXTRA_USE_CUSTOM_ACTIONS    Y                         ;;By default use VBSCRIPT CA
#endif


;--- These options only used when VBSCRIPT is NOT being used ----------------
#(
  #define? MSIEXTRA_ERRORMSG_SUFFIX
  <$CRLF><$CRLF> -\
  A file required by the MSI was not located.
  This could indicate corrupt media.<$CRLF><$CRLF> -\
  [ProductName] version [ProductVersion] is being installed from the "[SourceDir]" directory.<$CRLF><$CRLF>
#)


;--- Options only used when VBSCRIPT is being used --------------------------
#define? MSIEXTRA_CHECK_SEQUENCE   LaunchConditions-    ;;Sequence number for non-deferred CA within "InstallUISequence" & "InstallExecuteSequence" tables

EXAMPLES

<$Table "_Storages" CREATE="N">
    <$Row Name="SomeMsi" Data="SomeMsiWeWillPerformNestedInstallOn.msi" @Validate="NEW -MISSINGDATA">
<$/Table>
<$MsiExtraFiles "Data1.cab">


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]: /Msi[Next]: MsiValFilter


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.