ISensorClassExtension::Uninitialize 方法取消初始化传感器类扩展对象。
语法
HRESULT Uninitialize();
返回值
此方法返回 HRESULT。 可能的值包括但不限于以下值之一。
| 返回代码 | 描述 |
|---|---|
| S_OK | 方法成功。 |
| HRESULT_FROM_WIN32(ERROR_CAN_NOT_COMPLETE) | 类扩展未初始化。 |
言论
通常情况下,在驱动程序卸载时,你将取消初始化传感器类扩展。 建议在 IPnpCallbackHardware::OnReleaseHardware中由 UMDF 调用时执行非初始化步骤。
如果出于某种原因必须释放和取消初始化传感器类扩展,则必须在调用 ISensorClassExtension::Uninitialize之前调用 IWDFIoQueue::D rainSynchronously。 可以通过在 WDF 设备对象上调用 IWDFDevice::GetDefaultIoQueue 来检索队列接口。 然后,调用 IWDFIoQueue::D rainSynchronously 来处理所有排队的请求。 调用 IWDFIoQueue::D rainSynchronously 阻止新请求的队列,因此在重新初始化类扩展后,必须调用 IWDFIoQueue::Start。
要求
| 要求 | 价值 |
|---|---|
| 目标平台 | 窗户 |
| 标头 | sensorsclassextension.h |
| 库 | SensorsClassExtension.lib |