disinstalla e uninstallstring

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
Bloccato
Stenone
Messaggi: 36
Registrazione: 2 giugno 2016 - 8:04 AM

28 settembre 2016 - 13:11

Ciao,

ecco il codice del mio file setup.py.

Si tratta di un file batch per l'installazione e funziona correttamente. Sto anche cercando di eseguire una disinstallazione con un file batch, ma si blocca...

quale dovrei usare, `uninstall` o `uninstallstring`? Grazie per l'aiuto!

from setuphelpers import *
uninstallkey = []
uninstallstring = [u'"C:\\FirewallRemoveEsetRule.bat"']

def install():
run(r'"FirewallAddEsetRule.bat"')

def uninstall():
run(u'"FirewallRemoveEsetRule.bat"')

e errori:
2016-09-28 15:09:00,963 WARNING Avviso: CalledProcessError: il comando '(u'"C:\\FirewallRemoveEsetRule.bat"',)' ha restituito uno stato di uscita diverso da zero 1
2016-09-28 15:09:00,986 CRITICAL Errore durante l'esecuzione dello script di disinstallazione: il comando '(u'"FirewallRemoveEsetRule.bat"',)' ha restituito uno stato di uscita diverso da zero 1
=== Pacchetti rimossi ===
allowesetinstall
=== Errore durante la rimozione dei pacchetti ===
consenti l'installazione
Natanaele
Messaggi: 7
Iscrizioni: 18 agosto 2016 - ore 17:16

10 aprile 2017 - 16:32

Ciao,
hai per caso trovato una soluzione a questo problema?
Nathanael
Avatar utente
agauvrit
Esperto WAPT
Messaggi: 238
Registrazione: 17 nov 2016 - 10:25
Posizione: Nantes
Contatto:

10 aprile 2017 - 16:58

Buongiorno,
Stenon scrisse:

Codice: Seleziona tutto

from setuphelpers import *
uninstallkey = []
uninstallstring = [u'"C:\\FirewallRemoveEsetRule.bat"']

def install():
    run(r'"FirewallAddEsetRule.bat"')

def uninstall():
    run(u'"FirewallRemoveEsetRule.bat"')

Durante l'installazione, lo script *.bat viene eseguito correttamente, nessun problema, poiché è incluso nel pacchetto (suppongo?)

La disinstallazione, tuttavia, fallisce perché in nessun punto della funzione di installazione si copia e si incolla questo script nella radice dell'unità C:\

Se vuoi che funzioni, usa una copia del file con la funzione filecopytoche ti permetterà di chiamare il tuo script FirewallRemoveEsetRule.bat durante la disinstallazione.

Il codice sorgente diventerebbe quindi:

Codice: Seleziona tutto

from setuphelpers import *
uninstallkey = []

def install():
    run(r'"FirewallAddEsetRule.bat"')
    filecopyto("FirewallRemoveEsetRule.bat","C:\\")

def uninstall():
    run(u'"C:\\FirewallRemoveEsetRule.bat"')
Sinceramente,

Alessandro
Stenone
Messaggi: 36
Registrazione: 2 giugno 2016 - 8:04 AM

22 aprile 2017 - 12:55

Grazie,

nel frattempo avevo creato un secondo pacchetto wapt chiamato remove.bat.

Ma un GRAZIE di cuore per la tua spiegazione e la tua risposta chiara!

PS: Il video della diretta è stato davvero ottimo; sembra che ora ti conosciamo meglio.
Bloccato