В Delphi 6 WPARAM
объявлен как подписанный:
WPARAM = Longint;
В Delphi 2010 WPARAM
объявлен как будучи подписанным:
WPARAM = INT_PTR;
Но в XE2 он объявлен как неподписанный:
WPARAM = UINT_PTR;
Официальное определение Windows :
typedef UINT_PTR WPARAM;
Это соответствует XE2.
Кто-нибудь знает, было ли изменение сделано для XE или для XE2?