web-dev-qa-db-ja.com

Boostを使用したD_WIN32_WINNTコンパイラの警告

このエラーをどうすればよいかわからない。 [プロジェクトのプロパティ]の下のVisualStudioの[コマンドライン]オプションに-D_WIN32_WINNT=0x0501を追加しましたが、それを認識せず、警告が引き続き表示されます。

プリプロセッサ定義を追加する方法もわかりません。

1> _WIN32_WINNTまたは_WIN32_WINDOWSを適切に定義してください。例えば:
1>-コンパイラのコマンドラインに-D_WIN32_WINNT = 0x0501を追加します。または
1>-プロジェクトのプリプロセッサ定義に_WIN32_WINNT = 0x0501を追加します。

24
bobber205

あなたはこれを機能させることに本当に近いと思います。 John Diblingは、これを行うための3つの方法を示しました。3番目の解決策を試したようです。「プロジェクトの設定に移動します...そして構成プロパティ-> C/C++->プリプロセッサ)の下にあります見出し、;_WIN32_WINNT = 0x0501 "を追加します。あなたはまだそのエラーが発生していると答え、プリプロセッサ設定の内容WIN32;_DEBUG;_CONSOLE;_WIN32_WINNT = 0x0501を提供しました。 _WIN32_WINNT = 0x0501_WIN32_WINNT=0x0501に変更すれば、これを解決できると思います。スペースのあるバージョンを試したところ、エラーは解消されませんでしたが、スペースを削除してもエラーは解消されました。

22
foven

いくつかのオプション。

1)stdafx.hのようなメインヘッダーファイルがある場合は、次を追加できます。

#define _WIN32_WINNT 0x0501

または、必要な場所に追加することもできます。

2)-D _WIN32_WINNT=0x0501を追加できます(スペースに注意してください)

3)プロジェクトのプロパティ>構成のプロパティ> C/C++>プロセッサに移動します。 ;_WIN32_WINNT=0x0501プリプロセッサ定義に追加します。

個人的には、#3を選択します。これは、適切な変換単位で適切なタイミングで定義されていることに疑いの余地がなく、すべての#defineを1か所に配置するのではなくPreprocessor Defines =およびその他の詳細タブ。

16
John Dibling

トップソースコードに次の行を追加します。

#include <SDKDDKVer.h>
15
Hill

Dの後にスペースを入れます

3
Hans Passant

コードブロックの場合は、次のようにします。

右クリック **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 >>次に、次の行をそのまま追加します。

_WIN32_WINNT=0x0501

>> Click Ok >> Close >> Right click **Project Name** again >> Re-build.
0
Bonga the Poo