PDA

Ver la Versión Completa : cargar archivo este si


gulder
26-04-2005, 14:24:50
Lo que pasa fue que yo cree un reproductor de audio y cree una clave en el registro de Windows para que a todos los archivos de audio se les cargara el icono de mi reproductor, es lo mismo que hace el winamp que les carga a todos los archivos de audio un icono que es como un rayo.

El problema que yo tengo radica en que la parte de cargar el icono funciona pero cuando intento ejecutar algún archivo de audio solo abre el ejecutable de mi reproductor pero no reproduce el archivo de audio como hago para cuando yo ejecute un archivo lo cargue en el reproductor y lo reproduzca.

saludos gulder :)

delphi.com.ar
26-04-2005, 14:50:17
El problema que yo tengo radica en que la parte de cargar el icono funciona pero cuando intento ejecutar algún archivo de audio solo abre el ejecutable de mi reproductor pero no reproduce el archivo de audio como hago para cuando yo ejecute un archivo lo cargue en el reproductor y lo reproduzca.

Te reitero las preguntas: ¿Tu aplicación recibe un parámetro con el archivo seleccionado? ¿Has escrito algo de código para hacer algo con este parámetro?

No se que tanto has avanzado... ¿Qué has echo en tu aplicación para "abrir" este archivo?

gulder
26-04-2005, 15:01:57
Te reitero las preguntas: ¿Tu aplicación recibe un parámetro con el archivo seleccionado? ¿Has escrito algo de código para hacer algo con este parámetro?

No se que tanto has avanzado... ¿Qué has echo en tu aplicación para "abrir" este archivo?
disculpame por la ignorancia pero no entiendo lo del parametro esplicame,

delphi.com.ar
26-04-2005, 15:45:15
Cuando haces doble clik sobre el ícono del archivo que has registrado, este disparará tu programa, seguido de un parámetro que suele ser la ruta y nombre de este archivo (Si es que lo has registrado correctamente). Con esta pequeña comunicación tu aplicación puede saber que archivo es que tienes que cargar, pero tienes que encargarte de hacer las acciones que necesites!

Por ejemplo: http://www.clubdelphi.com/foros/showpost.php?p=47490&postcount=5

gulder
26-04-2005, 16:01:25
Código Delphi:
if ParamCount >= 1 and fileExists(paramstr(1)) Then AbrirDocumento(paramstr(1));

lo que no entiendo que hace el 1 y si este pedaso de codigo lo colo adonde

delphi.com.ar
26-04-2005, 16:16:42
Probalo..... supuestamente en ese parámetro vas a tener la ruta del archivo...
¿Qué hacer?... vos sabrás, es tu proyecto

gulder
27-04-2005, 21:08:52
Probalo..... supuestamente en ese parámetro vas a tener la ruta del archivo...

¿Qué hacer?... vos sabrás, es tu proyecto
bueno boy a probar es codigo para ver que resulta de todos modos grasias por el tiempo prestado despues veremos

Elfoscuro
28-04-2005, 16:04:35
Yo lo pondría en el onshow del form.

Imagino que tendrás un botón o una opción del menú que se encargue de abrir los ficheros de audio. El código será algo así como:

if opendialog1.execute then
{Aquí pondrás el código necesario para reproducir el fichero que te da
opendialog1.filename}

Pues en el onshow, yo haría

if ParamCount >= 1 and fileExists(paramstr(1)) Then
{Aquí el mismo código de roproducir}

Sólo que ahora ya no tendrás que usar como nombre de fichero opendialog1.filename, sino paramstr(1)

Y en cuanto al significado del 1, los parámetros que acepta un programa vienen desde 0 hasta el último. El 0 es el nombre de la aplicación, y en este caso no lo usaremos, mientras que el 1 es el primer parámetro. Es decir, si en una ventana de DOS escribimos reproductor.exe ficherodemusica.mp3, paramstr(1) devolverá "ficherodemusica.mp3", mientras que paramstr(0) devolverá "{RUTA}reproductor.exe", donde {RUTA} será donde tengas el ejecutable, por ejemplo "C:\".

Un saludo

Lepe
28-04-2005, 16:35:50
Solamente añadir a la estupenda explicación de Elfoscuro que se tenga cuidado con los nombres largos de archivo, ya que si el nombre tiene un espacio en blanco, el programa creería que ya viene el paramstr(2), cuando en realidad es la continuación del mismo.

es decir, el programa puede recibir en linea de comando:

"programareproductor.exe"<Aqui un espacio en
blanco>"c:\Mi Música\01 Cancion Instrumental del hombre que
tiene el record de hablar sin respirar.mp3"

Y en este caso
- paramstr[0] = programareproductor.exe
- paramstr[1] = c:\Mi Música\01 Cancion Instrumental del hombre que
tiene el record de hablar sin respirar.mp3

Al estar entre comillas dobles, eliminamos de un plumazo el problema de los espacios.

Un saludo

delphi.com.ar
28-04-2005, 16:56:52
Si seguimos aclarando, vale aclarar que las comillas dobles las tienes que poner al registrar el tipo de archivo, por ejemplo:
"C:\Archivos de programa\MiProyecto\MiPrograma.ex" "%1"
Donde %1 será reemplazado por la ruta archivo asociado con que has llamado a tu aplicación.

Saludos!

Elfoscuro
28-04-2005, 21:11:13
Puntillosos :D :D :D :D

Lepe
29-04-2005, 09:10:33
Puntillosos :D :D :D :D
:D :D :D

Un saludo

gulder
04-05-2005, 06:26:21
Grasias A Todos Los Que Me Colaboraron Y Por Lo De Las Preguntas Tontas Del A Ese Sepen Que Apenas Doy Mis Primeros Pasos En Delphi:d :d :d :d


Saludos Gulder :)