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]: Configuration Header Files[Next]: DENNIS.MMH
Have your say! Join the MAKEMSI discussion list or view archive! Suggest improvements. No question too simple or too complex.
\->Source Code->Configuration / Options->Configuration Header Files->ME.MMH

ME.MMH

This is a fairly minimal "configuration header file". It is intended as a simple example of how you can configure MAKEMSI.

Please see "DENNIS.MMH" if you want to see a much more complex example.

;----------------------------------------------------------------------------
;
;    MODULE NAME:   ME.MMH
;
;        $Author:   USER "Dennis"  $
;      $Revision:   1.9  $
;          $Date:   27 Sep 2007 17:38:34  $
;       $Logfile:   C:/DBAREIS/Projects.PVCS/Win32/MakeMsi/ME.mmh.pvcs  $
;
; Very simplistic example of a MAKEMSI customisation/branding file, see
; "DENNIS.MMH" for a more complex variation (please don't use it though...).
;----------------------------------------------------------------------------



;----------------------------------------------------------------------------
;--- Set up some options specific to my requirements ------------------------
;----------------------------------------------------------------------------
#define? DEPT_ARP_URL_PUBLISHER           http://www.MyUrl.com/See/ME.MMH/
#define? DEPT_ARP_URL_TECHNICAL_SUPPORT   http://www.MyUrl.com/See/ME.MMH/Support
#define? DEPT_NAME                        My Name
#define? DEPT_ADDRESS                     My Address (see "ME.MMH")
#define? COMPANY_CONTACT_NAME             <$DEPT_NAME>
#define? COMPANY_CONTACT_NAME_PHONE                ;;No phone
#define? COMPANY_SUMMARY_SCHEMA           110      ;;Minimum v1.1 Installer



;----------------------------------------------------------------------------
;--- Override/set some standard defaults ------------------------------------
;----------------------------------------------------------------------------
#define? DBG_ALL                                   Y         ;;Add MAKEMSI debugging to "console file"
#define? DBG_SAY_LOCATION                           call Say2Logs <$DBG_INDENT> || '  ' || time() || ' '  ;;Adding time makes it a bit slower but useful for debugging slow builds...
#define? COMMONFRAMEWORK_ZIP_SOURCE_FOR_BACKUP     N         ;;No "insurance" until I bother to install "info zip"...
#define? DEFAULT_SERVICE_CONTROL_UNINSTALL_EVENTS            ;;I think this option is safer than the MAKEMSI default
#define? DEFAULT_SERVICE_CONTROL_INSTALL_EVENTS              ;;I think this option is better
#define? DEFAULT_FILE_WANT_FILEHASH                Y         ;;My box can generate MD5 hashes!
#define? COMPANY_PREPROCESS_LICENCE_FILE           Y         ;;Default is to preprocess licence files
#define? MAKEMSI_HTML_EXTENSION                    hta       ;;Default extension (HTML Application - gets around WINXP SP2 issue)
#define? UISAMPLE_LEFTSIDE_TEXT_FONT_COLOR         &H7F0000  ;;Medium Blue in BGR (believe it or not...)
#(
    #define? UISAMPLE_LEFTSIDE_TEXT
    Developed by <$DEPT_NAME> - <$DEPT_ADDRESS>.
    You can put whatever you like here or replace with your own graphics etc.
    This text defined in "ME.MMH"!
#)
#(
    #define? @VALIDATE_TEXT_FOR_MISSINGDATA                   ;;Example only as now duplicates exact text as new default value
    This column is not mentioned in the _Validation table.
    Either add the validation data or use the "@validate" parameter
    on the "row" command (or alter its default).
#)



;----------------------------------------------------------------------------
;--- Include MAKEMSI support ------------------------------------------------
;----------------------------------------------------------------------------
#include "DEPT.MMH"


;----------------------------------------------------------------------------
;--- I want to compress any DLL based custom actions generated by MAKEMSI ---
;----------------------------------------------------------------------------
<$GetFullBuildTimeFileName RcVar="@@FullUpxExeName" Macro="DENNIS_UPX.EXE" File="upx.exe" MustExist="N">
#if [@@FullUpxExeName = '']
    ;--- If UPX.EXE doesn't exist report an error ---------------------------
   ;#error "DLL not being compressed (UPX.EXE not found)"       ;;This is also a sample, can't expect users to have "UPX.EXE"...
    #info  "DLL custom action code will not be compressed (UPX.EXE not found)"
#else
    ;--- "UPX.EXE" was found ------------------------------------------------
    #(
        ;--- Define the macro that MAKEMSI will use as required -------------
        #define+ DLLCA-C_COMPRESS_DLL_COMMAND_LINE      ;;Need to OVERRIDE value (we couldn't do it earler or "GetFullBuildTimeFileName" wouldn't exist!)

        ;--- I expect "upx.exe" to be in the "PATH" environment variable ----
        "<??@@FullUpxExeName>"                          ;;Full name of UPX.EXE (get from "http://upx.sourceforge.net/")

        ;--- I want highest compression -------------------------------------
        --best

        ;--- Backup the DLL as a debugging aid... ---------------------------
        -k
    #)
#endif


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 25 Jun 2008Please email me any feedback, additional information or corrections.
See this page online (look for updates)

[Top][Contents][Prev]: Configuration Header Files[Next]: DENNIS.MMH


MAKEMSI© is (C)opyright Dennis Bareis 2003-2008 (All rights reserved).
Sunday July 06 2008 at 11:25am
Visit MAKEMSI's Home PageThis external link was OK when tested at 21 Jun 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 25 Jun 2008