Hallo Luckie und die anderen Experten, bitte habt die Geduld mit mir, weil ich noch Fragen habe.
Die Nachrichtenschleife des XP Usermanagers ist nicht minimalistisch. Dort steht unter anderem:
Delphi-Quellcode:
Ret := GetMessage(msg, 0, 0, 0);
if Integer(Ret) = -1 then Ret := True; // -1 nur bei fehlerhaften Handles oder Pointern, kann das überhaupt passieren?
Es geht um die zweite Zeile, der Kommentar besagt schon die erste Frage: Ist das nur zur 100%igen Sicherheit, oder kann es auch bei regulärer Programmumgebung und -benutzung passieren, daß Getmessage einen Errorcode, also -1 zurückliefert.
Die zweite - kleine - Unklarheit ergibt sich durch die nächste Codezeile:
if (not Ret) then break; // nötig?
Auch hier sagt der Kommentar schon mein Anliegen. Denn auch ohne diese Zeile läßt sich nämlich das Programm mit Alt+F4, "Datei -> Beenden" und / oder Druck auf "x" beenden.
Danke für die Aufmerksamkeit und Geduld!
Gruß
Delphi-Laie