https://foro.gambas-es.org/viewtopic.php?f=1&t=5632
-----------------------------------
Shell
Thursday, 07 July 2016, 10:29

Creando Un Paquete De Instalación
-----------------------------------
Buenos días!.

Ayer estuve probando a crear un paquete de instalación funcional. Como no suelo hacerlo mucho, tengo ciertos despistes.

Retome un viejo ejemplo donde tenía imágenes de animales y sonidos.
Haciendo caso a Julio cree un archivo tar.gz, aunque no hubiera tantos archivos.

El siguiente problema que me encontré fueron las rutas. Yo estaba erre, que erre con las rutas de la aplicación.
Cuando iba a buscar la aplicación tanto los sonidos como las imágenes luego no las encontraba.

Así que buscando encontré que había que copiar el archivo comprimido al directorio: .hidden
Según vas dando los pasos de creación del paquete llega una parte, que es añadir archivos y es en
el directorio ".hidden" donde va a buscar estos.

Le dije que el directorio destino era /tmp

Bien, este es el modulo que se encarga de hacer el trabajo de crear el directorio oculto en la home del usuario
y de descomprimir. ( Al principio no entendía la forma de trabajar del compresor Tar ).

[code linenumbers=false syntax=gambas]
' Rutas donde se encuentran las imágenes y los sonidos  

Public ruta_temporal As String = "/tmp"
Public ruta_principal As String = User.Home &/ "." & Application.Name
Public ruta_imagenes As String = ruta_principal &/ "Imagenes/"
Public ruta_sonidos As String = ruta_principal &/ "Sonidos/"

Public Sub Inicializar_variables()
  
  'Si no existe el directorio, creamos el directorio en la home del usuario
  If Not Exist(ruta_principal) Then 
    Try Mkdir ruta_principal
    'Extraemos los archivos con sus directorios en la ruta principal
    Try Shell "cd " & ruta_temporal & " && tar -C " & ruta_principal & " -xvf ImagenesYSonidos.tar.gz"
    
  Endif
  
Catch
  Message.Error("Se ha producido un error " & Error.Text)
  
End
[/code]

Con eso, ya había logrado descomprimir el archivo en el lugar adecuado.

Ahora me surgió otro problema, las imágenes se mostraban en los botones, pero no reproducía sonido.
Decir que el paquete se creaba sin problemas aparentes.

Yo estaba usando el viejo componente de audio de Gambas, ya obsoleto. Y pensé, pues puede ser ese el problema.
Lo gracioso era que la fuente original, funcionaba, pero el paquete de instalación no hacia lo mismo.

Cambie de componente de sonido al gb.sdl2.audio, apliqué la forma de cargar un sonido, reproducirlo y funcionó
a la primera los sonidos de los animales.

[code linenumbers=false syntax=gambas]
...
sonido = Sound.Load(animal.sonido)
sonido.Play()
...
[/code]

Se que el código que hice está verde y es simple, pero para ser la primera vez me ha costado un poco el tema de ubicar los archivos,
el uso del descompresor que no comprendía como descomprimir de un directorio a otro.

¿ Suele dar problema el crear paquetes de instalación con componentes obsoletos ?.

¿ Consejos ?.  :roll: 

El código era de Julio del 2014, ya no me acordaba ni como iba. Naturalmente desde aquella fecha, se puede mejorar cosas.

Saludos


-----------------------------------
Shell
Friday, 08 July 2016, 20:50

Re: Creando Un Paquete De Instalación
-----------------------------------
Debió ser una pregunta muy repetida.  :roll:

De todas maneras, debería hacer hincapié en esta pregunta.

[quote]
¿ Suele dar problema el crear paquetes de instalación con componentes obsoletos ?.
[/quote]

Saludos


