Pagina 1 di 1

[RISOLTO] La funzione di configurazione della sessione non viene eseguita automaticamente

Pubblicato: 24 dicembre 2024 - 15:20
di brice73
Buongiorno,

Ho un problema con la funzione `session_setup()`, che non viene eseguita automaticamente. Abbiamo aggiornato WAPT Enterprise all'ultima versione 2.6.0.016613 e finora ho testato solo il pacchetto in questione, che funziona tranne la funzione `session_setup()`. Il comportamento è in realtà piuttosto strano:

- Se un utente ha effettuato l'accesso durante l'installazione del pacchetto, la funzione session_setup verrà eseguita correttamente solo per quell'utente, dopo l'installazione del pacchetto. Tuttavia, non verrà eseguita quando altri utenti effettuano l'accesso.

- Se nessun utente ha effettuato l'accesso, dopo aver installato il pacchetto e aver effettuato l'accesso al computer, la funzione non viene eseguita (anche se ho visto l'icona WAPT apparire brevemente nella barra delle applicazioni durante l'accesso). Tuttavia, se apro un prompt dei comandi ed eseguo `wapt-get session-setup "nome pacchetto"`, la funzione `session-setup` viene eseguita senza problemi! Non capisco perché non venga eseguita automaticamente al momento dell'accesso, mentre può essere eseguito manualmente.

In entrambi i casi, il comportamento è lo stesso di un utente che accede come amministratore o utente standard. Il comportamento è lo stesso anche in Windows 11 o Windows 10.

Ho provato a dare un'occhiata alle impostazioni dell'agente WAPT, ma non ho trovato alcuna impostazione nella documentazione che influisca sulla funzione di configurazione della sessione, quindi non ho notato nulla di speciale nelle impostazioni dell'agente sulle workstation (file wapt-get.ini).

La funzione session_setup() che viene chiamata è la seguente:

Codice: Seleziona tutto

def session_setup():

    import os

    mkdirs(makepath(user_home_directory(),'.arduinoIDE'))

    with open(r'C:\cachefileWAPT\arduino-ide\arduino-cli.yaml', "r", encoding='utf-8') as fichier:
        data = fichier.read()

    data_modified=data.replace('username',os.environ['USERNAME'])

    with open(makepath(user_home_directory(),'.arduinoIDE','arduino-cli.yaml'), "w", encoding='utf-8') as fichier:
        fichier.write(data_modified)

    filecopyto(r'C:\cachefileWAPT\arduino-ide\settings.json',makepath(user_home_directory(),'.arduinoIDE'))

A parte questo singolo problema dell'avvio non automatico della funzione session_setup all'apertura di una sessione, il pacchetto funziona e l'applicazione installata e configurata da esso è funzionale (se la funzione session_setup viene eseguita manualmente).

Potresti aiutarmi a risolvere questo problema?
Distinti saluti

Re: La funzione di impostazione della sessione non viene eseguita automaticamente

Pubblicato: 26 dicembre 2024 - 08:43
di jlepiquet
Buongiorno,

Si tratta di un bug noto da parte nostra: il parametro --hide nel comando avviato non funziona correttamente.

Questo problema è stato risolto nella versione 2.6.16714, alla quale è possibile effettuare l'aggiornamento.

Altrimenti, ecco la procedura da seguire:
In

Codice: Seleziona tutto

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp\WAPT session setup
Rimuovi --hide dal percorso di scelta rapida

Codice: Seleziona tutto

"C:\Program Files (x86)\wapt\wapt-get.exe" session-setup ALL --hide

Codice: Seleziona tutto

"C:\Program Files (x86)\wapt\wapt-get.exe" session-setup ALL
E il codice Python che automatizza tutto questo:

Codice: Seleziona tutto

start_menu_path = start_menu(1) # C:\\ProgramData\\Microsoft\\Windows\\Start Menu 
wapt_session_setup_shortcut = makepath(start_menu_path, 'Programs', 'Startup', 'WAPT session setup.lnk') 
r = winshell.Shortcut(wapt_session_setup_shortcut) 
r.arguments = r.arguments.replace(' --hide', '') 
r.write()

Re: La funzione di impostazione della sessione non viene eseguita automaticamente

Pubblicato: 26 dicembre 2024 - 14:33
di brice73
Salve,

grazie mille per la rapida risposta! :)

Sono lieto di sapere che avete identificato questo bug e che è stato risolto in una nuova versione di WAPT. La installeremo a breve. Grazie anche per la soluzione temporanea di automazione con Python.

Cordiali saluti