C++ D3DERR_INVALIDCALL(D3D11CreateDevice的返回码)在哪里定义?

C++ D3DERR_INVALIDCALL(D3D11CreateDevice的返回码)在哪里定义?,c++,direct3d,directx-11,direct3d11,C++,Direct3d,Directx 11,Direct3d11,MSDN文档中说,它返回一个。其中包括D3DERR_INVALIDCALL。但是D3DERR_INVALIDCALL在哪里定义?我正在使用newst Windows SDK。我需要包含哪个头文件?D3D11CreateDevice始终返回其中一个D3D11返回代码,但不一定返回所有代码。D3D11CreateDevice不应返回D3DERR_INVALIDCALL,因为它是D3D9错误代码,并且仅在D3D9.h中定义 通常,除非您打算使用不同的参数重试调用(例如,通过允许较低的功能级别),失败的

MSDN文档中说,它返回一个。其中包括D3DERR_INVALIDCALL。但是D3DERR_INVALIDCALL在哪里定义?我正在使用newst Windows SDK。我需要包含哪个头文件?

D3D11CreateDevice始终返回其中一个D3D11返回代码,但不一定返回所有代码。D3D11CreateDevice不应返回D3DERR_INVALIDCALL,因为它是D3D9错误代码,并且仅在D3D9.h中定义


通常,除非您打算使用不同的参数重试调用(例如,通过允许较低的功能级别),失败的D3D11CreateDevice应该被视为不可恢复的错误,您应该中止程序。

它在
d3d9.h
d3d9helper.h
中定义。您知道DXGI\u error\u INVALID\u调用和D3DERR\u INVALIDCALL之间的区别吗,
DXGI\u ERROR\u INVALID\u CALL==0x887A0001
D3DERR\u INVALIDCALL==0x8876086C
如果这是您的意思(但我希望不是)。D3D11CreateDevice在高清英特尔图形GPU上返回DXGI\u ERROR\u INVALID\u调用。@Vertexwahn总是对文档持保留态度。它并不总是最新的,有时它只是错误的(在这种情况下看起来像后者)。特别是,很难为Win32 API等复杂系统定义潜在错误代码的限制。当底层组件失败时,API可以选择是按原样传播错误,还是将其重新转换为自己的通用错误类型。传播通常是两害相权取其轻,因为它不会导致信息丢失,而且调用者可能具有中间组件所缺乏的特殊知识。