Cita:
Empezado por Fita
Hola a todos.
Mi aplicacion utiliza esta funcion para saber si una ventana esta activa o no y abrirla sólo una vez:
Código Delphi [-]function Formexiste(form: TForm): boolean; stdcall; export;
begin
if assigned( form ) then
begin
form.WindowState := wsNormal;
form.Show;
result := true;
end
else
begin
result := false;
end;
end;
Esta función está incluida en un .pas del proyecto y funciona a la perfección.
Ahora al pasarla a una .dll (estoy incursionando en el uso de éstas) siempre abre una nueva ventana aunque ésta este abierta...
Qué es lo que está mal?
Gracias por adelantado
Saludos
|
Yo haría lo siguiente:
Código Delphi
[-]
function formExiste(Asignada: Boolean): Boolean; stdcall; export;
begin
if Asignada then
begin
form.WindowState := wsNormal;
form.Show;
result := true;
end
else begin
result := false;
end;
end;
Y la llamada a la función sería algo como ésto:
Código Delphi
[-]
if formExiste( Assigned( form1 ) ) then
begin
end;
Saludos