msi-Pakete erstellen Freeware MakeMsi How To

schnell mal ein msi-Paket selbst gebaut:

in diesem Beispiel zeigen wir anhand von makemsi und einem sehr einfachen Beispiel,
wie schnell und ohne Vorkenntnisse ein msi Paket erstellt werden kann.

Unser einfaches Beispiel kann dann folgendes:
- Files kopieren (dll und ocx Dateien , falls vorhanden, werden automatisch registriert)
- Registrierungseinträge anlegen
- eine Batchdatei starten (aus dem msi-Paket heraus)

1) Voraussetztung: Makemsi downloaden und installieren:  Download Makemsi 

2) unser Beispiel runterladen und anpassen:   
simple_example_files_for_makemsi.zip Größe:(11.45 kB): Download .
das Beispiel ist folgendermaßen aufgebaut:

    Download
Dateien und Ordner im Ordner Desktop werden auf den Desktop kopiert,
Dateien und Ordner im Ordner Programme unter Programme,
Start Menu ins Start Men√ľ
und Temp in einen temporären Ordner

in unserem Beispiel kopieren wir eine Batch-Datei in den tempor√§ren Ordner und f√ľhren diese am Ende der Installation aus.

unser Beispiel Script

hier das Beispiel, in rot gehaltene Zeilen m√ľssen wir anfangs nicht anpassen,
interessant f√ľrs erste ist der Teil:"what should the installation do?":
dieser kann angepasst, ergänzt oder Teile weggenommen werden.
Nach der Eingewöhnungsphase, kann dann auch der rote Teil betrachtet werden, soll uns aber momentan nicht vom wesentlichen ablenken.

;----------------------------------------------------------------------------
;--- Global Definitions         -----
;----------------------------------------------------------------------------
#define VALID_MSIVAL2_DIR C:\Programme\MsiVal2  ;;Used before loading MSI header
;--- Include MAKEMSI support (with my customisations and MSI branding) ------
#define VER_FILENAME.VER  version.Ver      ;;I only want one VER file for all samples! (this line not actually required in "tryme.mm")
#include "ME.MMH"
;;;; Disabling Dialog??
;--- Prevent "UISAMPLE" trying to manipulate the dialog deleted below -------
#define UISAMPLE_DISABLE_TYPICAL_SETUP N
#define REMOVED_LicenseAgreementDlg N
#define "ME.MMH"

;--- Remove the dialog ------------------------------------------------------
<$DialogRemove "SetupTypeDlg"> ;; do not ask for Typical Custom complete
<$DialogRemove "LicenseAgreementDlg"> ;;ignore lizenz.rtf File
;----------------------------------------------------------------------------

;--- Want to debug (not common) ---------------------------------------------
;#debug on
;#Option DebugLevel=^NONE, +OpSys^
;--- Define default location where file should install and add files --------

;Installdir:
<$DirectoryTree Key="INSTALLDIR" Dir="c:\Progra~1" CHANGE="\" PrimaryFolder="Y">
;----------------------------------------------------------------------------
;--- what should the installation do? -----
;----------------------------------------------------------------------------

;Example for Filecopy:
<$Files "files\Programme\*.*" SubDir="TREE" DestDir="INSTALLDIR">
<$Files "files\Desktop\*.*" DestDir="[DesktopFolder]">
<$Files "files\Start Menu\*.*" SubDir="TREE" DestDir="[ProgramMenuFolder]">
<$Files "files\temp\*.*" DestDir="[TempFolder]">

;----------------------------------------------------------------------------
;--- Add a registry entry (let it create a component - GUID not fixed!) -----
;----------------------------------------------------------------------------
<$Registry HKEY="LOCAL_MACHINE" Key="SOFTWARE\testkey" Value="testkey_script_example.com">

;----------------------------------------------------------------------------
;--- start a batch script                 -----
;----------------------------------------------------------------------------
#(
    ;--- Run after install, ignore return code and don't wait for completion ---
   <$ExeCa
             EXE='[TempFolder]testtemp.cmd' Args=^"MsgBox Title" "MsgBox text..."^
         WorkDir="TempFolder"
             SEQ="InstallFinalize-"   Type="immediate ASync AnyRc"
      Condition="<$CONDITION_INSTALL_ONLY>"
   >
#)


Wichtig:
mit dem durch makemsi installierten Tool "GUID Generation" muss f√ľr jedes Installationspaket eine eigene GUID generiert und im File: "version.ver" eingetragen werden, da ansonsten beim Setup ein Paket das andere deinstalliert (gleiche GUID)


nach erfolgreichem Anpassen des Skriptes kann die MSI-Datei generiert werden,
dazu ein Rechtsklick auf "installscript.mm" und "Build MSI - Development" (das msi-File wird dann in dem Ordner "out" abgelegt)    Download
  weitere Beispiele sind im Setup abgelegt: "C:\Programme\MakeMsi\Samples\TryMe";
F√ľr eine detaillierte Beschreibung die Hilfe zu Makemsi ansehen (wird mitinstalliert),
oder Online:  Makemsi Manual 
link zum Hersteller  dennisbareis.com/makemsi.htm
Download:  Download Makemsi- free msi

positive Bewertung({{pro_count}})
Beitrag bewerten:
{{percentage}} % positiv
negative Bewertung({{con_count}})

DANKE f√ľr deine Bewertung!

Aktualisiert: 10.02.2016 von Bernhard |ūüĒĒ

‚ě® Silent Install switch div Setuproutinen Unattended Installation | ‚ě¶ System

Fragen / Kommentare


(sortiert nach Bewertung / Datum) [alle Kommentare(neueste zuerst)]

‚úćanonym
29.08.2016 08:12
User: ralle 
Hallo,

funktioniert das auch unter Linux oder nur unter windows. Ich m√∂chte msi pakete unter linux f√ľr windows erstellen.

Danke

‚úćanonym
14.10.2013 16:44
User: anonymous 
Danke f den guten Beitrag!

‚úćanonym
16.08.2011 19:23
User: theo 
@Regulator:
  makemsi downloaden und installieren, die zip-Datei entpacken, und die exe in den Ordner temp legen (temp der entpackten zip datei,
  dann muss noch der bereich "start a batch script" mit dem Namen der exe Datei angepasst werden; wie beschrieben auf Build MSI - Development und fertig.

‚úćanonym
16.08.2011 10:15
User: Regulator 
Ich w√ľrde auch gerne wissen wie man mit dem Programm ein MSI Paket erstellt. wof√ľr sind die Scripte? Wie passt man die an? Was muss man dann machen damit aus einer .exe ein .msi wird?
  usw...
  gibt es vielleicht eine detaillierte Anleitung anhand eines Programms aus dem dann ein MSI wird?
  Wäre super.
  danke schon mal.

‚úćanonym
26.01.2011 16:45
User: Dau 
was mache ich mit dem Script?
  welchen namen bekommt es, und wohin copiere ich das dann?
  wann f√ľhre ich welche Datei aus damit ich mir nun eine msi generiere?
↳
‚úćBernhard
gepostet am 26.01.2011 16:45
herunterladen und anpassen (je nachdem was das msi-Paket machen soll)

Beitrag erstellt von Bernhard

‚úćanonym
06.10.2010 15:06
User: teed 
super Anleitung, funktioniert wunderbar, MakeMSI ist sehr flexibel

‚úćanonym
22.07.2010 16:38
User: leo 
sehr hilfreich!

‚úćanonym
24.06.2010 15:20
User: url 
Danke f√ľr diesen super Beitrag!

‚úćanonym
21.06.2014 15:17
User: Stefan 
Wie kriegt man das Standard Logo raus?