Seite 3 von 3

Re: [GELÖST] LibreOffice 3.5.5.3 deinstallieren?

Verfasst: 12 Mär 2014, 15:59
von hawaii
Hi mensch90,

die Lösung ist ja echt top, hatte gerade erst mit OPSI angefangen und die Uninstallstrings bei MSI Paketen waren mir auch immer ein Dorn im Auge, da ich nicht wusste wie ich das nach Version X noch pflegen soll. Macht sicher Sinn wenn man bestimmte Software mit verschiedenen Versionen fahren will, aber für den daily Gebrauch find ich deine Lösung echt top :-)

Da ich gern noch vorher wissen würde ob das Programm auch installiert ist, hab ich deine Lösung noch um eine Abfrage des InstallStates erweitert:

Code: Alles auswählen

DefVar $local_wmic$
DefVar $local_wmic_checkstring$
DefVar $local_wmic_uninstallstring$

; WMIC-Exe
Set $local_wmic$ = "wmic.exe"
; WMIC-Checkinstallstring
Set $local_wmic_checkstring$ = EscapeString: product where "name like 'Adobe Flash%%'" get InstallState
; WMIC-Uninstallstring
Set $local_wmic_uninstallstring$ = EscapeString: product where "name like 'Adobe Flash%%'" call uninstall /nointeractive

if Trim(takeString(4,getOutStreamFromSection("DosInAnIcon_checkinstall"))) = "5"
	DosInAnIcon_uninstall
endif

[DosInAnIcon_checkinstall]
"$local_wmic$" $local_wmic_checkstring$

[DosInAnIcon_uninstall]
"$local_wmic$" $local_wmic_uninstallstring$
Grüßle,
Kai

Re: [GELÖST] LibreOffice 3.5.5.3 deinstallieren?

Verfasst: 13 Mär 2014, 08:35
von mensch90
Die Abfrage ist aber eigentlich unnütz - wenn die Software nicht installiert ist, sagt dir wmic das auch "keine instanzen gefunden" und wirft - wie ich finde - korrekterweise keinen kritischen Errorcode ;)
Den Adobeflashplayer würde ich übrigens anders entfernen - so bekomme ich den ganzen Adobe Flash Schmutz vollständig runter und neu auf das System:

Es gibt ein Removal Tool von Adobe, welches ich immer in der aktuellsten Fassung zusammen mit den aktuellen Flash-Player Versionen herunterlade und triggere: http://helpx.adobe.com/de/flash-player/ ... ndows.html

Code: Alles auswählen


; Installation des Adobe Flashplayers
; WICHTIG: Immer alle drei Dateien aktualisieren!
; - Flash fuer Plugin-Browser
; - Flash fuer AX-Browser
; - Uninstaller für Flash (sehr wichtig, stets den aktuellen von Adobe verwenden!!!)
; info@karsten-nobis.de
; ----------------------------------------------------------------

[Actions]
requiredWinstVersion >= "4.11.2.6"

; Variablendefinition
; ----------------------------------------------------------------

; statisch, nicht verändern
DefVar $errorcode$
DefVar $logdir$
DefVar $productid$  
DefVar $minimumspace$

; variabel, frei veränderbar
DefVar $local_installer_folder$
DefStringList $installer_file$
DefVar $installer_parameter$
DefVar $uninstaller_file$
DefVar $uninstaller_parameter$
DefVar $installer_current$

; Variablenzuweisung
; ----------------------------------------------------------------

; statisch, nur den Gegebenheiten anpassen
Set $logdir$ 						= "%SystemDrive%\tmp"
Set $productid$       				= "adobeflash"
Set $minimumspace$   				= "100 MB"

; teilstatisch, nur den Gegebenheiten anpassen
; Zielpfad auf dem Client
Set $local_installer_folder$		= "%System%\Macromed\Flash\"

; Angabe der Installationsdateien mit Reihenfolge
Set $installer_file$ 				= splitString ("flashplayer_plugin.exe|flashplayer_ax.exe", "|")					
	
; Aufrufparameter für die Installationsdatei				
Set $installer_parameter$   		= "-install -au 2"

; Installationsdatei im Opsi-Paketordner "resources"						
Set $uninstaller_file$ 				= "uninstaller.exe"			
					
; Aufrufparameter für die Deinstallationsdatei	
Set $uninstaller_parameter$ 		= "-uninstall"	

; Skriptbeginn
; ----------------------------------------------------------------

; Prüfung auf freien Speicher
; ----------------------------------------------------------------

if not(Hasminimumspace ("%SystemDrive%", $minimumspace$))
	LogError "Nicht genuegend freier Speicher auf %SystemDrive%, " + $minimumspace$ + " auf dem Speicher %SystemDrive% werden für " + $productid$ + " benoetigt!"
	isFatalError "Kein Speicher"
	; Ablauf stoppen und Installationsstatus auf fehlerhaft setzen.
endif
	
; Eigene Prozedurenaufrufe und Ablaufplanung
; ----------------------------------------------------------------

; variabel, frei veränderbar
	Sub_preactions
	Sub_uninstaller
	Sub_installer

; Skriptende
	
; Subprozeduren
; ---------------------------------------------------------------- 

; Installationsopener - statisch, nicht verändern
[Sub_preactions]
	ShowBitmap "%ScriptPath%\resources\logo.png" $productid$
	Message "Installation von " + $productid$ + " wird ueberprueft..."

; variabel, frei veränderbar
[Sub_uninstaller]
	if FileExists($local_installer_folder$)
		Message "Deinstallation von " + $productid$ + " wird durchgefuehrt..."
		WinBatch_uninstall
		Sub_errorhandler
		Message "Lokales Installationsverzeichnis wird bereinigt..."
		Files_cleanup_local_installer_folder
	endif

[Sub_installer]
	for %CurrentString% in $installer_file$ do Sub_installer_single

[Sub_installer_single]
	Set $installer_current$ = "%CurrentString%"
	Message "Installation von " + $installer_current$ + " wird durchgefuehrt..."
	WinBatch_install_single
	Sub_errorhandler

; Fehlerbehandlungsroutine - statisch, nicht verändern
[Sub_errorhandler]
	Set $errorcode$ = getLastExitCode
	if ($errorcode$ = "0")
		Message "Aktion war erfolgreich!"
	else
		Message "Aktion schlug mit Errorcode " + $errorcode$ + " fehl!"
		isFatalError
	endif

; Sektionen - variabel, frei veränderbar
; ----------------------------------------------------------------

[WinBatch_install_single]
	"%ScriptPath%\resources\$installer_current$" $installer_parameter$
	
[WinBatch_uninstall]
	"%ScriptPath%\resources\$uninstaller_file$" $uninstaller_parameter$

[Files_cleanup_local_installer_folder]
	delete -sf "$local_installer_folder$"








Re: [GELÖST] LibreOffice 3.5.5.3 deinstallieren?

Verfasst: 13 Mär 2014, 22:21
von hawaii
Ah, cool das Tool kannt ich noch nicht, danke für den Hinweis! Man lernt nie aus :)

Re: [GELÖST] LibreOffice 3.5.5.3 deinstallieren?

Verfasst: 14 Mär 2014, 09:56
von mensch90
Gerne - dafür bekommt man ja hier im Forum manchmal ja auch eine Idee/Inspiration zurück. Opsi ist - nach gut 4 Monaten Einarbeitung - ein tolles Stück Software - es gibt kein schlechtes OPSI nur unfähige Scripteschreiber.
Jeder muss jedoch erstmal seine eigene Methode zur Scriptsegmentierung finden - die im Template gezeigte finde ich von der Struktur einfach grauenhaft und unübersichtlich :evil: