[RESUELTO] Session_setup() en cada inicio de sesión

Preguntas sobre paquetes WAPT / Solicitudes y ayuda sobre paquetes WAPT.
Reglas del foro
Reglas del foro de la comunidad
* Soporte en inglés en www.reddit.com/r/wapt
* El soporte de la comunidad en francés está disponible en este foro
* Por favor, anteponga [RESUELTO] al título del tema si está resuelto.
* Por favor, no edite un tema que esté etiquetado como [RESUELTO]. Abra un nuevo tema haciendo referencia al anterior.
* Especifique la versión de WAPT instalada, la versión completa y el número de compilación (2.2.1.11957 / 2.2.2.12337 / etc.), así como la edición Enterprise/Discovery.
* Las versiones 1.8.2 y anteriores ya no son compatibles. Las únicas preguntas aceptadas sobre la versión 1.8.2 están relacionadas con la actualización a una versión compatible (2.1, 2.2, etc.).
* Especifique el sistema operativo del servidor (Linux/Windows) y la versión (Debian Buster/Bullseye - CentOS 7 - Windows Server 2012/2016/2019).
* Especifique el sistema operativo de la máquina de administración/creación de paquetes y de la máquina con el agente problemático, si corresponde (Windows 7/10/11/Debian 11/etc.).
* Evite hacer varias preguntas al abrir un tema, ya que podría ser ignorado. Si hay varios temas, ábralos por separado, preferiblemente uno tras otro y no todos a la vez (es decir, no sature el foro con spam).
* Incluya fragmentos de código, capturas de pantalla y otras imágenes directamente en la publicación. Los enlaces a Pastebin, Bitly y otros sitios de terceros serán eliminados sistemáticamente.
* Como en cualquier foro comunitario, el soporte es proporcionado voluntariamente por los miembros. Si necesita soporte comercial, puede comunicarse con el departamento de ventas de Tranquil IT al 02.40.97.57.55.
Bloqueado
Tifón
Mensajes: 6
Inscripción: 9 de noviembre de 2022 - 09:40

22 de enero de 2024 - 16:19

Buen día,

Como parte del desarrollo del paquete, necesitaríamos que el código se ejecute cada vez que se abra una sesión.
Actualmente estamos usando la versión 2.4.0141143

Sabiendo que la información de ejecución de session_setup() se registra en waptsession.sqlite, intentamos eliminar este registro

Código: Seleccionar todo

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()
Pero eso nos dice que la base de datos ya está abierta.
¿Hay alguna manera de eliminar este registro para que el código Session_Setup() se ejecute nuevamente en la próxima apertura de sesión?
¿Hay otra forma de hacerlo?

gracias de antemano 🙏😊
Avatar de usuario
Sfonteneau
Experto en WAPT
Mensajes: 2312
Registrado: 10 de julio de 2014 - 23:52
Contacto :

22 de enero de 2024 - 16:34

La forma más sencilla es añadir una

instrucción de retorno "RETRY"

. Dado que el código no funciona, se ejecutará cada vez que se reinicie session_setup.py.

Sin embargo, en este caso, podría ser más sencillo hacerlo en un script de inicio de sesión independiente. Depende de tus necesidades.
Tifón
Mensajes: 6
Inscripción: 9 de noviembre de 2022 - 09:40

22 de enero de 2024 - 17:36

Gracias por la rápida respuesta.🥳

La sugerencia de usar un valor de retorno "RETRY" es interesante;

la probaremos.

Nuestro problema fundamental es que algunos usuarios necesitan poder instalar cualquier fuente sin privilegios de administrador. La idea es crear un paquete que escanee un directorio donde los usuarios puedan colocar sus fuentes para su instalación.
Bloqueado