윈 98에서
WM_QUERYENDSESSION; 을 받아서 윈도우 종료시 종료를 하였는데
가끔 다른 창들을 띄우다가 stayontop 이 두개가 경쟁을 해서 그런지
최소화 했다가 다시 띄우면 이것들이 이상해진건지
WM_QUERYENDSESSION 메세지를 못받아 내더라구요
그래서 윈도우 종료시 어떤메세지가 날라오는가 봤더니 WM_ENDSESSION이더라구요
그런데 문제는 아래와 같이 처리한후 내 프로그램은 종료가 되었는데
다른 application으로 메세지를 이어주지 못하는건지.
제 프로그그램만 종료하구 윈도우 종료는 못하는 겁니다.
고수님들 살려주세요
procedure WMEndSession(var Msg : TMessage); message WM_ENDSESSION;
procedure TForm1.WMEndSession(var Msg :TMessage);
begin
inherited;
try
application.terminate;
finally
Msg.Result := Longint(True);
end;
end;