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]: TryMeAddVersionKeywordAndLaunchCondition.MM[Next]: TryMeTaskSchedules.MM
Have your say! Join the MAKEMSI discussion list or view archive! Suggest improvements. No question too simple or too complex.
\->MAKEMSI Installs...->Samples Installed by MAKEMSI->Samples - Build New MSI/MSM->TryMeCreate[START]OfMsiFromScratch.MM

TryMeCreate[START]OfMsiFromScratch.MM

This is one of the MAKEMSI samples which build a new MSI/MSM.

Most people should ignore this example as it is one to demonstrate (to a small degree) how you could create a new MSI with full control (MAKEMSI does virtually nothing for you). See the "Create an MSI from Scratch" section for more info.

;----------------------------------------------------------------------------
;    MODULE NAME:   TryMeCreate[START]OfMsiFromScratch.MM
;
;        $Author:   USER "Dennis"  $
;      $Revision:   1.4  $
;          $Date:   21 Dec 2006 17:54:02  $
;       $Logfile:   C:/DBAREIS/Projects.PVCS/Win32/MakeMsi/TryMeCreate[START]OfMsiFromScratch.MM.pvcs  $
;
; DESCRIPTION
; ~~~~~~~~~~~
; This is a simple sample/test MSI.
;
; This shows how an MSI could be created from scratch.
; It doesn't attempt to create a working MSI, just to demonstrate the basics.
; If you try to install the generated MSI you will get an error message
; about an invalid package, use "ORCA.EXE" or similar table editor to examine
; it (there will only be the single row in the single table ("Binary table).
;
; As the MSI is not complete you could expect it to fail validation, this is
; why this sample disables validation.
;----------------------------------------------------------------------------


;--- Disable Validation (we know it will fail badly) ------------------------
#define  VALID_ValidateTheGeneratedMsi          ;;remember only generating partial MSI!


;--- We will do everything ourselves ----------------------------------------
#define  DBG_ALL                     Y          ;;Good unless you think it impacts performance
#include "OpenMsi.mmh"


;--- Where do we wish the MSI generated? ------------------------------------
#define MSI_DIR <$MAKEMSI_OUT_MSI_DIR>          ;;Ends with '\'
#DefineRexx ''
    ;--- Make sure it exists ------------------------------------------------
    call MakeDirectoryTree "<$MSI_DIR>"
#DefineRexx


;--- Create a new MSI and don't start with a template -----------------------
<$Msi "<$MSI_DIR>WillNotInstall-UseOrcaToExamine.MSI" CREATE="Y">
    ;--- Add Binary to the file ---------------------------------------------
    <$Binary "c:\program files\makemsi\MakeMSI.DLL">
<$/Msi>


Microsoft awarded me an MVP (Most Valuable Professional award) in 2004, 2005, 2006 & 2007 for the Windows SDK (Windows Installer) area.This external link was OK when tested at 23 Aug 2008Please email me any feedback, additional information or corrections.
See this page online (look for updates)

[Top][Contents][Prev]: TryMeAddVersionKeywordAndLaunchCondition.MM[Next]: TryMeTaskSchedules.MM


MAKEMSI© is (C)opyright Dennis Bareis 2003-2008 (All rights reserved).
Thursday August 28 2008 at 11:28am
Visit MAKEMSI's Home PageThis external link was OK when tested at 13 Aug 2008

HTML page dated Mon, 29 Jan 2007 00:11:11 GMT
Microsoft awarded me an MVP (Most Valuable Professional award) in 2004, 2005, 2006 & 2007 for the Windows SDK (Windows Installer) area.This external link was OK when tested at 23 Aug 2008