Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 12-01-2005
jmbarrio jmbarrio is offline
Miembro
 
Registrado: may 2003
Posts: 65
Poder: 21
jmbarrio Va por buen camino
esta ejecutandose una aplicacion en NT?

Hola a tod@s, estoy intentando hacer una aplicacion que este escaneando cada cierto tiempo si esta ejecutandose otra aplicacion distinta en mi PC, y en caso de que no lo este la llame.
He empleado el truco de detectar todas las aplicaciones que se estan ejecutando en windos pero en mi caso no me sirve ya que estoy empleando
windows NT y en este caso el truco no sirve.

Alguien podría echarme una mano, muchas gracias por las molestias.

Un saludo.
Responder Con Cita
  #2  
Antiguo 12-01-2005
Coco Coco is offline
Miembro
 
Registrado: jul 2004
Ubicación: Argentina
Posts: 83
Poder: 20
Coco Va por buen camino
prueba con esto, yo lo utilice en NT, 2000, 9x sin problemas.

//Busco si hay una aplicacion
HandleApp := FindWindow('TForm1',nil);
//el nil es por el titulo de la ventana por si quieres
//identificar mas aun la aplicacion
Application.Initialize;
if (HandleApp=0)
then
//no hay una instancia ejecutando
else
//Esta ejecutandose una instancia


Saludos
Responder Con Cita
  #3  
Antiguo 12-01-2005
jmbarrio jmbarrio is offline
Miembro
 
Registrado: may 2003
Posts: 65
Poder: 21
jmbarrio Va por buen camino
RE: Coco

Yo quiero saber si se me esta ejecutando un programa llamado chat.exe

a que equivale el TForm1 en la solucion que me has dado?
Responder Con Cita
  #4  
Antiguo 12-01-2005
Coco Coco is offline
Miembro
 
Registrado: jul 2004
Ubicación: Argentina
Posts: 83
Poder: 20
Coco Va por buen camino
perdon, entendi que querias saber si tu aplicacion estaba ejecutandose.

Aqui va otro ej, sacado de Trucomania, donde puedes saber si un exe esta ejecutandose pero necesitas saber el path donde se encuentra el mismo.

procedure TForm1.Button1Click(Sender: TObject);

function EstaEjecutandose (ExeFile:string): boolean;
var H:word;
begin
H:=CreateFile(PChar(ExeFile), GENERIC_READ, 0, nil, OPEN_EXISTING, 0, 0);
Result := (H >= 65535);
CloseHandle(H);
end;
begin
if EstaEjecutandose ('c:\windows\notepad.exe')
then Label1.Caption:='SI/YES'
else Label1.Caption:='NO';
end;

Espero que te sirva. Saludos
Responder Con Cita
  #5  
Antiguo 13-01-2005
jmbarrio jmbarrio is offline
Miembro
 
Registrado: may 2003
Posts: 65
Poder: 21
jmbarrio Va por buen camino
Re:coco

Muchas gracias por las molestias , ahora voy a probar si me funciona.

Un saludo.
Responder Con Cita
  #6  
Antiguo 13-01-2005
jmbarrio jmbarrio is offline
Miembro
 
Registrado: may 2003
Posts: 65
Poder: 21
jmbarrio Va por buen camino
Re:coco

Lo he probado y no me ha funcionado el valor que me devuelve H es el mismo
si tengo el .exe ejecutandose o no.

Un saludo.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 19:07:22.


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
Copyright 1996-2007 Club Delphi