Freigeben über


ISensorClassExtension::Initialize-Methode (sensorsclassextension.h)

Die ISensorClassExtension::Initialize Methode initialisiert das Erweiterungsobjekt der Sensorklasse.

Syntax

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

Parameter

pWdfDeviceUnknown

IUnknown-Zeiger für die Treiberklasse, die die IWDFDevice-Schnittstelle implementiert.

pSensorDriverUnknown

IUnknown-Zeiger für das Objekt, das die ISensorDriver-Rückrufschnittstelle implementiert.

Rückgabewert

Diese Methode gibt ein HRESULT zurück. Mögliche Werte sind, aber nicht beschränkt auf einen der folgenden Werte. Siehe Anmerkungen.

Rückgabecode Beschreibung
S_OK Die Methode war erfolgreich.
E_POINTER Das Argument war NULL oder die IWDFDevice- Schnittstelle fehlt..
HRESULT_FROM_WIN32(ERROR_ALREADY_EXISTS) Die Klassenerweiterung wurde bereits initialisiert.
HRESULT_FROM_WIN32(ERROR_ALREADY_INITIALIZED) Die Klassenerweiterung wurde bereits initialisiert.
HRESULT_FROM_WIN32(ERROR_NOT_FOUND) Die WPD_OBJECT_ID für den Sensor ist ungültig.

Bemerkungen

Erstellen Sie zunächst die Sensorklassenerweiterung, indem Sie die COM CoCreateInstance-Methode aufrufen und dann Initialize aufrufen. Es wird empfohlen, diese Initialisierungsschritte auszuführen, wenn sie von UMDF in IPnpCallbackHardware::OnPrepareHardwareaufgerufen werden. Nach der Initialisierung muss der Treiber bereit sein, Rückrufe aus der Sensorklassenerweiterung zu empfangen. Die Sensorklassenerweiterung ruft ISensorDriver::OnGetSupportedSensorObjects während der Initialisierung auf. Ihr Treiber muss bereit sein, Werte für alle erforderlichen Eigenschaften und Datenfelder zurückzugeben, bevor initialize aufgerufen wird.

Da die Klassenerweiterung den Treiber während der Initialisierung aufruft, kann diese Methode auch HRESULTs zurückgeben, die Ihr Treiber von ISensorDriver::OnGetSupportedSensorObjectszurückgibt.

Anforderungen

Anforderung Wert
Zielplattform- Fenster
Header- sensorsclassextension.h
Library SensorsClassExtension.lib

Siehe auch

ISensorClassExtension