NDK_FN_CLOSE_OBJECT回调函数 (ndkpi.h)

NdkCloseObjectNDK_FN_CLOSE_OBJECT) 函数启动对 NDK 对象的关闭请求。

语法

NDK_FN_CLOSE_OBJECT NdkFnCloseObject;

NTSTATUS NdkFnCloseObject(
  [in]           NDK_OBJECT_HEADER *pNdkObject,
  [in]           NDK_FN_CLOSE_COMPLETION CloseCompletion,
  [in, optional] PVOID RequestContext
)
{...}

参数

[in] pNdkObject

指向要关闭的对象标头(NDK_OBJECT_HEADER)的指针。

[in] CloseCompletion

指向 NdkCloseCompletion 关闭完成回调函数(NDK_FN_CLOSE_COMPLETION)的指针。

[in, optional] RequestContext

要传回 CloseCompletion 参数中指定的 NdkCloseCompletion 函数的 NDK 提供程序的上下文值。

返回值

NdkCloseObject 函数返回以下 NTSTATUS 代码之一。

返回代码 描述
STATUS_SUCCESS
NDK 对象已关闭。 提供程序不会调用 NdkCloseCompletion 函数。
STATUS_PENDING
请求挂起,提供程序将调用 NdkCloseCompletion 函数以异步方式完成作。 已成功启动关闭请求,但可能尚未完成。
其他状态代码
发生错误。

言论

每种 NDK 对象的函数调度表包括 NDK_FN_CLOSE_OBJECT 函数指针。 关闭请求是异步的。 启动关闭请求后,NDK 使用者不得访问该对象。

NDK 提供程序必须确保 NdkCloseCompletion 函数(NDK_FN_CLOSE_COMPLETION)是为关闭的对象调用的最后一个回调。 在提供程序调用 NdkCloseCompletion 函数之前,提供程序必须确保完成所有未完成的异步请求并返回所有正在进行的回调,并阻止进一步回调。 提供程序调用 NdkCloseCompletion 函数后,提供程序不会为对象调用任何完成函数或通知回调函数。

要求

要求 价值
最低支持的客户端 NDIS 6.30 及更高版本不支持。
支持的最低服务器 Windows Server 2012
目标平台 窗户
标头 ndkpi.h (包括 Ndkpi.h)
IRQL <=DISPATCH_LEVEL

另请参阅

NDKPI 对象生存期要求

NDK_CONNECTOR_DISPATCH

NDK_CQ_DISPATCH

NDK_FN_CLOSE_COMPLETION

NDK_OBJECT_HEADER