D3DKMTCreateAllocation返回代码

时间:2011-04-13 09:04:21

标签: windows graphics directx driver d3dx

在我正在调试的驱动程序中,有一个D3DKMTCreateAllocation的调用。我收到的错误是int(-1071775735)或0xc01e0009,类型为NTSTATUS

我试图弄清楚这个错误但找不到任何东西。它不会映射到以下任何一个:

STATUS_SUCCESS  
STATUS_DEVICE_REMOVED  
STATUS_INVALID_PARAMETER  
STATUS_NO_MEMORY  
STATUS_NO_VIDEO_MEMORY  

如何识别错误?

1 个答案:

答案 0 :(得分:3)

看起来您可能偶然发现了可用文档中错误定义的错误代码(STATUS_GRAPHICS_DRIVER_MISMATCH)(请参阅NTSTATUS values,显示为0x401E0117);但它存在于Windows Platform SDK的头文件<ntstatus.h>中,并与您的值匹配。

我安装的Windows SDK副本(v7.0,Windows 7 / .NET 3.5sp1)描述如下(第13743行):

//
// MessageId: STATUS_GRAPHICS_DRIVER_MISMATCH
//
// MessageText:
//
// The kernel driver detected a version mismatch between it and the user mode driver.
//
#define STATUS_GRAPHICS_DRIVER_MISMATCH  ((NTSTATUS)0xC01E0009L)

其他D3D功能列出了此符号但不是值。以下是文档的链接以及引用的文本。

DxgkDdiOpenAllocation @ MSDN
STATUS_GRAPHICS_DRIVER_MISMATCH - &#34; 显示微型端口驱动程序与启动对DxgkDdiOpenAllocation的调用的用户模式显示驱动程序不兼容(即,向显示微型端口驱动程序提供私有数据)。&#34 ;

DxgkDdiCreateAllocation @ MSDN
STATUS_GRAPHICS_DRIVER_MISMATCH - &#34; 显示微型端口驱动程序与启动了对DxgkDdiCreateAllocation的调用的用户模式显示驱动程序不兼容。&#34;