Antes de nada, esto:
Código Delphi
[-]
if Assigned(WakeUp1) then begin
WakeUp1.Free;
WakeUp1 := nil;
end;
Yo lo haría así (si lo se, soy un quisquilloso
):
Con respecto a tu problema, dices que FindWindow te devuelve un handle, pero ¿estas seguro que es el correcto?. Puede haber mas de una ventana con ese titulo, puede que la ventana con ese titulo no sea TWakeUp. Hay veces que la cosa es tan tonta como que tienes una carpeta con ese mismo nombre y la tienes abierta ¿No tendrás una carpeta llamada "Wake-up"?