Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   Problema con shellexecute (https://www.clubdelphi.com/foros/showthread.php?t=36703)

ebeltete 20-10-2006 19:18:35

Problema con shellexecute
 
Hola amigos tengo un problema con shellexecute, y es el siguiente:
cuando quiero abrir un archiuvo con determinada aplicacion me funciona solo si el nombre del archivo no tiene espacios en el nombre, ej.:

este funciona:
ShellExecute(form1.handle,nil,pchar('C:\windows\aplicacion.EXE'),pChar('o:\carpeta\archivo1.doc'),'' ,1);

este NO funciona:
ShellExecute(form1.handle,nil,pchar('C:\windows\aplicacion.EXE'),pChar('o:\carpeta\archivo 1.doc'),'',1);

Gracias.

seoane 20-10-2006 19:21:05

Prueba de esta manera:
Código:

ShellExecute(form1.handle,nil,pchar('C:\windows\aplicacion.EXE'),pChar('"o:\carpeta\archivo 1.doc"'),'',1);

ebeltete 20-10-2006 23:35:50

Gracias seoane, de esa manera funciona perfectamente, sabes a que se debe?
Saludos

seoane 20-10-2006 23:45:39

Cita:

Empezado por ebeltete
sabes a que se debe?

Claro, recuerda que los parámetros en la linea de comandos se separan por un espacio, si el nombre del archivo contiene un espacio la aplicación recibirá dos parámetros separados en vez de uno. Con las dobles comillas le estamos indicando que debe tomar todo como un solo parámetro y no como dos.

ebeltete 21-10-2006 00:23:12

Correcto, gracias.


La franja horaria es GMT +2. Ahora son las 20:56:11.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi