Deinstallation wird ausgeführt trotz abfrage

Post Reply
ARemus
Posts: 139
Joined: 15. Apr 2013, 13:04
Contact:

Deinstallation wird ausgeführt trotz abfrage

Post by ARemus » 30. Jun 2020, 15:29

Hallo zusammen,

evtl. kann mir jemand das folgende Phänomen erklären.
Ich habe im folgenden Paket für das Update von unserm VPN Client die folgende Abfrage ein.

Code: Select all

[Product]
#Set:Product, DONTDELETE
#Set:Installation, DONTDELETE
#Set:Uninstallation, DELETE
#Reg:OnUninstallProduct, DELETE
#Reg:Product
#Ini:Product
#Security:Product


[Set:Product]
DelTree "C:\ProgramData\$Matrix42Scripts$\WatchGuard\WatchGuard\Mobile VPN SSL" 
If DoesRegKeyExist ("HKLM,SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\%VM_UninstallKey%,UnInstallString") == "1" | DoesRegKeyExist ("HKLM,SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Uninstall\%VM_UninstallKey%,UnInstallString") == "1" Then "Set:Repair" EndIf


[Set:Installation]
;Prüfen ob Client im InternenNetz
callhidden cmd.exe /c ipconfig >"%Temp%"\ip.txt
If DoesTextInFileExist("192.168.179.2", "%Temp%\ip.txt") == "1" | DoesTextInFileExist("192.168.174.254", "%Temp%\ip.txt") == "1"|  Then "SSLVPNINHOUSE" ELSE "MOBILEOFFICE" EndIf

Trotzdem hatten wir das Problem, das er einen Deinstallation des alten clients ausgeführt hatte.

Wir haben dann einen Test mit einem anderen Firmennetz gemacht. Dort hat er auch den alten Client entfernt, aber dann geschrieben der Client ist nicht im Office. Also hat else ausgeführt.

Kann wer uns einen Tipp geben, was er vorher macht?

Set:Repair ist leer und wir nicht genutzt.

Steinbit
Posts: 128
Joined: 30. Nov 2017, 16:32
Contact:

Re: Deinstallation wird ausgeführt trotz abfrage

Post by Steinbit » 17. Aug 2020, 16:46

Ich denke, dasd deine IF-Schleife in der CMD nicht richtig ist.

Die einzelne Pipe ohne Klammer sorgt dafür dass der nachfolgende Befehl ausgeführt wird.
When piping commands, the expression is evaluated from left to right, so

IF SomeCondition Command1 | Command2is equivalent to:

(IF SomeCondition Command1 ) | Command2
The pipe is always created and Command2 is always run, regardless whether SomeCondition is TRUE or FALSE
https://ss64.com/nt/if.html

Post Reply

Return to “Paketierung”

Who is online

Users browsing this forum: No registered users and 2 guests