[RISOLTO] Session_setup() ad ogni avvio di sessione

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
Tifone
Messaggi: 6
Registrazione: 9 nov 2022 - 09:40

22 gennaio 2024 - 16:19

Buongiorno,

Come parte dello sviluppo del pacchetto, avremmo bisogno di codice da eseguire ogni volta che viene aperta una sessione.
Attualmente stiamo utilizzando la versione 2.4.0141143

Sapendo che le informazioni di esecuzione per session_setup() sono registrate in waptsession.sqlite, abbiamo provato a eliminare questo record

Codice: Seleziona tutto

def session_setup():
      import sqlite3
      db_path=makepath(application_data,"wapt","waptsession.sqlite")
      con = sqlite3.connect(db_path)
      cur = con.cursor()
      cur.execute("delete from wapt_sessionsetup where package='bpi-FontsInstaller'")
      con.close()
Ma questo ci dice che il database è già aperto.
Esiste un modo per eliminare questo record in modo che il codice Session_Setup() venga eseguito nuovamente all'apertura della sessione successiva?
C'è un altro modo per farlo?

grazie in anticipo 🙏😊
Avatar utente
sfontenau
Esperto WAPT
Messaggi: 2312
Registrato: 10 luglio 2014 - 23:52
Contatto:

22 gennaio 2024 - 16:34

Il modo più semplice è aggiungere

un'istruzione di ritorno "RETRY"

. Poiché il codice non funziona, verrà eseguito ogni volta che si riavvia session_setup.py.

Tuttavia, in questo tipo di situazione, potrebbe essere più semplice farlo in uno script di avvio della sessione separato. Dipende dalle tue esigenze.
Tifone
Messaggi: 6
Registrazione: 9 nov 2022 - 09:40

22 gennaio 2024 - 17:36

Grazie per la rapida risposta.🥳

Il suggerimento di utilizzare un comando di ritorno "RETRY" è interessante;

lo testeremo.

Il nostro problema fondamentale è che alcuni utenti devono essere in grado di installare qualsiasi font senza privilegi di amministratore. L'idea è di creare un pacchetto che analizzi una directory in cui gli utenti possono posizionare i propri font per l'installazione.
Bloccato