2015-04-02 2 views
0

Я работаю с «зрелым» продуктом, который ранее был перенесен из XP, и мне было поручено настроить мою среду на 32 бита. У меня проблемы с wParam и lParam. Поскольку я использую 32-битную разработку, они установлены на 32 бит из-за среды или они 64-битные из-за платформы Win7?Разработка для Win 7 установлена ​​в 32bit

+0

Есть 32 и 64-разрядные версии Windows XP, Vista, 7 и даже 8. –

ответ

4

WPARAM и LPARAM: указатель размером типы данных. WPARAM - это псевдоним для UINT_PTR, а LPARAM - это псевдоним для LONG_PTR. Смотрите MSDN:

Windows Data Types

Указатели 32-бит, если ваш проект компилируется как 32-битным исполняемым, и 64-бит, если ваш проект компилируется как 64-битного исполняемого файла.

Таким образом, чтобы ответить на ваш вопрос, WPARAM и LPARAM будет 32-бит, потому что вы компилируете свой проект в 32-битном исполняемый (который будет работать в 32-битной на 64-битной машине, если WOW64 эмулятор установлен).

+0

Спасибо. Это то, что я думал, но я получаю некоторые странные цифры. – Chas2K

+0

Не знал о различных версиях Windows. Я старая собачка UNIX & C и получила прослушивание, потому что этот проект в основном на C, а некоторые C++ и приличный C flogger не были найдены среди таланта Off Shore. Настоящий мишень стилей кодирования. – Chas2K