TRUCO: Hacer Que Aplicación Se Inicie Automaticamente Al Inicio De Sesión


Ir a la página 1, 2  Siguiente

Objetivo: TRUCO: Hacer Que Aplicación Se Inicie Automaticamente Al Inicio De Sesión
En Ubuntu (y supongo Debian y derivados) se puede hacer que el paquete de instalación ponga a la aplicación como Startup Application.

startup_app

Para ello hay que copiar un archivo *.desktop de la aplicación en la carpeta .hidden del proyecto. Y al crear el paquete de instalación en el paso "8. Extra Files" lo agregamos para que se copie en el directorio /etc/xdg/autostart/

config

Nota: Pueden crear una primera vez el paquete de instalación de la forma normal, y al descomprimir el *.deb obtener el *.desktop.

Saludos.

Objetivo: Re: TRUCO: Hacer Que Aplicación Se Inicie Automaticamente Al Inicio De Sesión
El procedimiento es correcto pero a mí me parece muy drástico. Le instalas el programa al inicio de sesión sin posibilidad de elección. Además, si le quieres dar al usuario la opción de no ejecutar al inicio, al estar el .desktop ubicado en una de las carpetas del sistema, tendrías que pedirle que teclease la clave de superusuarios para retirarlo y demás.

En lugar de utilizar la carpeta de autostart del sistema, yo prefiero utilizar la de la sesión del usuario (/home/usuario/.config/autostart). Tiene el mismo efecto y, además, puedes poner en la pantalla de preferencias de tu aplicación la opción de ejecutar al inicio o no, dejar al usuario que decida. En éste caso no tienes que hacer nada en la instalación. Colocas el .desktop en esta carpeta durante la primera ejecución del programa y listo.

Pero el procedimiento que indicas es correcto, como digo.

Saludos

Perfil MP  
Objetivo: Re: TRUCO: Hacer Que Aplicación Se Inicie Automaticamente Al Inicio De Sesión
muy bueno los aportes vamos a incrustarlo en visor a ver como queda

saludos.

última edición por v3ctor el Viernes, 19 May 2017, 20:53; editado 1 vez
Objetivo: Re: TRUCO: Hacer Que Aplicación Se Inicie Automaticamente Al Inicio De Sesión
aplique la idea de shordi

3344_1495223071_892871

Public Sub chkAutoArranque_Click()
Dim file As String

file = User.Home & "/.config/autostart/VisorRV1960.desktop"
'/home/user/.config/autostart

If chkAutoArranque.Value Then

If Not Exist(file) Then
Copy "textos/VisorRV1960.desktop" To file
Endif

Else
Try Kill File
Endif


End



Archivo que creamos y guardamos en la carpeta datos del proyecto, creamos un txt y renombramos con nombre de aplicación exacto y .desktop

[Desktop Entry]
Name=VisorRV1960
Type=Application
Exec=/usr/bin/VisorRV1960
Terminal=false
NoDisplay=false
Categories=Education
Comment=Visor de versículos, búsquedas y estudio de la Biblia Reina-Valera 1960.

aunque pienso que en otros sistema el ejecutable este en otra ubicación... entonces abría que hacer un
wicht nombre-aplicacion y modificar 'Exec=ruta que da wicht'

Saludos

última edición por v3ctor el Viernes, 19 May 2017, 20:50; editado 1 vez
Objetivo: Re: TRUCO: Hacer Que Aplicación Se Inicie Automaticamente Al Inicio De Sesión
88889999

así se ve en mi sistema (Linux Mint Mate 18.1)

Objetivo: Re: TRUCO: Hacer Que Aplicación Se Inicie Automaticamente Al Inicio De Sesión
shordi escribió: [Ver mensaje]
El procedimiento es correcto pero a mí me parece muy drástico. Le instalas el programa al inicio de sesión sin posibilidad de elección. Además, si le quieres dar al usuario la opción de no ejecutar al inicio, al estar el .desktop ubicado en una de las carpetas del sistema, tendrías que pedirle que teclease la clave de superusuarios para retirarlo y demás.

En lugar de utilizar la carpeta de autostart del sistema, yo prefiero utilizar la de la sesión del usuario (/home/usuario/.config/autostart). Tiene el mismo efecto y, además, puedes poner en la pantalla de preferencias de tu aplicación la opción de ejecutar al inicio o no, dejar al usuario que decida. En éste caso no tienes que hacer nada en la instalación. Colocas el .desktop en esta carpeta durante la primera ejecución del programa y listo.

Pero el procedimiento que indicas es correcto, como digo.

Saludos


Sí es algo agresivo como yo sugiero dado que desde el primer reinicio de sesión la aplicación se iniciará automáticamente. Pero el usuario sigue decidiendo si quiere ese comportamiento o no, basta en que lo habilite/deshabilite en Startup Applicattions (no necesita ser root para eso).

Una ventaja que tiene éste método es que la aplicación se iniciará automáticamente por default para todos los usuarios incluidos los nuevos.

Saludos.

Objetivo: Re: TRUCO: Hacer Que Aplicación Se Inicie Automaticamente Al Inicio De Sesión
v3ctor escribió: [Ver mensaje]


Dim file As String



Ojo, v3ctor, que file es una palabra reservada. Es una clase de gambas para manejar ficheros, no deberías usarla como nombre de variable pues te puede dar más de un dolor de cabeza...

Saludos

Perfil MP  
Objetivo: Re: TRUCO: Hacer Que Aplicación Se Inicie Automaticamente Al Inicio De Sesión
jguardon escribió: [Ver mensaje]
v3ctor escribió: [Ver mensaje]


Dim file As String



Ojo, v3ctor, que file es una palabra reservada. Es una clase de gambas para manejar ficheros, no deberías usarla como nombre de variable pues te puede dar más de un dolor de cabeza...

Saludos


ah! ni cuenta me di, gracias por el aviso, ya cambio el nombre de la variable.

Saludos

Objetivo: Re: TRUCO: Hacer Que Aplicación Se Inicie Automaticamente Al Inicio De Sesión
jguardon escribió: [Ver mensaje]
...file es una palabra reservada. Es una clase de gambas para manejar ficheros, no deberías usarla como nombre de variable pues te puede dar más de un dolor de cabeza...

Como regla general para no tener problemas de este tipo, se pueden agregar algunos caracteres al principio de la variable, en el wikilibro de gambas hay un artículo sobre convencion de nombres

Saludos.

Perfil MP  
Objetivo: Re: TRUCO: Hacer Que Aplicación Se Inicie Automaticamente Al Inicio De Sesión
buenas

jaja no bien deje disponible la nueva versión 0.6.3 de VisorRV1960 he descubierto un error no se si por desconocimiento inexperiencia o ambas.

la cosa es, que la carpeta autostart no esta creada predeterminada mente, se ve que se crea cuando se configura cualquier aplicación al inicio de la sesión y esto del sistema operativo.

por este motivo el código de mas abajo es ingenuo tira el error file o directorio no encontrado en realidad lo que no esta es la carpeta 'autostart'.

para arreglar esto hay que chequear si la carpeta existe y si tiene permisos de escritura y después si intentar con try copiar el archivo .desktop

asique a tener cuidado gente...

a los que tienen otros sistemas que no sean mint mate o cinnamon les pediría que se fijaran si esta carpeta autostart esta en user.home/.config/autostart

aunque con un try seria suficiente para evitar futuros cuelgues de ultima lo máximo que pasaría es que la aplicación no arrancaría con la sesión.


Public Sub chkAutoArranque_Click()
Dim file As String

file = User.Home & "/.config/autostart/VisorRV1960.desktop"
'/home/user/.config/autostart

'existe carpeta
no: entonces cree la carpeta

If chkAutoArranque.Value Then

If Not Exist(file) Then
'tiene permisos de escritura
'si: entonces copie el archivo usando try
' try Copy "textos/VisorRV1960.desktop" To file
Copy "textos/VisorRV1960.desktop" To file
Endif

Else
Try Kill File
Endif


End

Ir a la página 1, 2  Siguiente

Página 1 de 2


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.1102s (PHP: -16% SQL: 116%)
Consultas SQL: 25 - Debug off - GZIP Activado