ISensorClassExtension::P ostEvent-Methode (sensorsclassextension.h)
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 |