[RISOLTO] registry_set non funziona?

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
renaud.counhaye
Messaggi: 31
Iscrizioni: 13 dicembre 2017 - ore 11:45

5 giugno 2019 - 11:39

Ciao a tutti,

Attualmente sui server
Versione del server WAPT: 1.7.4
Versione dell'agente WAPT: 1.7.4.6077
Versione di installazione WAPT: 1.7.4.6077
Versione di distribuzione WAPT: 1.7.4.6077
Stato del database: OK (1.7.4.0)

Ho questo nuovo script per bloccare i riavvii automatici di Windows 10 con Windows Update

Codice: Seleziona tutto

from setuphelpers import *
#list de paquets à oublier tout simplement.

uninstallkey = []

#def main():
def install():
    if(windows_version() >= Version('10.0')):
        print('is windows 10')
        #reg
        registry_set('HKEY_LOCAL_MACHINE',r'SOFTWARE/Policies/Microsoft/Windows/WindowsUpdate/AU','NoAutoRebootWithLoggedOnUsers',1,type=REG_DWORD)
        # registry_set(HKEY_LOCAL_MACHINE, r'SOFTWARE/Microsoft/Windows/CurrentVersion/Policies/System','MaxGPOScriptWait',180,type=REG_DWORD)
        print('key set. reboot required to be taken in count.')
    else:
        print('not w10')

if __name__ == '__main__': #run debug
    install()

def uninstall():
    if(reg_key_exists('HKEY_LOCAL_MACHINE',r'SOFTWARE/Policies/Microsoft/Windows/WindowsUpdate/AU','NoAutoRebootWithLoggedOnUsers')):
        registry_set('HKEY_LOCAL_MACHINE',r'SOFTWARE/Policies/Microsoft/Windows/WindowsUpdate/AU','NoAutoRebootWithLoggedOnUsers',0,type=REG_DWORD)
Ho provato a modificare il percorso utilizzando le barre rovesciate (\\) e rimuovendo la "r" davanti (di cui, tra l'altro, non capisco lo scopo), ma continuo a ricevere questo errore quando provo a eseguirlo localmente tramite Pyscripter:
*** Interprete remoto reinizializzato ***
è windows 10
Traceback (chiamata più recente):
File "C:\waptdev\ymg-WU10-autorebootblock-wapt\setup.py", riga 23, in
install()
File "C:\waptdev\ymg-WU10-autorebootblock-wapt\setup.py", riga 17, in install
registry_set('HKEY_LOCAL_MACHINE',r'SOFTWARE/Policies/Microsoft/Windows/WindowsUpdate/AU','NoAutoRebootWithLoggedOnUsers',1,type=REG_DWORD)
File "C:\Program Files (x86)\wapt\setuphelpers.py", riga 1654, in registry_set
with reg_openkey_noredir(root,path,sam=KEY_WRITE,create_if_missing=True) as key:
File "C:\Program Files (x86)\wapt\setuphelpers.py", riga 1431, in reg_openkey_noredir
result = _winreg.OpenKey(rootkey,subkeypath,0, sam | _winreg.KEY_WOW64_64KEY)
TypeError: L'oggetto non è un oggetto PyHKEY


E ricevo un errore simile se provo a distribuirlo tramite la console in seguito:
è Windows 10Traceback (most recent call last):
File "C:\Program Files (x86)\wapt\common.py", riga 3818, in install_wapt
exitstatus = setup.install()
File "c:\users\rcu\appdata\local\temp\waptx2yigf\setup.py", riga 17, in install
File "C:\Program Files (x86)\wapt\setuphelpers.py", riga 1654, in registry_set
with reg_openkey_noredir(root,path,sam=KEY_WRITE,create_if_missing=True) as key:
File "C:\Program Files (x86)\wapt\setuphelpers.py", riga 1431, in reg_openkey_noredir
result = _winreg.OpenKey(rootkey,subkeypath,0, sat | _winreg.KEY_WOW64_64KEY)
TypeError: L'oggetto non è un oggetto PyHKEY
TypeError: L'oggetto non è un oggetto PyHKEY
Potrebbe trattarsi di un errore di autorizzazione?

Grazie, cordiali saluti,
Renaud.
Ultima modifica di renaud.counhaye il 5 giugno 2019 alle 14:48, modificato 1 volta.
Renaud Counhaye,
Tecnico di sistemi di rete,
Divisione Funzioni Centrali
, Gruppo Ymagis
Immagine
renaud.counhaye
Messaggi: 31
Iscrizioni: 13 dicembre 2017 - ore 11:45

5 giugno 2019 - 14:47

Sono riuscito a risolvere il mio problema con questa riga:
registry_set(HKEY_LOCAL_MACHINE,makepath('SOFTWARE','Policies','Microsoft','Windows','WindowsUpdate','AU'),'NoAutoRebootWithLoggedOnUsers',1,type=REG_DWORD)
Renaud Counhaye,
Tecnico di sistemi di rete,
Divisione Funzioni Centrali
, Gruppo Ymagis
Immagine
Patrice_minagri
Messaggi: 57
Registrazione: 21 ottobre 2016 - 16:56

5 giugno 2019 - 15:09

Buongiorno,

Avrei scritto registry_set come segue:

Codice: Seleziona tutto

registry_set(HEY_LOCAL_MACHINE, "Software\\Policies\\Microsoft\\Windows\\WindowsUpdate\\AU, 'NoAutorebootWithLoggedOnUsers', 1, type=REG_DWORD)
invece di :

Codice: Seleziona tutto

registry_set('HKEY_LOCAL_MACHINE',r'SOFTWARE/Policies/Microsoft/Windows/WindowsUpdate/AU','NoAutoRebootWithLoggedOnUsers',1,type=REG_DWORD)
Sebbene il valore 1 debba assumere la forma di 0x01 nell'istruzione per i dati di tipo REG_DWORD (non ricordo a memoria).

Funziona con \\

Sinceramente.

Patrizio
Versione WAPT 1.7.4
renaud.counhaye
Messaggi: 31
Iscrizioni: 13 dicembre 2017 - ore 11:45

5 giugno 2019 - 16:36

Ciao Patrice, :)

come ti dicevo prima, ho provato il percorso con le barre rovesciate, ma non ha funzionato. :/
Forse è solo questione di fortuna?

Saluti
Renaud Counhaye,
Tecnico di sistemi di rete,
Divisione Funzioni Centrali
, Gruppo Ymagis
Immagine
Bloccato