Ver Mensaje Individual
  #10  
Antiguo 29-12-2009
Avatar de rgstuamigo
rgstuamigo rgstuamigo is offline
Miembro
 
Registrado: jul 2008
Ubicación: Santa Cruz de la Sierra-Bolivia
Posts: 1.646
Reputación: 17
rgstuamigo Va por buen camino
Arrow Ahora si.....

Creo que por fin te hiciste entender...(aunque me queda ciertas dudas)..pero
Veamos....
Segun lo que te entiendo.. tendrias que hacerte un procedure o function que haga el FindWindow mas o menos asi:
Código Delphi [-]
function Detectar_Programa(const Nombre: String): Boolean;
begin
 Result:=FindWindow(nil,PChar(Nombre))<>0;
end;
Esa Funcion te verifica si un programa esta en ejecusion.
ahora para saber todos los programas que estan corriendo y que tengo registrado en mi base de dato, pues no me queda mas que comparar uno a uno, pero usando la anterior Funcion, mas o menos asi:
(En el evento OnClick de un Boton)
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var aux:String;
begin
 Memo1.Lines.Clear;//voy a usar un memo para mostrar los programas que estan ejecutandose
 MyQuery.SQL.Text:='select nombreprograma from programas;'//mi Consulta SQL
 MyQuery.Open;//ejecuto la consulta
   while not MyQuery.Eof  do // recorro el dataset para ir comprobando uno a uno los nombres
   begin
      aux:=MyQuery.Fields[0].AsString;//obtengo el nombre del programa que esta en el registro actual
        if Detectar_Programa(aux) then //verifico si dicho programa esta corriendo
           Memo1.Lines.Add(aux);//lo adiciono aun memo para mirarlo
      MyQuery.Next;//continuo con el proximo
   end;
end;
Espero te haya sido de utilidad.
__________________
"Pedid, y se os dará; buscad, y hallaréis; llamad, y se os abrirá." Mt.7:7
Responder Con Cita