2013-10-22 3 views
0

, 난 그냥이 머리를 어디 wrl.h가나는 wrl.h 헤더 파일을 포함하지 않은,하지만 왜 내가 사용 할 수있는 공간 마이크로 소프트 : WRL이 CPP 파일에서

#include <D3D11.h> 
#include <d2d1.h> 
#include <d2d1_1.h> 
#include <DXGI1_2.h> 
#include <wincodec.h> 
#include <wincodecsdk.h> 
#include <D2d1helper.h> 
#include <Shcore.h> 

을 파일 포함되어 있습니까? 아니면이 옵션이 있습니까?

+2

을 가장 가능성있는 헤더 파일 중 하나는'# include'ing wrl.h입니다. 선택 적으로 댓글을 달아 어느 것을 볼 수 있습니까? –

+0

미리 컴파일 된 헤더 양식 (pch.h/stdafx.h)을 생략 했습니까? 그렇다면, 아마도 거기에 포함되어있을 것입니다. 내 컴퓨터에서 #와 네임 스페이스 Microsoft :: WRL을 사용하여 목록에있는 파일 만 #including [error C2653] (http://msdn.microsoft.com/en-us/library/a4867f7c.aspx)가 생성됩니다. – MooseBoys

+0

@MooseBoys pch.h 파일에는 wrl.h가 없습니다. – Bos

답변

2

컴파일러 옵션/showIncludes를 추가하여 wrl.h가 포함되는 위치를 파악할 수 있습니다. 빌드하는 동안 파일에 다른 파일이 포함 된 공간 들여 쓰기 트리 뷰가 표시됩니다. 추가 인클루드가 pch에서 올 수 있기 때문에 단지 증분 빌드가 아니라 재 빌드를 수행하십시오.

include가 최상위 수준 인 경우 다른 컴파일러 옵션을 검사하여 무언가가/FI를 사용하여 명령 줄에 파일을 포함하는지 확인할 수 있습니다.

은 (공식적으로, 난 그냥 헤더 파일 위 Win8에 VS 2012 시도하고, 그 헤더 파일이 다른 것으로 포함하기되어야합니다 그래서. 포함되지 wrl.h 보지 않았다.)