advertencia del compilador D_WIN32_WINNT con Boost
-
25-09-2019 - |
Pregunta
No está seguro de qué hacer con este error. Añadido -D_WIN32_WINNT=0x0501
a las opciones de "línea de comandos" de Visual Studio bajo Propiedades del proyecto, sino que dice que no lo reconoce y todavía aparece la advertencia.
Además, no estoy seguro de cómo añadir la definición de preprocesador.
1> Por favor, definir o _WIN32_WINNT _WIN32_WINDOWS apropiadamente. Por ejemplo:
1> - añadir -D_WIN32_WINNT = 0x0501 a la línea de comandos del compilador; o
1> - añadir _WIN32_WINNT = 0x0501 a su del proyecto de definiciones del preprocesador.
Solución
Creo que estás muy cerca de conseguir que esto funcione. John Dibling dio tres maneras que usted puede hacer esto y parece que se trató la tercera solución, que era la de "ir a la configuración de su proyecto ... y bajo la Configuración Properties-> C / C ++ -> preprocesador epígrafe, ;_WIN32_WINNT = 0x0501
complemento". Usted respondió que todavía estaban recibiendo ese error y siempre que el contenido de la configuración del preprocesador, WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT = 0x0501
. Creo que se puede solucionar esto si cambia _WIN32_WINNT = 0x0501
a _WIN32_WINNT=0x0501
. Cuando probé la versión con espacios, no eliminó el error, pero la eliminación de los espacios lo hizo.
Otros consejos
A pocas opciones.
1) Si usted tiene un archivo de encabezado principal, como stdafx.hy, se podría añadir lo siguiente:
#define _WIN32_WINNT 0x0501
O se podría añadir que en cualquier lugar que lo necesite.
2) Se pueden añadir -D _WIN32_WINNT=0x0501
(nótese el espacio)
3) Ir a Propiedades del proyecto> Propiedades de configuración> C / C ++> Proporcessor . Añadir ;_WIN32_WINNT=0x0501
a Definiciones del preprocesador .
En lo personal, elegir # 3 porque no hay duda de que se está definiendo en el momento adecuado en las unidades de traducción adecuados, y prefiero tener todos los #defines en un solo lugar en vez de un ser en Define preprocesador y otros en la ficha Opciones avanzadas.
Añadir línea siguiente en el código fuente superior.
#include <SDKDDKVer.h>
Ponga un espacio después de la D
Para bloques de código, aquí es cómo lo hace.
clic derecho **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 >>
continuación, agregue la siguiente línea, ya que es:
_WIN32_WINNT=0x0501
>> Click Ok >> Close >> Right click **Project Name** again >> Re-build.