Проблема компиляции в VS 2005 после установки SDK платформы Microsoft для Windows Server 2003 SP1 - PullRequest
1 голос
/ 25 июня 2009

Как видно из заголовка, у меня возникла проблема при компиляции приложений на основе MFC, эта проблема началась сразу после установки SDK для Windows Server 2003 и теперь даже при попытке скомпилировать новый проект MFC я получаю следующие ошибки:

c: \ program files \ платформа Microsoft sdk \ include \ zmouse.h (141): ошибка C2146: синтаксическая ошибка: отсутствует ';' перед идентификатором 'HwndMSWheel'

1> c: \ program files \ платформа Microsoft sdk \ include \ zmouse.h (141): ошибка C2433: «HWND»: «встроенный» не разрешен на декларации данных

1> c: \ program files \ платформа Microsoft sdk \ include \ zmouse.h (141): ошибка C4430: отсутствует указатель типа - int предполагается. Примечание: C ++ не поддерживает по умолчанию-INT

1> c: \ program files \ платформа Microsoft sdk \ include \ zmouse.h (142): ошибка C2065: «PUINT»: необъявленный идентификатор

1> c: \ program files \ платформа Microsoft sdk \ include \ zmouse.h (142): ошибка C2146: синтаксическая ошибка: отсутствует ')' перед идентификатором 'PuiMsh_MsgMouseWheel'

1> c: \ program files \ платформа Microsoft sdk \ include \ zmouse.h (142): ошибка C4430: отсутствует указатель типа - int предполагается. Примечание: C ++ не поддерживает по умолчанию-INT

1> c: \ program files \ платформа Microsoft sdk \ include \ zmouse.h (147): ошибка C2059: синтаксическая ошибка: ')'

1> c: \ program files \ платформа Microsoft sdk \ include \ zmouse.h (148): ошибка C2143: синтаксическая ошибка: отсутствует ';' до '{'

1> c: \ program files \ платформа Microsoft sdk \ include \ zmouse.h (148): ошибка C2447: '{': отсутствует заголовок функции (формальный список в старом стиле?)

1> c: \ program files \ платформа Microsoft sdk \ include \ commctrl.h (29): ошибка C2146: синтаксическая ошибка: отсутствует ';' перед идентификатором 'HRESULT'

1> c: \ program files \ платформа Microsoft sdk \ include \ commctrl.h (29): ошибка C4430: отсутствует указатель типа - int предполагается. Примечание: C ++ не поддерживает по умолчанию-INT

1> c: \ program files \ платформа Microsoft sdk \ include \ commctrl.h (29): ошибка C4430: отсутствует указатель типа - int предполагается. Примечание: C ++ не поддерживает по умолчанию-INT

1> c: \ program files \ платформа Microsoft sdk \ include \ prsht.h (97): ошибка C2065: 'ЗВОНОК': необъявленный идентификатор

1> c: \ program files \ платформа Microsoft sdk \ include \ prsht.h (97): ошибка C2065: 'LPFNPSPCALLBACKA': не объявлено Идентификатор

1> c: \ program files \ платформа Microsoft sdk \ include \ prsht.h (97): ошибка C4430: отсутствует указатель типа - предполагается int. Примечание: C ++ не поддерживает default-int

1> c: \ program files \ платформа Microsoft sdk \ include \ prsht.h (97): фатальная ошибка C1903: невозможно восстановить с предыдущего ошибка (ы); остановка компиляции

в некоторых случаях я решил проблему, включив windows.h и определив WIN32_LEAN_AND_MEAN в верхней части stdafx.h. Однако для крупных проектов, в которых используются статические и динамические ссылки на другие библиотеки, предлагаемое решение не сработало. Я не совсем уверен, почему это происходит, поскольку я также попытался переустановить SDK платформы безрезультатно.

Любая помощь приветствуется.

Спасибо:)

1 Ответ

1 голос
/ 20 июля 2012

Вы обязательно #include windows.h перед zmouse.h

...