ISensorClassExtension::Initialize 메서드(sensorsclassextension.h)
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에서 호출할 때 이러한 초기화 단계를 수행하는 것이 좋습니다. Initialize가 반환되면 드라이버는 센서 클래스 확장에서 콜백을 받을 준비가 되어 있어야 합니다. 센서 클래스 확장은 초기화 중에 ISensorDriver::OnGetSupportedSensorObjects를 호출합니다 . 드라이버는 Initialize를 호출하기 전에 모든 필수 속성 및 데이터 필드에 대한 값을 반환할 준비가 되어 있어야 합니다.
클래스 확장은 초기화 중에 드라이버를 호출하므로 이 메서드는 드라이버가 ISensorDriver::OnGetSupportedSensorObjects에서 반환하는 HRESULT를 반환할 수도 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | sensorsclassextension.h |
라이브러리 | SensorsClassExtension.lib |