Pacchetto Scudo Antitempesta

Domande sul packaging WAPT / Richieste e assistenza sui pacchetti Wapt.
Regole del forum
Regole del forum della community
* Supporto in inglese su www.reddit.com/r/wapt
* Supporto della community in francese disponibile su questo forum
* Si prega di anteporre [RISOLTO] al titolo dell'argomento se è stato risolto.
* Si prega di non modificare un argomento contrassegnato con [RISOLTO]. Aprire un nuovo argomento facendo riferimento a quello precedente.
* Specificare la versione di WAPT installata, la versione completa e il numero di build (2.2.1.11957 / 2.2.2.12337 / ecc.) nonché l'edizione Enterprise/Discovery.
* Le versioni 1.8.2 e precedenti non sono più supportate. Le uniche domande accettate relative alla versione 1.8.2 riguardano l'aggiornamento a una versione supportata (2.1, 2.2, ecc.).
* Specificare il sistema operativo del server (Linux/Windows) e la versione (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Specificare il sistema operativo della macchina di amministrazione/creazione dei pacchetti e della macchina con l'agente problematico, se applicabile (Windows 7/10/11/Debian 11/ecc.).
* Evitare di porre più domande quando si apre una discussione, altrimenti potrebbe essere ignorata. Se ci sono più discussioni, aprirle separatamente, preferibilmente una dopo l'altra e non tutte contemporaneamente (ovvero, non intasare il forum).
* Includere frammenti di codice, screenshot e altre immagini direttamente nel post. I link a Pastebin, Bitly e altri siti di terze parti verranno sistematicamente rimossi.
* Come in qualsiasi forum della community, il supporto è fornito volontariamente dai membri. Se si necessita di supporto commerciale, è possibile contattare il reparto vendite di Tranquil IT al numero 02.40.97.57.55
kokoss22
Messaggi: 7
Registrazione: 2 gennaio 2024 - 10:23

2 gennaio 2024 - 10:26

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
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

2 gennaio 2024 - 10:40

Perché avviare la disinstallazione in session_setup e non l'installazione?
kokoss22
Messaggi: 7
Registrazione: 2 gennaio 2024 - 10:23

2 gennaio 2024 - 10:56

Grazie per la rapida risposta.

Ho provato a farlo direttamente da def_install() ma lo script non funziona.
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

2 gennaio 2024 - 11:15

Un codice di ritorno o qualcos'altro?
kokoss22
Messaggi: 7
Registrazione: 2 gennaio 2024 - 10:23

2 gennaio 2024 - 13:19

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
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

2 gennaio 2024 - 14:13

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']))

kokoss22
Messaggi: 7
Registrazione: 2 gennaio 2024 - 10:23

2 gennaio 2024 - 14:28

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(
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

2 gennaio 2024 - 17:51

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?
kokoss22
Messaggi: 7
Registrazione: 2 gennaio 2024 - 10:23

2 gennaio 2024 - 19:59

Sì,

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

Grazie.
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

3 gennaio 2024 - 15:25

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
Risposta