我将 2007 directx sdk 包含目录设置为 Visual C++ 2005 中包含文件目录列表中的第一个条目,并且该目录包含 dxtrans.h。然而,当我尝试构建我的项目时,我得到“要编译 qedit.h,您必须安装 DirectX 9 SDK,才能获取 dxtrans.h 标头。”,并伴有 Windows sdk 标头(amstream.h、 qedit.h 等)。为了让编译器找到 dxtrans.h,我还需要执行其他一些魔法吗?该错误消息是否是转移注意力?
打开一个新文件: dxtrans.h 请将以下内容粘贴到文件中,然后将文件移动到 C:\Program Files\Microsoft SDKs\Windows 6.0A\Include
/* Fixes issue with Windows SDK */
#define __IDxtCompositor_INTERFACE_DEFINED__
#define __IDxtAlphaSetter_INTERFACE_DEFINED__
#define __IDxtJpeg_INTERFACE_DEFINED__
#define __IDxtKey_INTERFACE_DEFINED__
是的,这确实是一个转移注意力的事情。 这不是一条错误消息,只是一条旨在提供帮助的通知。 它是由以下生成的:
#pragma message("To compile qedit.h you must install the DirectX 9 SDK, to obtain the dxtrans.h header.")
注意前几个real编译器错误消息,无论它们是什么。