FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Obtener archivos que llaman a mi aplicacion
Esto lo necesito para una aplicacion que estoy haciendo.. Pondré un ejemplo:
Si seleccionamos varias canciones y le damos a boton derecho>abrir, nos saldrá el reproductor predeterminado que tengamos y nos cargará todas las canciones seleccionadas que tengamos.. yo necesito conseguir la ruta de todos los archivos que llamaron a mi aplicacion.. Con paramstr(1) consigo la direccion de la primera, pero paramstr(2) y los parametros consecutivos me vienen vacios.. mi aplicacion se abre tantas veces como archivos haya seleccionado, esto lo sulocione y consegui que mi aplicacion se abriera solo una vez mediante un mutex.. pero no se como conseguir la ruta de los archivos que llaman a mi aplicacion Salu2 y gracias. |
#2
|
|||
|
|||
Estuve pensando en como solucionar esto y se me ocurrio una cosa pero no se si se puede hacer. ¿Se podrían obtener los archivos seleccionados en el explorador de windows?
Con el método shellexecute se pueden seleccionar archivos. Salu2 |
#3
|
||||
|
||||
Hola,
Acabo de hacer la prueba con una aplicación Delphi "vacía", y, si "arrastro" a su ejecutable varios archivos, puedo obtener las rutas de estos mediante "ParamStr()", concretamente, se cuenta con tantos parámetros como archivos se han "arrastrado" al ejecutable, podrías verlo así:
Ahora bien, yo supongo que esto tiene que ser también así en caso de que sea Windows quien llame a tu programa luego de que el usuario eligiera el comando "Abrir con tu programa" del menú contextual del explorador de archivos. ¿Lo has comprobado? ¿Has recorrido todos los parámetros disponibles y estos no contienen la ruta de todos los archivos "seleccionados"? |
#4
|
||||
|
||||
Cita:
Pienso que una posible forma de hacer esto último es creando un MemoryMapped File o bien con el mensaje WM_COPYDATA. // Saludos |
#5
|
|||
|
|||
Gracias por responder, voy a probar lo que dices dec.
Lo de un memorymappedfile ya lo probé y no me salió del todo bien pero con más tiempo puede ser la solución. Voy a probar el metodo de dec y os cuento. Salu2 |
#6
|
||||
|
||||
Pero, ¿cuál es el método de dec? Al arrastrar los archivos como él dice, ciertamente se generan muchos parámetros para una sóla instancia de la aplicación. Pero si el usuario hace lo que describiste al principio entonces seguirá pasando lo que describiste al principio
// Saludos |
#7
|
|||
|
|||
Tienes razón roman el método de dec sigue dando el mismo problema, hace algún tiempo hice dos aplicaciones que se enviaban mensajes entre ellas con un filemapping, la acabo de encontrar
Cuando termine el código lo subiré aqui o en la sección de trucos. Salu2 |
#8
|
|||
|
|||
Bueno, ya tengo un poco planteado el algoritmo..
Con PostMessage(Mensaje.^DestHandle, WM_TRANSFER, 0, 0) ya conseguí enviar un mensaje... Salu2 |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
obtener el nombre de varios archivos | rzf1983 | Varios | 4 | 24-10-2007 18:18:29 |
problema con formularios que se llaman mutuamente | Patricio | Varios | 9 | 12-12-2006 19:38:52 |
Obtener duración de archivos de video | unasdudas | Varios | 2 | 19-12-2005 04:56:51 |
Obtener los archivos de un directorio | MRSAM | Varios | 16 | 03-08-2005 21:37:12 |
obtener un listado de archivos | JorgeBec | Varios | 6 | 24-12-2004 14:58:00 |
|