Поделиться через


Метод ISensorClassExtension::Initialize (sensorclassextension.h)

Метод ISensorClassExtension::Initialize инициализирует объект расширения класса датчика.

Синтаксис

HRESULT Initialize(
  IUnknown *pWdfDeviceUnknown,
  IUnknown *pSensorDriverUnknown
);

Параметры

pWdfDeviceUnknown

Указатель IUnknown для класса драйвера, реализующего интерфейс IWDFDevice.

pSensorDriverUnknown

Указатель IUnknown для объекта, реализующего интерфейс обратного вызова ISensorDriver.

Возвращаемое значение

Этот метод возвращает 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. Мы рекомендуем выполнить эти шаги инициализации при вызове UMDF в IPnpCallbackHardware::OnPrepareHardware. После возврата инициализации драйвер должен быть готов к получению обратных вызовов из расширения класса датчика. Расширение класса датчика вызывает ISensorDriver::OnGetSupportedSensorObjects во время инициализации. Драйвер должен быть готов возвращать значения для всех обязательных свойств и полей данных перед вызовом Initialize.

Так как расширение класса вызывает драйвер во время инициализации, этот метод также может возвращать HRESULTs, возвращаемые драйвером из ISensorDriver::OnGetSupportedSensorObjects.

Требования

Требование Ценность
целевая платформа Виндоус
заголовка sensorclassextension.h
библиотеки SensorClassExtension.lib

См. также

ISensorClassExtension