PDA

Ver la Versión Completa : problema con EnumWindows


Jan_polero
28-02-2005, 12:18:15
Hola a todos. Estoy utilizando uno de los trucos de Trucomanía para obtener una lista de los programas en ejecución(el truco [287]).He visto ya muchos hilos que lo citan así que no creo que sea necesario ponerlo entero. Al intentar compilar me da un error con el mensaje 'Variable required' en la línea que llama a la función EnumWindows:


function TFImportar.EstaEjecutandose(EXE:String):Boolean;
var
i: Integer;
begin
i:=0;
ListaExes := TStringList.Create;
//me situa el cursor en el 0
EnumWindows(@ObtieneVentanas,0);
....

He probado todo tipo de conversiones de enteros, ya que ese parametro es un entero.Extraído de la ayuda(Specifies a 32-bit, application-defined value to be passed to the callback function). También probe a pasarle otros valores distintos de 0 como:

EnumWindows(@ObtieneVentanas,Int(@EXE));
EnumWindows(@ObtieneVentanas,LongInt(@EXE));


Pero siempre da el mismo error. También tengo añadida en las uses la TLHelp32. Uso delphi 5 bajo windows 2000. Espero me ayudeis es urgente. Gracias por adelantado.

argami
01-03-2005, 14:42:03
has probado pasarle una variable en vez de una constante es decir


var Prog :Integer;
begin
Prog := 0;
EnumWindows(@ObtieneVentanas,Prog);
end;

spider_Ramon
03-03-2005, 16:55:54
yo lo copie de trucomania y tal y como lo p[use quedo pon todo tu codigo quizas desde unit.... hasta el final