Table of Contents

Miranda 0.9.32

Script by Der-Matze
Comments and improvements welcome

Tested with opsi 4.0.1
Tested with opsi-winst 4.10.x - 4.11.1.6
Tested with Windows XP Professional and Windows 7 Enterprise x64

Installation / Uninstallation Script for Miranda

This script uses the check_nullsoft-exitcode script: https://forum.opsi.org/wiki/userspace:check_nullsoft-exitcode

The installation files can be downloaded from:

http://www.miranda-im.org/download/
http://addons.miranda-im.org/details.php?action=viewfile&id=4066

Install.ins

[Initial]
 
;Standard Text, der während der Installation angezeigt wird
	Message = Bitte warten, das Produkt wird installiert
 
 
 
;Loglevel einstellen
	setLogLevel = 6
 
 
 
;Bei Fehlern abbrechen
	ExitOnError = false
 
 
 
;Syntax Fehler werden in einem separaten Fenster angezeigt
	ScriptErrorMessages = on
 
 
 
;Single-Step Mode nicht verwenden
	TraceMode = off
 
 
 
;Im Batchmode das Winst-Fenster nicht im Vordergrund anzeigen
	StayOnTop = false
 
 
 
 
 
[Actions]
 
;Variable für die Ermittlung des Betriebssystems
	DefVar $OS$
		Set $OS$ = GetOS
 
 
 
;Variable für die Ermittlung der Betriebssystem Unterversion
	DefVar $NTVersion$
		Set $NTVersion$ = GetNTVersion
 
 
 
;Die Variable zur Auswertung des ExitCodes
	DefVar $ExitCode$
 
 
 
;Name des Produkts (max. 12 Zeichen)
	DefVar $ProductName$
		Set $ProductName$ = "Miranda IM"
 
 
 
;Vollständiger Produktname incl. Versionsnummer
	DefVar $ProductNameFull1$
		Set $ProductNameFull1$ = "Miranda 0.9.32"
 
 
 
;Dateiname des Produktbildes mit Erweiterung
	DefVar $ProductPicture$
		Set $ProductPicture$ = "miranda.png"
 
 
 
;Anzeigen der Installationsbenachrichtigung incl. des vollen Produktnamens
	Message "Installiere "+$ProductNameFull1$
 
 
 
;Prüfen der Winst Version
	requiredWinstVersion >= "4.11"
 
 
 
;$ProductPicture$ und $ProductName$ anzeigen
	ShowBitmap /3 "%scriptpath%\" + $ProductPicture$ $ProductName$
 
 
 
;Freien Speicherplatz ermitteln
	if not (HasMinimumSpace ("%SYSTEMDRIVE%", "500 MB"))
		LogError "Nicht genügend Platz auf %SYSTEMDRIVE%"
			isFatalError
	endif
 
 
 
;OS-Version ermitteln
	if ( $NTVersion$ = "Win2K" OR $NTVersion$ = "WinXP" OR $NTVersion$ = "Win NT 5.2" OR $NTVersion$ = "Windows Vista" )
 
 
 
		Winbatch_Install
			sub "%ScriptDrive%\install\check_exitcode\check_nullsoft-exitcode.ins"
 
		Files_Copy
		Files_Delete /AllNTUserProfiles
		Linkfolder_Custom
 
 
 
	else
		LogError "Kein kompatibles Betriebssystem installiert"
			isFatalError
	endif
 
 
 
 
 
[Winbatch_Install]
 
	"%SCRIPTPATH%\miranda-im-v0.9.32-unicode.exe" /S
 
 
 
[Files_Copy]
 
;Deutsches Sprachpaket kopieren
	copy "%SCRIPTPATH%\langpack_german.txt" "%ProgramFiles32Dir%\Miranda IM"
 
 
 
[Files_Delete]
 
;Desktop Verknüpfung aus allen User Profilen löschen (für Win7)
	delete %UserProfileDir%\Desktop\$ProductName$.lnk
 
 
 
[Linkfolder_Custom]
 
;Desktop Verknüpfung aus All Users löschen
	set_basefolder desktopdirectory
		set_subfolder ""
			delete_element "$ProductName$"
 
 
 
;Startmenü anpassen
	Set_basefolder common_programs
		delete_subfolder "$ProductName$"
			set_subfolder ""
				Set_link
					name: $ProductName$
					target: %ProgramFiles32Dir%\$ProductName$\miranda32.exe
					parameters:
					working_dir: %ProgramFiles32Dir%\$ProductName$\
					icon_file:
					icon_index:
				end_link

Uninstall.ins

[Initial]
 
;Standard Text, der während der Deinstallation angezeigt wird
	Message = Bitte warten, das Produkt wird deinstalliert
 
 
 
;Loglevel einstellen
	setLogLevel = 6
 
 
 
;Bei Fehlern abbrechen
	ExitOnError = false
 
 
 
;Syntax Fehler werden in einem separaten Fenster angezeigt
	ScriptErrorMessages = on
 
 
 
;Single-Step Mode nicht verwenden
	TraceMode = off
 
 
 
;Im Batchmode das Winst-Fenster nicht im Vordergrund anzeigen
	StayOnTop = false
 
 
 
 
 
[Actions]
 
;Variable zur Ermittlung der Systemarchitektur
	DefVar $SystemType$
		Set $SystemType$ = GetSystemType
 
 
 
;Die Variable zur Auswertung des ExitCodes
	DefVar $ExitCode$
 
 
 
;Name des Produkts (max. 12 Zeichen)
	DefVar $ProductName$
		Set $ProductName$ = "Miranda IM"
 
 
 
;Vollständiger Produktname incl. Versionsnummer
	DefVar $ProductNameFull1$
		set $ProductNameFull1$ = "Miranda 0.9.32"
 
 
 
;Dateiname des Produktbildes mit Erweiterung
	DefVar $ProductPicture$
		Set $ProductPicture$ = "miranda.png"
 
 
 
;Anzeigen der Deinstallationsbenachrichtigung incl. des vollen Produktnamens
	Message "Deinstalliere "+$ProductNameFull1$
 
 
 
;$ProductPicture$ und $ProductName$ anzeigen
	ShowBitmap /3 "%scriptpath%\" + $ProductPicture$ $ProductName$
 
 
 
Winbatch_Uninstall
	sub "%ScriptDrive%\install\check_exitcode\check_nullsoft-exitcode.ins"
 
Files_Delete
Linkfolder_Custom
 
 
 
 
 
[Winbatch_Uninstall]
 
	"%ProgramFiles32Dir%\Miranda IM\uninstall.exe" /S
 
 
 
[Files_Delete]
 
	delete -sf "%ProgramFiles32Dir%\Miranda IM"
 
 
 
[Linkfolder_Custom]
 
;Startmenü Verknüpfung löschen
	Set_basefolder common_programs
		Set_subfolder ""
			delete_element "$ProductName$"