我刚刚在我的 d3d11 应用程序中实现了 dcomp,在尝试编译后,我遇到了 1.5k 错误,这些错误都与 d2d 相关。我根本没有在我的应用程序中使用 d2d 并且很困惑,在查看 dcomp.h 时,很明显 dcomp 包含 d2d1_1.h 作为其中的一部分。每当我包含 dcomp.h 或 d2d1_1.h 时,我都会遇到这些错误。大多数与 dcommon.h 相关的未定义类型(我尝试包括与错误没有区别)
我已尝试通过执行以下操作来解决此包含问题:包含 dcommon.h、包含 d2d1.h、将 windows sdk 更新到最新版本。这些都没有解决问题,我仍然不能在不包括 d2d1_1.h 的情况下包括 dcomp.h。有谁知道如何解决这个问题?这个问题与代码无关,因为无论我的 dcomp 代码如何,都会发生这些错误,纯粹包含这些文件会引发这些错误。
示例错误:
Severity Code Description Project File Line Suppression State Error (active) E0020 identifier "D2D_RECT_L" is undefined ext C:\Program Files (x86)\Windows Kits\10\Include\10.0.22000.0\um\d2d1_1.h 57
#include <dcommon.h>
#include <d2d1.h>
#pragma comment( lib, "d2d1" )
#include <wrl.h>
#include <dxgi.h>
#include <dcomp.h>
#pragma comment( lib, "dxgi" )
#pragma comment( lib, "dcomp" )