在Windows 8上使用OpenGL时出现DXGI警告?

在Windows 8上使用OpenGL时出现DXGI警告?,opengl,windows-8,directx,dxgi,Opengl,Windows 8,Directx,Dxgi,我正在使用OpenGL(不是DirectX)编写一个CAD应用程序。在Windows 8 Pro(64位)上运行调试生成时,在应用程序正确终止之前,会将以下消息打印到调试器的控制台窗口: DXGI WARNING: Process is terminating. Using simple reporting. Please call ReportLiveObjects() at runtime for standard reporting. [ STATE_CREATION WARNING #0

我正在使用OpenGL(不是DirectX)编写一个CAD应用程序。在Windows 8 Pro(64位)上运行调试生成时,在应用程序正确终止之前,会将以下消息打印到调试器的控制台窗口:

DXGI WARNING: Process is terminating. Using simple reporting. Please call ReportLiveObjects() at runtime for standard reporting. [ STATE_CREATION WARNING #0: ]
DXGI WARNING: Live Producer at 0x0000009E51808AD8, Refcount: 2. [ STATE_CREATION WARNING #0: ]
DXGI WARNING:   Live Object at 0x0000009E5180A570, Refcount: 2. [ STATE_CREATION WARNING #0: ]
DXGI WARNING: Live                         Object :      1 [ STATE_CREATION WARNING #0: ]
我不知道这是从哪里来的。DXGI似乎与DirectX有关,我不使用它。有什么提示吗


更新 按照Paul Jan的建议,我启用了设备调试,这将产生以下消息:

D3D11 INFO: Create ID3D11Context: Name="unnamed", Addr=0x00000015EEB486D0, ExtRef=1, IntRef=0 [ STATE_CREATION INFO #2097225: CREATE_CONTEXT]
D3D11 INFO: Create ID3DDeviceContextState: Name="unnamed", Addr=0x00000015EE96DE70, ExtRef=1, IntRef=0 [ STATE_CREATION INFO #3145735: CREATE_DEVICECONTEXTSTATE]
D3D11 INFO: Create ID3D11BlendState: Name="unnamed", Addr=0x00000015EE97B6A0, ExtRef=1, IntRef=0 [ STATE_CREATION INFO #2097270: CREATE_BLENDSTATE]
D3D11 INFO: Create ID3D11DepthStencilState: Name="unnamed", Addr=0x00000015EE9799F0, ExtRef=1, IntRef=0 [ STATE_CREATION INFO #2097273: CREATE_DEPTHSTENCILSTATE]
D3D11 INFO: Create ID3D11RasterizerState: Name="unnamed", Addr=0x00000015EE97B340, ExtRef=1, IntRef=0 [ STATE_CREATION INFO #2097276: CREATE_RASTERIZERSTATE]
D3D11 INFO: Create ID3D11Sampler: Name="unnamed", Addr=0x00000015EE97AE30, ExtRef=1, IntRef=0 [ STATE_CREATION INFO #2097267: CREATE_SAMPLER]
D3D11 INFO: Create ID3D11Query: Name="unnamed", Addr=0x00000015F25D3060, ExtRef=1, IntRef=0 [ STATE_CREATION INFO #2097279: CREATE_QUERY]
D3D11 INFO: Create ID3D11Texture2D: Name="unnamed", Addr=0x00000015EEB8CA50, ExtRef=1, IntRef=0 [ STATE_CREATION INFO #2097234: CREATE_TEXTURE2D]
D3D11 INFO: Create ID3D11Texture2D: Name="unnamed", Addr=0x00000015EA313BF0, ExtRef=1, IntRef=0 [ STATE_CREATION INFO #2097234: CREATE_TEXTURE2D]
D3D11 INFO: Create ID3D11Texture2D: Name="unnamed", Addr=0x00000015EEB41EC0, ExtRef=1, IntRef=0 [ STATE_CREATION INFO #2097234: CREATE_TEXTURE2D]
D3D11 INFO: Destroy ID3D11Texture2D: Name="unnamed", Addr=0x00000015EA313BF0 [ STATE_CREATION INFO #2097236: DESTROY_TEXTURE2D]
D3D11 INFO: Destroy ID3D11Texture2D: Name="unnamed", Addr=0x00000015EEB41EC0 [ STATE_CREATION INFO #2097236: DESTROY_TEXTURE2D]
D3D11 INFO: Destroy ID3D11Texture2D: Name="unnamed", Addr=0x00000015EEB8CA50 [ STATE_CREATION INFO #2097236: DESTROY_TEXTURE2D]
D3D11 WARNING: Process is terminating. Using simple reporting. Please call ReportLiveObjects() at runtime for standard reporting. [ STATE_CREATION WARNING #0: UNKNOWN]
D3D11 WARNING: Live Producer at 0x00000015EEA57E08, Refcount: 3. [ STATE_CREATION WARNING #0: UNKNOWN]
D3D11 WARNING:  Live Object at 0x00000015EEB486D0, Refcount: 1. [ STATE_CREATION WARNING #0: UNKNOWN]
D3D11 WARNING:  Live Object at 0x00000015EE96DE70, Refcount: 0. [ STATE_CREATION WARNING #0: UNKNOWN]
D3D11 WARNING:  Live Object at 0x00000015EE97B6A0, Refcount: 0. [ STATE_CREATION WARNING #0: UNKNOWN]
D3D11 WARNING:  Live Object at 0x00000015EE9799F0, Refcount: 0. [ STATE_CREATION WARNING #0: UNKNOWN]
D3D11 WARNING:  Live Object at 0x00000015EE97B340, Refcount: 0. [ STATE_CREATION WARNING #0: UNKNOWN]
D3D11 WARNING:  Live Object at 0x00000015EE97AE30, Refcount: 0. [ STATE_CREATION WARNING #0: UNKNOWN]
D3D11 WARNING:  Live Object at 0x00000015F25D3060, Refcount: 0. [ STATE_CREATION WARNING #0: UNKNOWN]
D3D11 WARNING: Live                         Object :      7 [ STATE_CREATION WARNING #0: UNKNOWN]

DXGI WARNING: Process is terminating. Using simple reporting. Please call ReportLiveObjects() at runtime for standard reporting. [ STATE_CREATION WARNING #0: ]
DXGI WARNING: Live Producer at 0x00000015F25D2EB8, Refcount: 2. [ STATE_CREATION WARNING #0: ]
DXGI WARNING:   Live Object at 0x00000015EE9AF870, Refcount: 2. [ STATE_CREATION WARNING #0: ]
DXGI WARNING: Live                         Object :      1 [ STATE_CREATION WARNING #0: ]

在WindowsVista及以上版本中,DirectX和OpenGL实际上都通过DXGI工作。DXGI管理设备。实际使用的渲染API(OpenGL/DirectX)在DXGI中称为
生产者
,因此我们可以放心地假设该消息与您的通用OpenGL使用有关


当它抱怨生产者和活动对象的引用计数都为2时,可能是您没有正确地破坏OpenGL上下文吗?(即,成功调用
wglMakeCurrent(NULL)
wglDeleteContext
)这样的任务根本不是一个实际问题,因为它们都会在进程终止时被隐式破坏,但会得到警告。

我遇到了相同的警告信息(ReportLiveObjects,Live Producer,Live Object,STATE#u CREATION WARNING#0:UNKNOWN,…)与您一起,在DirectX 11项目中。但这些信息对我和您来说都不够丰富

对于我的项目,问题是纹理文件(.dds)的格式与程序的其他部分不兼容,因此程序无法正确加载纹理。在我将其转换为正确格式后,此警告信息消失


因此,我的结论是,您可能需要使用一些调试技术,例如断点、日志记录等,以便跟踪您的案例中的真正问题。

谢谢您的解释!但是,不,我的应用程序正确地调用了
wglMakeCurrent(NULL)
wglDeleteContext
。可能是驱动程序中的错误?可能是!我认为您可以放心地假设这些警告是虚假的,无害的,但是如果您好奇(我知道我是!),您可以尝试从DirectX控制面板启用设备调试(请参阅以获取说明)。这可能会提供与调用相同的信息DX应用程序中的“reportLiveObjects()”。谢谢-我会试试。如果我能在Windows 8上安装DirectX控制面板。它们是Windows 8 SDK的一部分(请参阅)。是的,谢谢,我已经安装了它,并用结果更新了我的问题。不过不是很确定。我对win 7和DX11(不是OpenGL)有相同的警告.你收到警告了吗?