ISensorClassExtension::Initialize 方法初始化传感器类扩展对象。
语法
HRESULT Initialize(
IUnknown *pWdfDeviceUnknown,
IUnknown *pSensorDriverUnknown
);
参数
pWdfDeviceUnknown
实现 IWDFDevice 接口的驱动程序类的 IUnknown 指针。
pSensorDriverUnknown
实现 ISensorDriver 回调接口的对象的 IUnknown 指针。
返回值
此方法返回 HRESULT。 可能的值包括但不限于以下值之一。 请参阅“备注”。
| 返回代码 | 说明 |
|---|---|
| S_OK | 方法成功。 |
| E_POINTER | 参数为 NULL 或缺少 IWDFDevice 接口。 |
| HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS) | 类扩展已初始化。 |
| HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED) | 类扩展已初始化。 |
| HRESULT_FROM_WIN32(ERROR_NOT_FOUND) | 传感器的WPD_OBJECT_ID无效。 |
言论
首先,通过调用 COM CoCreateInstance 方法创建传感器类扩展,然后调用 Initialize。 我们建议在 IPnpCallbackHardware::OnPrepareHardware中由 UMDF 调用时执行这些初始化步骤。 初始化返回后,驱动程序必须准备好从传感器类扩展接收回调。 传感器类扩展在初始化期间调用 ISensorDriver::OnGetSupportedSensorObjects。 驱动程序必须准备好在调用 Initialize 之前返回所有必需属性和数据字段的值。
由于类扩展在初始化期间调用驱动程序,因此此方法还可以返回驱动程序从 ISensorDriver::OnGetSupportedSensorObjects返回的 HRESULT。
要求
| 要求 | 价值 |
|---|---|
| 目标平台 | 窗户 |
| 标头 | sensorsclassextension.h |
| 库 | SensorsClassExtension.lib |