Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die ISensorClassExtension::P ostEvent- Methode löst ein oder mehrere Treiberereignisse in der Sensorklassenerweiterung aus.
Syntax
HRESULT PostEvent(
LPWSTR pwszSensorID,
IPortableDeviceValuesCollection *pEventCollection
);
Parameter
pwszSensorID
LPWSTR, das die ID für den Sensor enthält, für den der Treiber das Ereignis auslöst.
pEventCollection
Zeigen Sie auf eine IPortableDeviceValuesCollection-Schnittstelle, die die Liste der geposteten Ereignisse und deren zugeordneten Daten enthält.
Rückgabewert
Diese Methode gibt ein HRESULT zurück. Mögliche Werte sind, aber nicht beschränkt auf einen der folgenden Werte.
Rückgabecode | Beschreibung |
---|---|
S_OK | Die Methode war erfolgreich. |
S_FALSE | Die Methode war erfolgreich, aber derzeit werden keine Clientprogramme für Ereignisse abonniert. Veröffentlichen Sie keine Ereignisse, wenn keine Clients abonniert werden. |
E_INVALIDARG | Die Ereignissammlung war leer. |
E_POINTER | Ein erforderliches Zeigerargument war NULL. |
HRESULT_FROM_WIN32(ERROR_CAN_NOT_COMPLETE) | Die Klassenerweiterung wird nicht initialisiert. |
HRESULT_FROM_WIN32(ERROR_INTERNAL_DB_CORRUPTION | Ein Serialisierungsfehler ist aufgetreten. |
HRESULT_FROM_WIN32(ERROR_OBJECT_NOT_FOUND) | Derzeit sind keine Clientprogramme für Ereignisse abonniert. Veröffentlichen Sie keine Ereignisse, wenn keine Clients abonniert werden. |
Bemerkungen
Die Sensorklassenerweiterung leitet diese Ereignisse an die Sensor-API und die Standort-API weiter, die wiederum Ereignisse in Clientprogrammen auslöst.
Die über pEventCollection übergebene Auflistung kann ein oder mehrere Ereignisse enthalten. Stellen Sie jedes Ereignis und die zugehörigen Daten mithilfe eines IPortableDeviceValues-Objekts dar. Plattformdefinierte PROPERTYKEY-für Ereignisse und Datentypen werden in sensors.h definiert.
Jedes IPortableDeviceValues- von dieser Methode zurückgegebene Objekt muss einen Zeitstempel enthalten, wie in SENSOR_CATEGORY_ALLbeschrieben.
Die Sensorklassenerweiterung ist dafür verantwortlich, alle von dieser Methode bereitgestellten PROPVARIANT Strukturen frei zu geben.
Verwenden Sie zum Angeben des Ereignistyps die SENSOR_EVENT_PARAMETER_EVENT_ID PROPERTYKEY- mit dem entsprechenden GUID- Wert.
Ein Beispiel für eine Klasse, die einen Ereignisthread erstellt, finden Sie unter Auslösen von Sensorereignissen
IPortableDeviceValues und IPortableDeviceValuesCollection- werden auf tragbaren Windows-Geräten dokumentiert.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform- | Fenster |
Header- | sensorsclassextension.h |
Library | SensorsClassExtension.lib |