WPARAM und LPARAM sollten wachsen, sowie auch der Pointer, aber Integer leider nicht, weswegen du dir beim Cast von Pointer auf Integer so knapp die Häfte der Bits wegschneiden würdest.
(ja, ich weiß, man könnte glattt glauben daß der Integer auf 64 bit wird, so wie er damals mal 16 Bit war,
aber aus unerfindlichen Gründen hat man sich dagegenentschieden ... diesmal liegt aber die Schuld wenigstens nicht beim Delphi
, außer daß wir jeden Sch*** nachmachen müssen )