Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Error cuando llamo a un programa esxterno desde mi aplicacion (https://www.clubdelphi.com/foros/showthread.php?t=24233)

quake2420 12-08-2005 11:17:33

Error cuando llamo a un programa esxterno desde mi aplicacion
 
Hola amigos, tengo la siguiente duda:
Estoy realizando una aplicacion que en uno de los procedimientos de la misma ejecuta la siguiente instrucion
Código:


 Process := ExecuteProcess('C:\Documents and Settings\usuario\Escritorio\winhipe_entrega\winhipe\WinHIPE32\source2.0\winhipe.exe');
 if Process <> 0 then
 begin
                                        WaitForSingleObject(Process, INFINITE);
 end;

Lo que hace es llamar a una aplicacion para que se ejecute dicha aplicacion.
El error se produce cuando es abierta la aplicacion a ejecutar ya que me dice que no encuentra la siguiente ruta: \icons\portada.bmp
Me he metido en el codigo del programa que esta hecho en delphi y el error me da en la siguiente linea:
Código:

PATH_ICONOS = 'iconos\';
PORTADA_INICIO = PATH_ICONOS + 'portada.bmp';
begin
 formPortada := TFormPortada.Create(self);
  try
        formPortada.portada.Picture.LoadFromFile(PORTADA_INICIO);
  except
        on EFOpenError do MsgError(MSG_ERROR_ABRIR + ': ' + PORTADA_INICIO);
  end;

yo creo que esto ocurre por que como estoy intentando ejecutar dicha aplicacion desde otro programa,y que al intentar buscar la ruta \iconos\portada.bmp no lo encuentra por que la ruta actual es de donde se esta ejecutando la primera aplicacion.
¿Teneis alguna idea de como solucionar el error?
Gracias y un saludo

dec 12-08-2005 11:21:55

Hola,

Prueba con la función "SetCurrentDir" y establece como directorio actual (con la ayuda de la función mencionada) el directorio en el que se encuentre la aplicación a la que llamas, a ver qué tal. Echa un vistazo a la ayuda de "SetCurrentDir" para más información *

* O la función "SetCurrentDirectory", que al cabo es la que acaba utilizando "SetCurrentDir".

quake2420 12-08-2005 19:30:44

Funciona como tu dices
 
Muchas gracias DEc, lo que ma has dicho funciona.
Cuando me saque el proyecto de fin de carrera, os voy a tener que hacer un monumento a todos los del foro por lo que me estais ayudando.
Gracias y un saludo
Pasar buen puente ya ser malos
Nos vemos en los bares.


La franja horaria es GMT +2. Ahora son las 13:00:31.

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