Copia De Archivos Internos Cuando Usamos DEB


Goto page 1, 2  Next

Subject: Copia De Archivos Internos Cuando Usamos DEB
Tengo un problema que me ha surgido hoy:

El programa ("Cortes"), cuando arranca, si no encuentra la base de datos en el directorio user.home, copia una base de datos "vacia" desde la carpeta "Datos".

Con este código:
If Not Exist(User.home &/ "Cortes") Then
Copy "Cortes" To User.home &/ "Cortes"
Wait 1
endif


Este código funciona perfectamente en el IDE de gambas, pero cuando creo el paquete DEB, y se instala en otro ordenador, falla, parace que no encuentra el archivo "Cortes"

¿sabeis como lo puedo indicar para que lo copie?

Nota:
Uso gambas3.5.4, y antes no se me habia presentado ese problema. No se si es que como siempre trabajo en el IDE, no me habia dado cuenta que con el DEB daba ese problema...

Subject: Re: Copia De Archivos Internos Cuando Usamos DEB
Prueba así y nos cuentas:

Copy "./Cortes" To User.home &/ "Cortes"


Saludos

P.D. Aunque debería de dar lo mismo, porque es una ruta relativa dentro del ejecutable...

Profile PM  
Subject: Re: Copia De Archivos Internos Cuando Usamos DEB
Sólo para aclarar un poco las cosas, cito de Benoît:

Benoît Minisini escribió: 

Project files that won't go into the executable must be stored in the
Project (i.e. '.hidden') directory.

Project files that will go into the executable are stored in the Data
directory (every other non-hidden directories).

...except the files matching the patterns referenced in the Preferences
dialog.



O sea, que si está en Data, debe de ir dentro del ejecutable.

O puede que el error no sea ese, sino algo relacionado con la copia al directorio del usuario. Yo pondría una cláusula try-catch para capturar el texto error y asegurarme.


Saludos

Profile PM  
Subject: Re: Copia De Archivos Internos Cuando Usamos DEB
jguardon:

No, no me funciona me sigue dando el mismo error:

pantallazo_13

La linea 28 es justamente la que hace la copia.

Si quieres echarle un vistaso al código esta alojado en:
https://drive.google.com/folderview...WXM&usp=sharing

Nota:
Si lo ejecuto en el IDE, sin problemas, incluso si luego ejecuto el icono que crea DEB (evidentemente es porque en la ejecución dentro del IDE hizo el copiado). Es muy extraño, porque he usados este mismo procedimiento en otros programas y no me dio problemas... (o por lo menos nadie me dijo nada)...

Last edited by jsbsan on Monday, 13 October 2014, 21:24; edited 2 times in total
Subject: Re: Copia De Archivos Internos Cuando Usamos DEB
Nota:
He hecho otro cambio, el archivo le he puesto extensión , "Costes.sqlite", pero no, sique dando el mismo problema...

Subject: Re: Copia De Archivos Internos Cuando Usamos DEB
Lo he bajado y a mi tampoco me da problemas corriéndolo desde el IDE. Mañana preparo una máquina virtual y pruebo la instalación del deb.

Es posible que sea un bug en la versión 3.5.4 de gambas, pero si es así, en unos días sale la 3.6.0.

Saludos

Profile PM  
Subject: Re: Copia De Archivos Internos Cuando Usamos DEB
jguardon:

Tiene pinta de ser un bug, en concreto con este tipo de archivo (bases de datos sqlite), ya que he probado con otros archivos (.png) y funciona bien.

Saludos

Julio

Subject: Re: Copia De Archivos Internos Cuando Usamos DEB
Yo no he tenido ese problema (aunque en los últimos días no lo he comprobado), pero yo siempre uso una carpeta interna, o sea, "Datos/cortes". Prueba a ver si eso pita...

Profile PM  
Subject: Re: Copia De Archivos Internos Cuando Usamos DEB
Shordi:

Citar:
"Datos/cortes"

¿a que te refieres?
a poner la ruta "Datos/cortes" en la orden Copy (estando los datos en la zona "Datos" del proyecto)
o crear una carpeta en la zona de "Datos" del proyecto -> esto lo he probado y no funciona...


Esta tarde voy a probar una cosa:
- Comprimir el archivo "cortes" en un tar.gz
- Cuando se ejecute el programa, que compruebe si existe el "cortes" y si no es asi, lo copie (el tar.gz) y descomprima.

Con los tar.gz, no he tenido problemas, a ver si el problema es el binario "cortes" .... ya os cuento...

Subject: Re: Copia De Archivos Internos Cuando Usamos DEB
Citar:
¿a que te refieres?

Me refiero a que creo una carpeta dentro del proyecto que llamo "Datos" y en ella meto todo lo que quiero pasar a la carpeta /home/usuario/.nombredelproyecto.
Es más fácil usar la rutina recursiva copia_dir (que ya comentamos en algún que otro hilo) y copiar el contenido de lla carpeta Datos entera al home del usuario.

copia_dir("Datos", user.home &/ "." & application.name)

No sé si me explico


Saludos

Profile PM  
Goto page 1, 2  Next

Page 1 of 2


  
You cannot post new topics
You cannot reply to topics
You cannot edit your posts
You cannot delete your posts
You cannot vote in polls
You cannot attach files
You can download files
You cannot post calendar events

   

This is a "Lo-Fi" version of our main content. To view the full version with more information, formatting and images, please click here.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Generation Time: 0.114s (PHP: -22% SQL: 122%)
SQL queries: 24 - Debug Off - GZIP Enabled