Also mich wundert vor allem wieso die TimerProc hier in allen Posts nicht der Doku entspricht. Ich würde mal sagen die Beispiele sorgen alle für einen fehlerhaften Stack...
Denn die bekommt eigentlich noch Parameter und da das stdcall ist, muss die aufgerufene Prozedur auch die Parameter aufräumen (tut es aber nicht, weil sie nix davon weiß):
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx
Korrekt sieht die so aus:
Delphi-Quellcode:
procedure OnTimer(hwnd: HWND; uMsg: UINT; idEvent: UINT_PTR; dwTime: DWORD); stdcall;
begin
...
Und dann hat man auch die ID des Timers...