2017-12-05 15 views
0

私は新しいMFCアプリケーションを作成するためにVisual Studio 2013を使用しています。 セットアップウィザードを使用してアプリケーションを作成しました。すべてのデフォルト値をそのまま残しました。MFC - D3DCOLORVALUEがベースMFCアプリケーションで未定義

それも、それはコンパイルエラーを与えた何かを追加する前に実行した場合のテスト:

のIntelliSenseを:

エラーC4430:不足しているタイプ識別子「D3DCOLORVALUE」は、多くの続く未定義

です指定子 - intが仮定されます。注:C++はdefault-intをサポートしていません

これは、標準の標準アプリケーションでウィザードからまっすぐになるのはなぜですか?そして、私はこれをどのように働かせますか?

+0

あなたはprobbaly適切なDirect3Dのヘッダファイル(複数可)を含めるのを忘れていました。 –

+0

ヘッダーファイルはどこに含まれていますか?そして、なぜ私は手動で作成ウィザードからストック標準アプリケーションにこれを手動で追加する必要がありますか? – TheEvilMetal

+0

'D3DCOLORVALUE'はDirect3Dのものです。どのソースファイルにこの 'D3DCOLORVALUE'シンボルがありますか?どのように__exactly__ウィザードを使ってアプリケーションを作成しましたか? –

答えて

0

D2D_COLOR_Fを定義しようとすると、d2dbasetypes.hがエラーを出していました。 私は基本型(D3DCOLORVALUE)をGoogleで検索し、「D3D9Types.h」に

ことになっていることがわかった私はd2dbasetypesヘッダファイルの先頭に#include "D3D9Types.h"を追加し、問題を修正しているようです。これは、デフォルトで生成されたコードに含まれていない理由を私は知らない

...

+0

これは本当に '#include 'でなければなりません。生成されるコードは最小限に抑える必要があるため、デフォルトでは含まれません。開発者がDirect3Dを使用することに決めた場合、開発者は参照する必要があるヘッダとライブラリを理解することが求められます。 – IInspectable

関連する問題