DWORD wParam = 0xB0020005;
int nPos = (short)HIWORD(wParam);
И в результате nPos == 0xFFFFB002
Причем такой результат получается не всегда, в основном всеже 0x0000B002, как и должно быть.
Непонятно откуда берется такое значение?
Кстати было замечено что такой глюк только при значениях больше HIWORD, т.е. приотрицательном shorte.
ЗЫ: Кстати этот код взят из MFC, при движении он генерит сообщение OnHScroll, в который приходят иногда именно эти корявые значения в параметре nPos.
ЗЫЫ: Приложение не многопоточное.
20.11.03 13:36: Перенесено модератором из 'C/C++' — ПК