Esecuzione di script VBS tramite il pacchetto Office 2016

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
Patrice_minagri
Messaggi: 57
Registrazione: 21 ottobre 2016 - 16:56

26 luglio 2018 - 12:32

Ciao a tutti,

Vi scrivo perché sono un po' confuso. Sto creando un pacchetto per l'installazione di Office 2016, con il quale vorrei gestire in anticipo la rimozione delle versioni precedenti di Office, come 2003, 2007 e 2010.

Per eseguire questa rimozione, ho scaricato gli strumenti Microsoft Fixit per ogni versione di Office. Quando si esegue ogni strumento Fixit, viene creato un file VBScript temporaneo, sufficiente per rimuovere le varie versioni di Office 2003 e altre.

Questi file si chiamano Offscrub03.vbs (per il 2003), Offscrub07.vbs (per il 2007), ecc.

Per disinstallare completamente i prodotti, è sufficiente immettere il seguente comando:

Codice: Seleziona tutto

cscript Offscrub03.vbs /ALL /Q /NoCancel /BYPASS 1


Questo comando funziona perfettamente se inserito direttamente al prompt del DOS.

Tuttavia, nel codice del pacchetto WAPT:

Codice: Seleziona tutto

run('script "Offscrub03.vbs" /ALL /Q /NoCancel /BYPASS 1')
Non funziona. Ricevo il seguente errore:

Codice: Seleziona tutto

<RunOuput returncode :0>
"Microsoft (R) Windows Script Host Version 5.8\r\nCopyright (C) Microsoft Corporation 1996-2001. Tous droits r\x82serv\x82s.\r\n\r\nMicrosoft Customer Support Services - Office 2003 Removal Utility\r\n\r\nVersion: 1.39\r\n64 bit OS: Vrai\r\nStart removal: 26/07/2018 10:53:49\r\n\r\nInsufficient registry access permissions - exiting\r\nc:\\Offscrub03.vbs(119, 5) Erreur d'ex\x82cution Microsoft VBScript: Variable non d\x82finie: 'TmpKeyCleanUp'\r\n\r\n"
Si tratta quindi di diritti che sarebbero insufficienti per accedere al registro.

La mia domanda è questa:
Perché otteniamo due risultati diversi: in un caso i diritti non sembrano affatto un problema, mentre nell'altro lo sono? Esiste un altro modo per farlo?

Grazie mille, miei amici waptiani!
Versione WAPT 1.7.4
Avatar utente
vcardon
Esperto WAPT
Messaggi: 273
Registrazione: 06/10/2017 - 22:55
Posizione: Nantes, Francia

30 luglio 2018 - 21:56

Ciao Patrice,

il tuo post merita una risposta perché ci conosciamo bene e siamo molto orgogliosi che WAPT sia di interesse per la tua grande e prestigiosa organizzazione (la cui identità non posso rivelare per rispetto della riservatezza).

Non sono un super esperto di WAPT, ma ti suggerirei di creare un nuovo pacchetto di Office 2016 che entri in conflitto con i tuoi pacchetti di Office precedenti. Quindi, cerca "conflitto" nella documentazione di WAPT per maggiori informazioni su questa funzione.

I tuoi pacchetti di Office precedenti, se esistono, avranno una chiave di disinstallazione. Pertanto, eseguendo il pacchetto WAPT per il tuo Office 2016, disinstalleresti le versioni precedenti perché entrerebbero in conflitto con la versione di Office che desideri installare. In questo modo, non avresti bisogno di affidarti a uno specifico VBS di Microsoft: magia!

Questo metodo ha l'ulteriore vantaggio di essere più robusto e più facile da gestire nel tempo.

Al vostro rientro dalle vacanze, parleremo con i signori S. e F. di Tolosa e con i signori A. e D. di Parigi per valutare l'aggiornamento alla versione Enterprise, più adatta alle vostre esigenze.

Nel frattempo, vi auguriamo una splendida estate.

Cordiali saluti,

Vincent
Vincent CARDON
Tranquillo IT
Avatar utente
htouvet
Esperto WAPT
Messaggi: 436
Registrazione: 16 marzo 2015 - 10:48
Contatto:

6 settembre 2018 - 11:26

Sembra che il problema sia "noto":
https://social.technet.microsoft.com/Fo...roprevious
Ho riscontrato lo stesso problema durante l'esecuzione dello script con SCCM 2012 in contesto di sistema su Win7. Per qualche motivo la funzione CheckRegPermissions restituisce false. Quando ho eseguito lo script manualmente con i diritti di amministratore, ha funzionato. Ha funzionato anche quando ho provato con psexec -s \\machine cmd, che avvia un prompt dei comandi in contesto di sistema.

Ho deciso di eliminare il codice in CheckRegPermissions. Ora lo script funziona correttamente e fa quello che dovrebbe.

Function CheckRegPermissions
CheckRegPermissions = True
End Function 'CheckRegPermissions
Tranquillo IT
Bloccato