Yo solucioné ese problema con los lmdtools (pack gratuito) porque el ApplicationsEvents no traía los eventos que pongo a continuación:
Código Delphi
[-]
procedure TDTM.LMDApplicationCtrl1Activate(Sender: TObject);
begin
Application.RestoreTopMosts
end;
procedure TDTM.LMDApplicationCtrl1Deactivate(Sender: TObject);
begin
Application.NormalizeTopMosts;
end;
Es un bug conocido en Windows y documentado en la msdn. La verdad, en delphi 7 no lo he probado, eso me pasó con delphi 6