[RISOLTO] Disinstallazione del pacchetto microsoft-office-2024-professional

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
lfkl
Messaggi: 23
Registrazione: 11 apr 2019 - 05:51

13 novembre 2024 - 03:47

Ciao a tutti,

Nel pacchetto Microsoft Office Professional 2024 abbiamo aggiunto il supporto per la lingua inglese e strumenti di controllo ortografico al codice XML di configurazione per ProPlus, Visio e Project! Nessun problema di installazione.
<Configuration ID="f884adcc-fd71-4b09-b91f-fXXXXXXXXXX">
<Add OfficeClientEdition="64" Channel="PerpetualVL2024">
<ID prodotto="ProPlus2024Volume" PIDKEY="XJ2XN-FW8RK-XXXXX-XXXXX-XXXXX">
<Language ID="fr-fr" />
<Language ID="en-us" />
</Product>
<ID prodotto "VisioPro2024Volume">
<Language ID="fr-fr" />
<Language ID="en-us" />
</Product>
<ID prodotto "ProjectPro2024Volume">
<Language ID="fr-fr" />
<Language ID="en-us" />
</Product>
<ID prodotto="LanguagePack">
<Language ID="fr-fr" />
<Language ID="en-us" />
</Product>
<ID prodotto "Strumenti di correzione di bozze">
<Language ID="en-us" />
<Language ID="fr-fr" />
</Product>
Per quanto riguarda la disinstallazione, mi risulta che il pacchetto originale del Wapt Store includa solo la versione francese di "ProPlus2024Volume" (il che è perfettamente normale) con una condizione di disinstallazione basata su `app_uninstallkey = "ProPlus2024Volume - fr-fr"`. Anche se non l'ho provato, immagino che la disinstallazione avvenga in base a questa condizione?

La mia domanda è: come faccio a disinstallare il pacchetto insieme a tutte le lingue, gli strumenti e le versioni? Devo aggiungere valori `app_uninstallkey` diversi in base all'output del comando `wapt-get list-registry`?
Ad esempio: app_uninstallkey = "ProPlus2024Volume*", "ProjectPro2024Volume*" (non sono sicuro della mia sintassi).
Oppure esiste un modo più semplice?

Grazie per il tuo aiuto e il tuo tempo. Cordiali saluti,
Ramses
jcgensam
Messaggi: 11
Registrazione: 24 marzo 2025 - 16:39

17 settembre 2025 - 18:15

Ciao,

riapro questa discussione perché ho la stessa domanda. :-)

Disinstallando il pacchetto "ufficiale" fornito da Tranquil IT, la suite Office 2024 rimane parzialmente installata (contiene ancora "Microsoft Office LTSC Standard 2024 - en-us").

Funzionerà una chiave di disinstallazione multivalore per l'app? :

app_uninstallkey = ["Standard2024Volume - fr-fr", "Microsoft Office LTSC Standard 2024 - en-us"]

Cordiali saluti,

JCG
jlepiquet
Messaggi: 69
Registrazione: 3 settembre 2024 - 16:09

18 settembre 2025 - 11:04

Buongiorno,

Dovremmo aggiungere una funzione di disinstallazione con tutte le chiavi per il software che desideri disinstallare.
In base alla chiave di disinstallazione:

Codice: Seleziona tutto

def uninstall():

uninstall_keys = ["Standard2024Volume - fr-fr", "Microsoft Office LTSC Standard 2024 - en-us"]

for uninstall_key in uninstall_keys:
    for to_uninstall in installed_softwares(uninstall_key):
        print(f"Removing: {to_uninstall['name']} ({to_uninstall['version']})")
        killalltasks(ensure_list(control.impacted_process))
        run(uninstall_cmd(to_uninstall["key"]))
        wait_uninstallkey_absent(to_uninstall["key"])
Oppure, in base al nome del software, questo ci consente di aggiungere un asterisco (*) per una maggiore generalità:

Codice: Seleziona tutto

def uninstall():

uninstall_names = ["Standard2024Volume*", "Microsoft Office LTSC Standard 2024*"]

for uninstall_name in uninstall_names:
    for to_uninstall in installed_softwares(name=f"{uninstall_name}"):
        print(f"Removing: {to_uninstall['name']} ({to_uninstall['version']})")
        killalltasks(ensure_list(control.impacted_process))
        run(uninstall_cmd(to_uninstall["key"]))
        wait_uninstallkey_absent(to_uninstall["key"])
jcgensam
Messaggi: 11
Registrazione: 24 marzo 2025 - 16:39

18 settembre 2025 - 16:51

Grazie per il tuo prezioso aiuto!

Infatti, aggiungendo la funzione di disinstallazione, la maggior parte dei componenti aggiuntivi viene rimossa. Solo uno rimane ostinato: Microsoft Office LTSC Standard 2024 - en-us!

Wapt restituisce il seguente errore, generato dalla disinstallazione:

Codice: Seleziona tutto

2025-09-18 16:41:28,939 CRITICAL Error running uninstall script: Command ['"C:\\Program Files\\Common Files\\Microsoft Shared\\ClickToRun\\OfficeClickToRun.exe" scenario=install scenariosubtype=ARP sourcetype=None productstoremove=Standard2024Volume.16_en-us_x-none culture=en-us version.16=16.0'] returned non-zero exit status 1.
Output:La syntaxe du nom de fichier, de répertoire ou de volume est incorrecte.
Tuttavia, OfficeClickToRun.exe è effettivamente presente nella struttura di directory corretta e la sintassi del comando sembra corretta?
jlepiquet
Messaggi: 69
Registrazione: 3 settembre 2024 - 16:09

22 settembre 2025 - 08:53

È possibile lanciare

Codice: Seleziona tutto

"C:\Program Files\Common Files\Microsoft Shared\ClickToRun\OfficeClickToRun.exe" scenario=install scenariosubtype=ARP sourcetype=None productstoremove=Standard2024Volume.16_en-us_x-none culture=en-us version.16=16.0
Puoi accedere al prompt dei comandi come amministratore e vedere come reagisce il PC?
jcgensam
Messaggi: 11
Registrazione: 24 marzo 2025 - 16:39

22 settembre 2025 - 12:46

In effetti, hai ragione, mi compare una finestra "Pronto per disinstallare?" in cui devo cliccare su "Disinstalla" o "Chiudi", quindi richiede un'interazione.

Sto cercando le opzioni per l'esecuzione silenziosa in OfficeClickToRun.exe, ma non è ben documentato e i comandi /? o /h non funzionano.

È strano che funzioni perfettamente per la versione francese ma non per quella americana...
jcgensam
Messaggi: 11
Registrazione: 24 marzo 2025 - 16:39

22 settembre 2025 - 12:49

Oh aspetta, no, in realtà, per la versione francese ho controllato:

"C:\Program Files\Common Files\Microsoft Shared\ClickToRun\OfficeClickToRun.exe" scenario=install scenariosubtype=ARP sourcetype=None productstoremove=Standard2024Volume.16_fr-fr_x-none culture=fr-fr version.16=16.0

Ottengo la stessa finestra di dialogo... Quindi c'è una buona probabilità che la disinstallazione avvenga tramite un processo diverso...
jlepiquet
Messaggi: 69
Registrazione: 3 settembre 2024 - 16:09

22 settembre 2025 - 16:28

Dobbiamo aggiungere DisplayLevel=Falso alla fine del comando di disinstallazione

"C:\Programmi\File comuni\Microsoft Shared\ClickToRun\OfficeClickToRun.exe" scenario=install scenariosubtype=ARP sourcetype=None productstoremove=Standard2024Volume.16_fr-fr_x-none culture=fr-fr version.16=16.0 DisplayLevel=Falso

https://community.spiceworks.com/t/unin...cmd/622809

Se tutti i comandi di disinstallazione sono in questo formato, il codice potrebbe apparire così

Codice: Seleziona tutto

def uninstall():

uninstall_names = ["Standard2024Volume*", "Microsoft Office LTSC Standard 2024*"]

for uninstall_name in uninstall_names:
    for to_uninstall in installed_softwares(name=f"{uninstall_name}"):
        print(f"Removing: {to_uninstall['name']} ({to_uninstall['version']})")
        killalltasks(ensure_list(control.impacted_process))
        run(uninstall_cmd(to_uninstall["key"])+ " DisplayLevel=False")
        wait_uninstallkey_absent(to_uninstall["key"])
jlepiquet
Messaggi: 69
Registrazione: 3 settembre 2024 - 16:09

22 settembre 2025 - 17:05

Tuttavia, ritengo che la disinstallazione di Office elimini il file OfficeClickToRun.exe; dovrebbe essere l'ultimo a essere disinstallato.
jcgensam
Messaggi: 11
Registrazione: 24 marzo 2025 - 16:39

23 settembre 2025 - 13:59

In base ai test che ho effettuato, finché la versione en-US di Office non viene disinstallata, OfficeClickToRun.exe rimane presente e può essere richiamato, quindi dovrebbe funzionare correttamente.

Inoltre, quando avvio manualmente "

Codice: Seleziona tutto

"C:\Program Files\Common Files\Microsoft Shared\ClickToRun\OfficeClickToRun.exe" scenario=install scenariosubtype=ARP sourcetype=None productstoremove=Standard2024Volume.16_en-us_x-none culture=en-us version.16=16.0 DisplayLevel=False
", funziona senza problemi.

Penso che ci stiamo avvicinando al risultato con il frammento di codice che hai suggerito di aggiungere, ma restituisce un errore Python:

Codice: Seleziona tutto

'Traceback (most recent call last):\n  File "<string>", line 856, in main\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 5966, in remove\n    self.uninstall(package)\n  File "C:\\Program Files (x86)\\wapt\\common.py", line 7559, in uninstall\n    entry.call_setup_hook(\'uninstall\', self, params=params,force=force)\n  File "C:\\Program Files (x86)\\wapt\\waptpackage.py", line 3008, in call_setup_hook\n    raise e\n  File "C:\\Program Files (x86)\\wapt\\waptpackage.py", line 3004, in call_setup_hook\n    hookdata = hook_func()\n  File "<string>", line 54, in uninstall\nTypeError: can only concatenate list (not "str") to list\n')
Quindi ho appena corretto la riga:

Codice: Seleziona tutto

run(uninstall_cmd(to_uninstall["key"]) + " DisplayLevel=False")
In

Codice: Seleziona tutto

run(uninstall_cmd(to_uninstall["key"])[0] + " DisplayLevel=False")
E tutto funziona perfettamente!

Grazie mille per il tuo aiuto, non l'avrei mai trovato... Ora il pacchetto è pienamente operativo, ne sono felice!

Sinceramente,

JCG
Bloccato