Einzelnen Beitrag anzeigen

TStringlist

Registriert seit: 1. Dez 2003
360 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Windows beendet Programm nicht

  Alt 6. Aug 2005, 17:54
Zitat von Matze:
Ich habe auch testweise ShowMessage in der WMQUERYENDSESSION Prozedur und im OnCloseQuery aufgerufen, doch sehe ich nie einen Dialog. Evtl. tritt das Ereignis gar nicht erst ein.
Das wäre eigentlich nur dann möglich, wenn deine Application noch mehr Formen hätte und eine davon die QueryEndSession-Message davor schon bekommen und diese mit False beantwortet hätte. (Das wäre z.B. auch schon dann der Fall, wenn du dort auch schon nur zufälligerweise eine ganz leere << procedure TForm1.WMQUERYENDSESSION(var msg: TMessage); begin end; >> stehen hättest).

Normalerweise bekommen nämlich alle Formen einer Application eine solche Message zugeschickt und nur dann, wenn alle sie mit True beantwortet haben, deaktiviert die Application anschließend auch. Beantwortet nur eine Form diese Message mit false, bekommen die weiteren Formen keine QueryEndSession-Message mehr und die Application bleibt am Leben.


(hoffe ich erzähle hier keinen Bockmist, glaube es aber nicht )
MfG (& Thx ggf.)
  Mit Zitat antworten Zitat