Wenn ich die Schleife folgendermaßen erweitere, dann kann ich das Programm zwar sauber beenden, aber dann bekomme ich die Events nicht mehr:
Delphi-Quellcode:
repeat
if PeekMessage(Msg, 0, 0, 0, PM_REMOVE) then
DispatchMessage(Msg)
else
if ReadConsole(GetStdHandle(STD_INPUT_HANDLE), @Key, 1, NumRead, nil) and
(NumRead > 0) then
Exit
else
Sleep(0); // Rest der Zeitscheibe verwerfen
until False;
Kommentiere ich die Erweiterung wieder aus, dann bekomme ich die Events wieder. Was hat das eine mit dem anderen zu tun?
"Seit er seinen neuen Computer hat, löst er alle seine Probleme, die er vorher nicht hatte."