winsock déconseillées pas d'avertissements

Je suis en train de créer une multidiffusion UDP socket programme à l'aide de VS2015 (application console C++).

J'ai obtenu l'erreur suivante,

Error   C4996   'inet_addr': Use inet_pton() or InetPton() instead or define _WINSOCK_DEPRECATED_NO_WARNINGS to disable deprecated API warnings mulitcast_listener

J'ai essayé d'ajouter _WINSOCK_DEPRECATED_NO_WARNINGS symbole de mon projet de paramètres via le menu "Projet"- > "Propriétés"->"propriétés de Configuration"->"C/C++"->"Préprocesseur"->"définitions de Préprocesseur"
.. Mais il dit la même chose.

Et puis j'ai essayé d'ajouter un symbole au-dessus de #include "stdafx.h"
comme

#define _WINSOCK_DEPRECATED_NO_WARNINGS 1

et puis Pas(/sdl-) sur le "Projet"- > "Propriétés"->"propriétés de Configuration"->"C/C++"->Général>SDL vérifie

maintenant, je reçois un message d'erreur disant

Warning C4603   '_WINSOCK_DEPRECATED_NO_WARNINGS': macro is not defined or definition is different after precompiled header

Enfin j'ai essayé de mettre en œuvre

inet_pton(AF_INET, HELLO_GROUP, (PVOID *)(&mreq.imr_multiaddr.s_addr));

au lieu de

mreq.imr_multiaddr.s_addr = inet_addr(HELLO_GROUP);

J'ai besoin de comprendre pourquoi l'erreur n'a pas résolu même après l'ajout de la _WINSOCK... macro.

Merci d'avance.

Concernant l'ajout de la #define avant stdafx.h vous pourriez ne pas être conscient de ceci: en.wikipedia.org/wiki/Precompiled_header#stdafx.h . #include "stdafx.h" devrait être la première chose. Qu'advient-il si vous placez le #define droit à la suite notamment de stdafx mais avant tout le monde comprend?
Construire avec succès.. je vous Remercie beaucoup pour cette information

OriginalL'auteur kar | 2015-08-26