Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   C++ Builder (https://www.clubdelphi.com/foros/forumdisplay.php?f=13)
-   -   Controlar instalaciones (https://www.clubdelphi.com/foros/showthread.php?t=59621)

Negriz 02-09-2008 21:18:36

Controlar instalaciones
 
Hola como estan.
Alguin sabe como hacer para llamar un proceso de instalacion y saber si este terminó correctamente, es decir si el programa se instalo o el proceso fue cancelado.

se usa ShellExecute?

Graicas.

felipe88 02-09-2008 23:27:21

Bien podrias ver si el proceso esta corriendo o si existe el directorio que debia ser creado, es una idea.

Negriz 05-09-2008 03:17:07

Cita:

Empezado por felipe88 (Mensaje 311260)
Bien podrias ver si el proceso esta corriendo o si existe el directorio que debia ser creado, es una idea.

mmmm, ya habia pensado en lo de la carpeta de instalcion... pero depronto sucede que el programa es instalado en otra carpeta diferente a la estandart y hasta ahi llego esa idea.

un detalle mas: la idea es hacer varias instlaciones una detras de la otra.

La verdad no se como hacer para saber si un proceso corre o no... y no habia pensado en eso.

Voy a buscar y despues de te aviso como me fue Ok..... Gracias por la sugerencia.

si se te ocurre algo mas, por favor no dudes en postearlo.

Saludos.

felipe88 05-09-2008 16:14:54

Cita:

Empezado por Negriz (Mensaje 311943)
La verdad no se como hacer para saber si un proceso corre o no... y no habia pensado en eso.

Tal vez pueda servirte esto:
Código Delphi [-]
//Añadir al uses TLHelp32

function TForm1.procrunning: Boolean;
var
  Proceso : TProcessEntry32;
  ProcessHandle : THandle;
  Sproceso   : Boolean;
  Nproceso : String;
begin
  Result := False;
  Proceso.dwSize := SizeOf(TProcessEntry32);
  ProcessHandle := CreateToolHelp32Snapshot(TH32CS_SNAPPROCESS, 0);
  if Process32First(ProcessHandle, Proceso) then
  begin
    Nproceso:= String(Proceso.szExeFile);
    repeat Sproceso := Process32Next(ProcessHandle, Proceso);
      Nproceso:= String(Proceso.szExeFile);
      if Nproceso = 'elproceso.exe' then
        Result := True;
    until not Sproceso;
  end;
  CloseHandle(ProcessHandle);
end;
Solo cambia 'elproceso.exe' por el nombre de tu proceso.

Negriz 03-10-2008 21:39:15

Gracias, voy a probar en builder


La franja horaria es GMT +2. Ahora son las 07:54:23.

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