Pagina 1 di 2

Pacchetto Scudo Antitempesta

Pubblicato: 2 gennaio 2024 - 10:26
di kokoss22
Buongiorno,

Sto cercando di creare un pacchetto di disinstallazione per l'applicazione SSL Stormshield VPN Client. La nostra versione WAPT (versione Enterprise 2.4.0.14143)

L'aspetto unico di questa VPN è che l'applicazione è stata distribuita tramite Criteri di Gruppo qualche tempo prima dell'implementazione di WAPT. Abbiamo diverse versioni del client Stormshield nella nostra rete. Lo script di disinstallazione funziona correttamente fino alla versione 2.8.

Ho provato a impostare un secondo script di disinstallazione per le versioni successive alla 2.8, ma riscontro un problema perché l'applicazione è stata installata nella sessione dell'utente (che non ha diritti di amministratore). Ecco lo script:

Codice: Seleziona tutto

# -*- coding: utf-8 -*-
from setuphelpers import *

uninstallkey = []

def install():
   pass

def session_setup():
for to_uninstall in installed_softwares(name=r"Stormshield SSL VPN Client"):
   if Version(to_uninstall["version"]) < Version('3.4') or force:
   print("Removing: %s (%s)" % (to_uninstall["name"], to_uninstall["version"]))
   killalltasks(control.impacted_process.split(","))
   run(r"MsiExec.exe /X{'clé'} /qn")
Lo script si avvia correttamente, ma viene visualizzata una finestra che richiede i diritti di amministratore.

Sono bloccato su questo passaggio

Grazie per l'aiuto

Re: Pacchetto Stormshield

Pubblicato: 2 gennaio 2024 - 10:40
di sfontenau
Perché avviare la disinstallazione in session_setup e non l'installazione?

Re: Pacchetto Stormshield

Pubblicato: 2 gennaio 2024 - 10:56
di kokoss22
Grazie per la rapida risposta.

Ho provato a farlo direttamente da def_install() ma lo script non funziona.

Re: Pacchetto Stormshield

Pubblicato: 2 gennaio 2024 - 11:15
di sfontenau
Un codice di ritorno o qualcos'altro?

Re: Pacchetto Stormshield

Pubblicato: 2 gennaio 2024 - 13:19
di kokoss22
Sì, ecco il feedback che ho ricevuto:

Codice: Seleziona tutto

File "C:\\Program Files (x86)\\wapt\\common.py", line 4083, in install_wapt
    exitstatus = setup.install()
  File "C:\\WINDOWS\\TEMP\\waptpyvay117\\setup.py", line 11, in install
  File "C:\\Program Files (x86)\\wapt\\common.py", line 3860, in run
    return ensure_unicode(run(*arg, pidlist=self.pidlist,**args))
  File "C:\\Program Files (x86)\\wapt\\waptutils.py", line 2118, in run
    raise CalledProcessErrorOutput(proc.returncode, cmd, \'\'.join(output))
waptutils.CalledProcessErrorOutput: Command \'MsiExec.exe /X{D76AA950-B963-4FF9-A389-01861A32876A} /qn\' returned non-zero exit status 1605.
Output:C\x00e\x00t\x00t\x00e\x00 \x00a\x00c\x00t\x00i\x00o\x00n\x00 \x00e\x00s\x00t\x00 \x00v\x00a\x00l\x00i\x00d\x00e\x00 \x00u\x00n\x00i\x00q\x00u\x00e\x00m\x00e\x00n\x00t\x00 \x00p\x00o\x00u\x00r\x00 \x00l\x00e\x00s\x00 \x00p\x00r\x00o\x00d\x00u\x00i\x00t\x00s\x00 \x00d\x00Ú\x00j\x00Ó\x00 \x00i\x00n\x00s\x00t\x00a\x00l\x00l\x00Ú\x00s\x00.\x00
\x00\r\x00
']]
Quando eseguo msiexec dalla workstation, mi vengono richiesti i diritti di amministratore per continuare la disinstallazione

Re: Pacchetto Stormshield

Pubblicato: 2 gennaio 2024 - 14:13
di sfontenau
Il codice di errore è 1605

http://msdn.microsoft.com/fr-fr/library ... s.85).aspx

Quindi ERROR_UNKNOWN_PRODUCT

A mio parere, il processo di disinstallazione rimuove più voci contemporaneamente, quindi è possibile correggere il pacchetto utilizzando `uninstall_key_exists`. Se la chiave non esiste più, continuare; questo evita di disinstallare software già disinstallato

Codice: Seleziona tutto

from setuphelpers import *

uninstallkey = []

def install():
    for to_uninstall in installed_softwares(name=r"Stormshield SSL VPN Client"):
        if not uninstall_key_exists(to_uninstall['key']):
            continue
        if Version(to_uninstall["version"]) < Version('3.4') or force:
            print("Removing: %s (%s)" % (to_uninstall["name"], to_uninstall["version"]))
            killalltasks(control.impacted_process.split(","))
            run(uninstall_cmd(to_uninstall['key']))


Re: Pacchetto Stormshield

Pubblicato: 2 gennaio 2024 - 14:28
di kokoss22
Continuo a ricevere lo stesso errore

Codice: Seleziona tutto

Installing paquet(=0-19)
Removing: Stormshield SSL VPN Client (3.2.3)
Erreur lors de l'installation de ['paquet']: erreurs dans les paquets [[PackageRequest(package='paquet',architectures=['x64'],locales=['fr'],maturities=['PROD'],tags=['windows-10', 'win-10', 'w-10', 'windows10', 'win10', 'w10', 'windows', 'win', 'w'],min_os_version=Version('10.0.22621'),max_os_version=Version('10.0.22621')), PackageEntry('paquet','0-19'), 'Traceback (most recent call last):
 File "C:\\Program Files (x86)\\wapt\\common.py", line 5192, in install
 result = self.install_wapt(p.localpath,
 File "C:\\Program Files (x86)\\wapt\\common.py", line 4176, in install_wapt
 raise e
 File "C:\\Program Files (x86)\\wapt\\common.py", line 4083, in install_wapt
 exitstatus = setup.install()
 File "C:\\WINDOWS\\TEMP\\waptai4rekuu\\setup.py", line 13, in install
 File "C:\\Program Files (x86)\\wapt\\common.py", line 3860, in run
 return ensure_unicode(run(*arg, pidlist=self.pidlist,**args))
 File "C:\\Program Files (x86)\\wapt\\waptutils.py", line 2118, in run
 raise CalledProcessErrorOutput(proc.returncode, cmd, \'\'.join(output))
waptutils.CalledProcessErrorOutput: Command [\'MsiExec.exe\', \'/X{D76AA950-B963-4FF9-A389-01861A32876A}\', \'/q\', \'/norestart\'] returned non-zero exit status 1605.
Output:C\x00e\x00t\x00t\x00e\x00 \x00a\x00c\x00t\x00i\x00o\x00n\x00 \x00e\x00s\x00t\x00 \x00v\x00a\x00l\x00i\x00d\x00e\x00 \x00u\x00n\x00i\x00q\x00u\x00e\x00m\x00e\x00n\x00t\x00 \x00p\x00o\x00u\x00r\x00 \x00l\x00e\x00s\x00 \x00p\x00r\x00o\x00d\x00u\x00i\x00t\x00s\x00 \x00d\x00Ú\x00j\x00Ó\x00 \x00i\x00n\x00s\x00t\x00a\x00l\x00l\x00Ú\x00s\x00.\x00
\x00\r\x00
']]
Traceback (most recent call last):
File "C:\Program Files (x86)\wapt\waptservice\service.py", line 1910, in run
self.running_task.run()
File "C:\Program Files (x86)\wapt\waptservice\waptservice_common.py", line 716, in run
self._run()
File "C:\Program Files (x86)\wapt\waptservice\waptservice_common.py", line 1288, in _run
raise Exception(_('Error during install of {}: errors in packages {}').format(

Re: Pacchetto Stormshield

Pubblicato: 2 gennaio 2024 - 17:51
di sfontenau
Microsoft restituisce correttamente:

Codice: Seleziona tutto

ERROR_UNKNOWN_PRODUCT

    1605 (0x645)

    Cette action est valide uniquement pour les produits déjà installés.
Quindi, uno scenario strano.

Se esegui il comando:

Codice: Seleziona tutto

MsiExec.exe /X{D76AA950-B963-4FF9-A389-01861A32876A}
Funziona sulla macchina se si arriva fino in fondo?

Re: Pacchetto Stormshield

Pubblicato: 2 gennaio 2024 - 19:59
di kokoss22
Sì,

l'avevo già testato in precedenza; devo inserire le credenziali di amministratore, ma una volta fatto, il comando funziona.

Grazie.

Re: Pacchetto Stormshield

Pubblicato: 3 gennaio 2024 - 15:25
di sfontenau
Dovresti provare a eseguire il comando in psexec:

Codice: Seleziona tutto

psexec -s -i cmd
e nel prompt dei comandi, sotto l'account di sistema, eseguire il comando