Версия Microsoft SDK - PullRequest
       1

Версия Microsoft SDK

0 голосов
/ 21 марта 2011

Я получаю сообщение об ошибке:

#if defined( _WIN32 )
    #ifndef WIN32
        #error error // error calls here
    #endif

Я написал программу в MS VS2008, которая работает нормально, однако, когда я переношу ее и скомпилирую в MS VS2010, я получу кучу ошибок.

Некоторые заголовочные файлы и библиотеки, которые я включаю, таковы:

#include stdlib.h
#include stdio.h
#include stdlib.h
#include io.h
#include math.h
#include mmsystem.h
#include iostream

#pragma comment(lib, "winmm.lib")
#pragma comment(lib, "odbc32.lib")
#pragma comment(lib, "odbccp32.lib")

Теперь, я думаю, проблема заключается в следующем.В VS2008, когда я щелкаю правой кнопкой мыши на mmsystem.h и говорю «открыть содержащую папку», он указывает мне: C:\Program Files (x86)\Microsoft SDKs\Windows\v6.0A\Include

В то время как в VS2010, когда я делаю это, он указывает мне на: C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Include

  1. Может ли это быть источником ошибок, и
  2. Как я могу заставить VS2010 указывать мне v6.0A\Include вместо v7.0A\Include?

Спасибо

Ответы [ 2 ]

1 голос
/ 21 марта 2011

Вы можете изменить путь включаемой папки для своего проекта в свойствах проекта, но, скорее всего, ошибки связаны не с включенными заголовками, а с тем, что в Visual Studio 2010 компилятор C ++ изменился, чтобы быть более строгим в отношении определенных стилей кодирования, которые не считается ошибочным раньше.

В большинстве случаев новый компилятор, будучи более строгим, заставит вас писать лучший код.

Но, чтобы точно знать, можете ли вы опубликовать конкретные ошибки во время компиляции, которые вы получаете?

Вот ссылка, которая также может быть полезна вам, если вы пытаетесь изменить каталоги включения в Visual Studio 2010 при выходе из Visual Studio 2008 .

0 голосов
/ 14 апреля 2011

Я наконец понял это. В свойствах-> C / C ++ -> Препроцессор-> Определения препроцессора добавьте WIN32

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...