DXGKDDI_DESTROYMEMORYBASIS回调函数 (d3dkmddi.h)
KMD 的 DxgkDdiDestroyMemoryBasis 函数会破坏先前调用 DxgkDdiCreateMemoryBasis创建的内存基础。
语法
DXGKDDI_DESTROYMEMORYBASIS DxgkddiDestroymemorybasis;
NTSTATUS DxgkddiDestroymemorybasis(
IN_CONST_HANDLE hAdapter,
IN_CONST_HANDLE hMemoryBasis
)
{...}
参数
hAdapter
[in]与显示适配器关联的上下文块的句柄。 KMD 以前提供了此句柄,用于在 MiniportDeviceContextDxgiDdiAddDevice 函数的输出参数中 Dxgkrnl。
hMemoryBasis
要销毁的内存基句柄。 此句柄以前是通过调用 DxgkDdiCreateMemoryBasis创建的。
返回值
DxgkDdiDestroyMemoryBasis 在成功销毁内存基础时返回STATUS_SUCCESS。 否则,它将返回 NTSTATUS 错误代码。 请参阅“备注”。
言论
Dxgkrnl 将任何未STATUS_SUCCESS返回的 NTSTATUS 解释为灾难性错误通知返回。 应该没有正确的功能路径来返回除此函数成功之外的任何内容,因为它应该是假定提供的句柄是已创建且尚未销毁的句柄。 如果 KMD 检测到输入错误,返回的错误代码允许 Dxgkrnl 将固定故障分配给 OS 内核而不是驱动程序崩溃。
有关详细信息,请参阅 脏位跟踪。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 11 版本 24H2 (WDDM 3.2) |
标头 | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |