Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Saber cuando un programa externo genera un .ini (https://www.clubdelphi.com/foros/showthread.php?t=65084)

ManuelPerez 18-11-2009 23:47:36

Saber cuando un programa externo genera un .ini
 
Hola uso Delphi 7 y necesito saber como puedo hacer los siguiente: con mi programa genero un archivo ini y ejecuto un programa externo que lo lee y genera un proceso, al terminar el proceso de dicho programa me genera un archivo ini (respuesta)en el cual yo lo tengo que leer para hacer x cosa. El tema es que no se cuando como saber que dicho programa me genero el archivo ini, es decir, generar yo el archivo ini y llamar al programa externo, esto ya esta echo, tambien se como leerlo. Pero lo que no se es como saber cuando me genera el archivo el programa externo.

Dicho archivo(respuesta) me lo genera en la misma carpeta que mi ejecutable, lo que me gustaria hacer es borrar siempre ese archivo de respuesta y ejecutar el programa externo y preguntar si ya se genero ese archivo de respuesta. Pero no se como hacerlo, espero que haya sido claro.

Ayuda:confused:

Gracias

rretamar 19-11-2009 00:28:02

Hola.
Hay mejores formas de comunicar dos aplicaciones entre sí. Hay funciones de la API justamente para eso y sin tantas complicaciones. También hay componentes para DDE en la misma paleta de Delphi.

Aquí hay un ejemplo de uno de estos métodos:
http://delphiallimite.blogspot.com/2...iones-sin.html

Si aún así querés hacerlo mediante archivos, podés usar componentes como el Filemonitor de las Jedi, que puede detectar cambios en directorios (por ejemplo la creación de un archivo).

Saludos !

ElKurgan 19-11-2009 07:45:34

Cita:

Empezado por rretamar (Mensaje 346973)
Hola.
Hay mejores formas de comunicar dos aplicaciones entre sí...

Claro, siempre que las dos aplicaciones las controles tu... Pero por si alguna es de otro desarrollador y no tienes fuentes, este truco de la amada y nunca bien ponderada "Trucomania" te puede servir

Saludos

ManuelPerez 19-11-2009 11:49:05

muy bueno
 
Gracias ElKurgan muy buen truco... la otra aplicación es de otro desarrollador que usa otro lenguaje.

Saludos

rgstuamigo 19-11-2009 14:06:56

Bueno tambien podrias comprobar la existencia del archivo haciendo esto:
Código Delphi [-]
if FileExists('C:\MyArchivo.ini') then
 begin
   ShowMessage('El archivo ya existe');
 end
Eso lo podrias poner en el evento OnTimer de un TTimer mas o menos asi:
Código Delphi [-]
procedure TForm1.Timer1Timer(Sender: TObject);
begin
 if FileExists('C:\MyArchivo.ini') then
  begin
   ShowMessage('El archivo ya existe');
   //hago lo que tengo que hacer con el archivo
    ...
    ...
    DeleteFile('C:\MyArchivo.ini');//borro el archivo
    Timer1.Enabled:=False;//deshabilito el timer para que ya no siga ejecutandose
  end
end;
Saludos...:)


La franja horaria es GMT +2. Ahora son las 03:01:47.

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