Iwao Dev

気付いたことをメモしています.

この画面は、簡易表示です

2021/03/05

MBCS_Support_Deprecated_In_MFC

最初 VC 6 で作成したプロジェクト.VC 8 までは順にあげてあった.これをさらに VC 14.x まであげたもの.
その中の一部のプロジェクトを「マルチ バイト文字セットを使用する」に変更してビルドすると,

1>------ ビルド開始: プロジェクト:TEDHPro4, 構成:Debug Win32 ------
1>  StdAfx.cpp
1>c:\program files (x86)\microsoft visual studio 14.0\vc\atlmfc\include\afx.h(38): warning C4996: 'MBCS_Support_Deprecated_In_MFC': MBCS support in MFC is deprecated and may be removed in a future version of MFC.
1>  c:\program files (x86)\microsoft visual studio 14.0\vc\atlmfc\include\afx.h(33): note: 'MBCS_Support_Deprecated_In_MFC' の宣言を確認してください
1>  _WIN32_WINNT not defined. Defaulting to _WIN32_WINNT_MAXVER (see WinSDKVer.h)
1>  TEDHPro4.cpp
1>  TEDHProD.cpp
1>  コードを生成中...
1>StdAfx.obj : warning LNK4075: /EDITANDCONTINUE は /OPT:LBR の指定によって無視されます。
1>  TEDH4140.vcxproj -> c:\Temp\EDHProM\TEDHPro4\Debug.140\TEDHPro4.exe
1>  TEDH4140.vcxproj -> c:\Temp\EDHProM\TEDHPro4\Debug.140\TEDHPro4.pdb (Full PDB)
========== ビルド: 1 正常終了、0 失敗、4 更新不要、0 スキップ ==========

C4996: 'MBCS_Support_Deprecated_In_MFC'
今回のプロジェクトは,dll の単体テストのためのものなのでこのまま(warning が出る状態)とする.
これを回避するには「文字セット」を「Unicode 文字セットを使用する」にすること.
どうしても warning C4996 を消したいのではあれば,StdAfx.h で afx*.h のインクルードの前に NO_WARN_MBCS_MFC_DEPRECATION を定義すれば良い.
#define NO_WARN_MBCS_MFC_DEPRECATION

この投稿は役に立ちましたか? 役に立った 役に立たなかった 0 人中 0 人がこの 投稿 は役に立ったと言っています。

  にほんブログ村 IT技術ブログへ



    top

    %d人のブロガーが「いいね」をつけました。