Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 2
Ir a la página 1, 2  Siguiente
 
Asociando Nuestro Proyecto De Gambas Con Un Tipo De Archivos
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Asociando Nuestro Proyecto De Gambas Con Un Tipo De Archivos 
 
Abundan por el foro proyectos que van necesariamente asociados a algún tipo de archivo, reproductores de música, editores de texto, visores de vídeo, de html etc.
Lo que nunca nadie se ha planteado. Hasta ahora (https://foro.gambas-es.org/viewtopic.php?f=4&t=6365) es cómo asociar nuestro programa a ese tipo de archivos.
Vamos a ver el tema:

Lo primero es conseguir que nuestro programa admita el archivo que se va a tratar "desde el inicio". Dicho con otras palabras, que el escritorio le pase el archivo que queremos tratar y que nuestro programa se abra y lo trate.
Eso lo conseguimos con el array Args[] que contiene un string por cada parámetro que le pasemos al programa (el elemento 0 hace referencia al runtime de gambas -gbr o gbx- y de el 1 en adelante los archivos que queramos abrir.

Os adjunto un proyecto muy simple que visualiza archivos de texto. Lo he llamado "miproyecto"

Sólo tiene una línea de código en el evento open del formulario principal:
Public Sub Form_Open()

  If Exist(Args[1]) Then TextArea1.text = File.load(Args[1])

End


Traducido al cristiano dice: "Si existe el fichero que me han pasado como argumento, lo cargo y lo enseño en el textArea"

Como lo que buscamos es que sea el escritorio quien le diga lo que queremos ver, necesitamos instalar nuestro programa en el ordenador. Para ello creamos el paquete de instalación. Pasamos a través de las pantallas del wizard que crea el paquete y cuando llegamos al paso número 6,  pantalla que se nos pide "Archivos de configuración de Escritorio". Le ponemos los tipos mime con los que queremos asociar nuestro programa. En éste caso texto plano.

 captura_de_pantalla_de_2017_05_14_12_00_35

Terminamos de crear nuestro paquete de instalación y después lo instalamos en nuestra máquina.

A partir de ahí, ya está todo hecho. Al pulsar botón derecho "Abrir con" en cualquier archivo de texto plano (.text, .txt, etc.) nuestro programa aparecerá entre la lista de programas capaces de lidiar con ese tipo de archivos. Así:
 captura_de_pantalla_de_2017_05_14_12_04_46

Creo que esto no había surgido antes en el foro porque la mayoría de nosotros trabaja siempre sobre el IDE, versión de desarrollo, vamos. La instalación, como véis nos da acceso a más posibilidades.

Saludos.

miproyecto-0.0.3.tar.gz
Descripción:  
Descargar
Nombre del archivo: miproyecto-0.0.3.tar.gz
Tamaño: 11.33 KB
Descargado: 63 veces
miproyecto-0.0.3.tar.gz
Descripción:  
Descargar
Nombre del archivo: miproyecto-0.0.3.tar.gz
Tamaño: 11.33 KB
Descargado: 63 veces
miproyecto-0.0.3.tar.gz
Descripción:  
Descargar
Nombre del archivo: miproyecto-0.0.3.tar.gz
Tamaño: 11.33 KB
Descargado: 63 veces

 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Asociando Nuestro Proyecto De Gambas Con Un Tipo De Archivos 
 
Shordi:

Pregunta:
Imagina que nuestro archivo de datos tiene la extensión ".orlas", ¿como se dice eso en el formulario "Archivos de configuración de Escritorio"?

Nota:
El archivo de extension .orlas, realmente es un "tar.gz"
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Asociando Nuestro Proyecto De Gambas Con Un Tipo De Archivos 
 
muy buen aporte!
 



 
tercoIDE - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Asociando Nuestro Proyecto De Gambas Con Un Tipo De Archivos 
 
Ahora imaginar esta situación.

Tengo una serie de imágenes. Pero esta vez soy un maniático recalcitrante (solo esta vez).  
Y quiero que "ciertos" tipos de imágenes me los abra con una aplicación concreta.
No me refiero a extensión. Me refiero a que si tengo fotos de modelos calentorras,
que me las abra con mi aplicación de foto preferida y mientras para otras imágenes
me use otro.

Cuando abrimos un tipo de archivo tenemos la opción de abrirlo desde el menú contextual
con distintas aplicaciones aunque estas hagan lo mismo. ¿ Y si de alguna forma esas
imágenes se pudiesen "etiquetar" y hacerle entender al sistema operativo que quiero
que se abran con una aplicación concreta de imágenes ?.

¿ Otro archivo más ?.
¿ Se vuelve loco el sistema ?.
O peor....este me encripta las imágenes y me pide un rescate de 300$ si quiero seguir viendo las imágenes de mis modelos preferidas!!.  

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Asociando Nuestro Proyecto De Gambas Con Un Tipo De Archivos 
 
jsbsan escribió: [Ver mensaje]
Shordi:

Pregunta:
Imagina que nuestro archivo de datos tiene la extensión ".orlas", ¿como se dice eso en el formulario "Archivos de configuración de Escritorio"?

Nota:
El archivo de extension .orlas, realmente es un "tar.gz"


Para eso necesitas registrar un mimetipe nuevo. ¿Cómo? Bien, suponiendo que tu programa se llame "orlador" y esté configurado con el args, etc,

1.- Creas un fichero llamado orlador.xml en la carpeta .hidden del proyecto con éste contenido:

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
  <mime-type type="application/orla">
    <comment>Ficheros de Orla</comment>
    <glob pattern="*.ORLA"/>
    <glob pattern="*.orla"/>
  </mime-type>
</mime-info>

(Fíjate que le pongo la extensión .orla con mayúsculas y minúsculas)

2.- Creas el fichero de instalación .deb y en el paso Nº 8  del wizard, pantalla de "Archivos Extra" rellenas así:
 captura_de_pantalla_de_2017_05_14_18_06_23

Es decir le dices que lo copie en usr/share/mime/packages. En el momento de la instalación el ficherito xml será copiado a dicha carpeta.

Con eso debería ser suficiente para que al pulsar con el botón derecho en un archivo extensión orla.

También puedes crear un icono bonito para identificar las orlas y asociarlo a la extensión, de manera que el escritorio te lo reconozca y demás... pero eso también es otra historia...
     
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Asociando Nuestro Proyecto De Gambas Con Un Tipo De Archivos 
 
Shell escribió: [Ver mensaje]

Tengo una serie de imágenes. Pero esta vez soy un maniático recalcitrante (solo esta vez).  
Y quiero que "ciertos" tipos de imágenes me los abra con una aplicación concreta.
No me refiero a extensión. Me refiero a que si tengo fotos de modelos calentorras,
que me las abra con mi aplicación de foto preferida y mientras para otras imágenes
me use otro.


1.- Creas un fichero llamado teteador.xml en la carpeta .hidden del proyecto con éste contenido:

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns='http://www.gorrinonas.com'>
<mime-type type="application/onanica">
<comment>Pelada de salchicha</comment>
<glob pattern="*.TETAS"/>
<glob pattern="*.tetas"/>
</mime-type>
</mime-info>

y sigues los pasos que le he dicho a julio.
Sólo tienes que cambiar el arg[1] por args[2], que siempre vienen en número par...
           
 




===================
No podemos regresar
 
última edición por shordi el Domingo, 14 May 2017, 17:19; editado 1 vez 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Asociando Nuestro Proyecto De Gambas Con Un Tipo De Archivos 
 
Shordi:

Creo que la pregunta de Shell es más complicada (y a la vez calenturienta   )... las imágenes tendrían la misma extensión (.jpg, .png), lo que pide es que el sistema sea capaz de diferenciar la imagen que contenga "tetas" y las que no... el dice de usar una etiqueta... pero no se si se puede indicar etiquetas "extras" en los ficheros de imagen...

Shell:
Ya te dije que eso de tener 100 GB de imagenes "calientes" te iba a dar más de un dolor de cabeza...       
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Asociando Nuestro Proyecto De Gambas Con Un Tipo De Archivos 
 
Citar:
el dice de usar una etiqueta..

Si hay que pegar etiquetas en las tetas, por favor que suba el tutorial. Conozco a miles de adolescentes que pagarían su alma por ese método...

Eso sí, que ellas se dejen, claro...      
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Asociando Nuestro Proyecto De Gambas Con Un Tipo De Archivos 
 
Pero hombres, que no es descabellado lo que pide Shell

Han visto que en Facebook este agrega información a la imagen (en lenguaje humano) de que va la foto u imagen que muestra.
Con el botón derecho sobre una foto van a la opción "Ver información de la imagen" y en la pestaña "Medios" tienen la información... (está opción está en Firefox, asumo que Chrome también...)

Por ejemplo hoy un contacto de mis conocidos muestra la foto de su almuerzo y esto dice Facebook:


info_fb_img

Me di cuenta en una ocasión en que tardaban de cargar la imagenes en que Facebook ponía una descripción de que era la imagen.  Pensé que era parte de la propiedad "title" del tag html 'img'... pero finalmente lo encontré allí donde lo cuento más arriba.

- - - -
Igual creo que Shell podría hacer un programa que "lea" la imagen quizá como si le diera un efecto blur a la imagen (efecto gaussiano en otros lados) luego tomar algunos píxeles en una cierta área y determinar si corresponde a un color "piel"  (de un amplio catálogo) y allí direccionar.

O una especie de conversión de imagen al estilo "Colored ASCII Art" (que entiendo que también lo hace facebook pero no recuerdo donde lo leí). Es como la librería libcaca del plugin de VLC que hace eso.

Saludos...
 



 
vicr - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Asociando Nuestro Proyecto De Gambas Con Un Tipo De Archivos 
 
¡Calla insensato! Shell ya está bastante cerca del infierno por sus pecaminosos 10 teras de porno... Como para animarlo a explorar tonos de piel y otras cosas que no quiero ni mentar...

Shell tú ni caso. Rézate tres padrenuestros y dos duchas frías.
 




===================
No podemos regresar
 
última edición por shordi el Domingo, 14 May 2017, 21:05; editado 2 veces 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Documentación Estructura Archivos De Proy... fabianfv General 2 Jueves, 02 Febrero 2012, 23:36 Ver último mensaje
fabianfv
No hay nuevos mensajes Poner Nuestro Icono De Gambas3 Y La Entrad... Shell General 4 Miercoles, 26 Diciembre 2012, 03:22 Ver último mensaje
jousseph
No hay nuevos mensajes Como Añadir Controles A Nuestro Proyecto ... shordi General 9 Sabado, 22 Octobre 2016, 22:38 Ver último mensaje
shordi
No hay nuevos mensajes ImageMagick: Nuestro Maestro Jedi-Gambas S... vuott Aplicaciones/Fragmentos de Código 7 Jueves, 08 Junio 2017, 16:26 Ver último mensaje
vuott
 

Publicar nuevo tema  Responder al tema  Página 1 de 2
Ir a la página 1, 2  Siguiente

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
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



  

 

cron