34 votes

Avertissement du compilateur D_WIN32_WINNT avec Boost

Je ne sais pas trop quoi penser de cette erreur. Ajouté -D_WIN32_WINNT=0x0501 aux options "Command Line" de Visual Studio sous Project Properties mais il dit qu'il ne le reconnaît pas et l'avertissement apparaît toujours.

Je ne sais pas non plus comment ajouter la définition du préprocesseur.

1>Veuillez définir _WIN32_WINNT ou _WIN32_WINDOWS de manière appropriée. Par exemple :
1>- ajouter -D_WIN32_WINNT=0x0501 à la ligne de commande du compilateur ; ou
1>- ajouter _WIN32_WINNT=0x0501 à la définition de votre Définitions du préprocesseur de votre projet.

30voto

Hill Points 1

Ajoutez la ligne suivante dans votre code source supérieur.

#include <SDKDDKVer.h>

23voto

foven Points 296

Je pense que tu es vraiment proche de faire fonctionner tout ça. John Dibling a indiqué trois façons de procéder et il semble que vous ayez essayé la troisième solution, qui consistait à "aller dans les paramètres de votre projet ... et sous l'onglet "Paramètres". Propriétés de configuration->C/C++->PréProcesseur titre, ajouter ;_WIN32_WINNT = 0x0501 ". Vous avez répondu que vous obteniez toujours cette erreur et avez fourni le contenu des paramètres de votre préprocesseur, WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT = 0x0501 . Je pense que vous pouvez résoudre ce problème si vous changez _WIN32_WINNT = 0x0501 a _WIN32_WINNT=0x0501 . Lorsque j'ai essayé la version avec des espaces, l'erreur n'a pas été éliminée, mais la suppression des espaces l'a été.

20voto

John Dibling Points 56814

Quelques options.

1) Si vous avez un fichier d'en-tête principal, comme stdafx.h, vous pouvez ajouter ceci :

#define _WIN32_WINNT 0x0501

Ou vous pouvez l'ajouter partout où vous en avez besoin.

2) Vous pouvez ajouter -D _WIN32_WINNT=0x0501 (notez l'espace)

3) Allez sur Propriétés du projet > Propriétés de configuration > C/C++ > Proporcesseur . Ajouter ;_WIN32_WINNT=0x0501 a Définitions du préprocesseur .

Personnellement, je choisis le #3 parce qu'il n'y a aucun doute sur le fait qu'il a été défini au bon moment dans les bonnes unités de traduction, et je préfère avoir toutes les #définitions à un seul endroit plutôt que d'en avoir quelques-unes dans Définitions du préprocesseur et d'autres dans l'onglet avancé.

3voto

Hans Passant Points 475940

Mettez un espace après le D

0voto

Bonga the Poo Points 121

Pour les blocs de code, voici comment procéder.

Clic droit **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 >> Ajoutez ensuite la ligne suivante telle quelle :

_WIN32_WINNT=0x0501

>> Click Ok >> Close >> Right click **Project Name** again >> Re-build.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X