Bonjour,
Alors voilà j'ai le problème suivant : je travaille sur un projet commun (sous Visual Studio 2005 SP1) et au niveau des propriétés du projet, dans les définitions du préprocesseur est positionné le flag _CRT_SECURE_NO_WARNINGS. Si j'ai bien compris, ce flag est censé ignorer les warnings concernant l'utilisation des fonctions du type sprintf, strcpy, strcat, etc... Or sur mon poste (et pas sur celui de mes coopérateurs) il semblerait que le flag soit ignoré (ou non reconnu) à la génération car j'obtiens des warnings tels :
On me propose donc d'utilisez le flag _CRT_SECURE_NO_DEPRECATE et en effet cela marche. En faisant quelques recherches j'ai pu voir que _CRT_SECURE_NO_DEPRECATE équivaut à _CRT_SECURE_NO_WARNINGS mais serait "l'ancienne version".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 warning C4996: 'strcpy' was declared deprecated C:\Program Files\Microsoft Visual Studio 8\VC\include\string.h(73) : see declaration of 'strcpy' Message: 'This function or variable may be unsafe. Consider using strcpy_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.' warning C4996: 'sprintf' was declared deprecated C:\Program Files\Microsoft Visual Studio 8\VC\include\stdio.h(345) : see declaration of 'sprintf' Message: 'This function or variable may be unsafe. Consider using sprintf_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.' warning C4996: 'strcat' was declared deprecated C:\Program Files\Microsoft Visual Studio 8\VC\include\string.h(78) : see declaration of 'strcat' Message: 'This function or variable may be unsafe. Consider using strcat_s instead. To disable deprecation, use _CRT_SECURE_NO_DEPRECATE. See online help for details.'
Or je ne peux pas me permettre d'utiliser le flag _CRT_SECURE_NO_DEPRECATE car ce serait alors une régression sur ce projet, d'autant plus que sur 6 personnes, je suis le seul à qui ce phénomène arrive. Pour compléter l'analyse, si sur un autre poste j'enlève le flag _CRT_SECURE_NO_WARNINGS, c'est bien celui-ci qui est proposé à la génération.
Quelqu'un pourrait-il m'aiguiller, me donner une démarche à suivre (de paramétrage de mon visual studio ou autre) pour rendre mon poste de travail "conforme" ?
Partager