Предупреждение компилятора D_WIN32_WINNT с Boost
Не уверен, что делать с этой ошибкой. Добавлены опции -D_WIN32_WINNT=0x0501
в Visual Studio "Командная строка" в разделе "Свойства проекта", но он говорит, что не распознает его, и предупреждение все же появляется.
Я также не уверен, как добавить определение препроцессора.
1 > Пожалуйста, определите _WIN32_WINNT или _WIN32_WINDOWS соответственно. Например:
1 > - добавить -D_WIN32_WINNT = 0x0501 в командную строку компилятора; или
1 > - добавьте _WIN32_WINNT = 0x0501 к вашему Определения препроцессора проекта.
Ответы
Ответ 1
Я думаю, что ты действительно близок к тому, чтобы это работало. Джон Диблинг дал три способа сделать это, и похоже, что вы попробовали третье решение, которое должно было "перейти к настройкам вашего проекта... и в разделе Свойства конфигурации → C/С++ → PreProcessor, добавьте ;_WIN32_WINNT = 0x0501
". Вы ответили, что по-прежнему получаете эту ошибку и предоставили содержимое настроек препроцессора, WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT = 0x0501
. Я думаю, вы можете решить это, если вы измените _WIN32_WINNT = 0x0501
на _WIN32_WINNT=0x0501
. Когда я попробовал версию с пробелами, она не устранила ошибку, но удалила пробелы.
Ответ 2
Несколько вариантов.
1) Если у вас есть файл основного заголовка, например stdafx.h, вы можете добавить это:
#define _WIN32_WINNT 0x0501
Или вы можете добавить, что он вам нужен.
2) Вы можете добавить -D _WIN32_WINNT=0x0501
(отметить пробел)
3) Перейдите в Свойства проектa > Свойства конфигурации > C/С++ > Пропортер. Добавьте ;_WIN32_WINNT=0x0501
в Определения препроцессора.
Лично я выбираю # 3, потому что нет сомнений в том, что он определен в нужное время в правильных единицах перевода, и я предпочел бы, чтобы все #defines были в одном месте, а не в Определения препроцессора и другие на вкладке "Дополнительно".
Ответ 3
Добавьте в свой верхний исходный код следующую строку.
#include <SDKDDKVer.h>
Ответ 4
Поместите пробел после D
Ответ 5
Для блоков кода здесь описано, как вы это делаете.
Щелкните правой кнопкой мыши **Project Name** on your left >> Click 'Build Options' >> Select Debug or Release on your left >> Select 'Compiler Settings' Tab on the right >> Select #defines tab >>
Затем добавьте следующую строку:
_WIN32_WINNT=0x0501
>> Click Ok >> Close >> Right click **Project Name** again >> Re-build.