ISensorClassExtension::P ostEvent メソッド (sensorsclassextension.h)
ISensorClassExtension::P ostEvent メソッドは、センサー クラス拡張機能で 1 つ以上のドライバー イベントを発生させます。
構文
HRESULT PostEvent(
LPWSTR pwszSensorID,
IPortableDeviceValuesCollection *pEventCollection
);
パラメーター
pwszSensorID
ドライバーがイベントを発生させているセンサーの ID を含む LPWSTR。
pEventCollection
ポストされるイベントとその関連データの一覧を含む IPortableDeviceValuesCollection インターフェイスへのポインター。
戻り値
このメソッドは HRESULT を返します。 指定できる値には、次のいずれかの値が含まれますが、これらに限定されません。
リターン コード | 形容 |
---|---|
S_OK | メソッドは成功しました。 |
S_FALSE | メソッドは成功しましたが、現在、イベントにサブスクライブされているクライアント プログラムはありません。 クライアントがサブスクライブされていない場合は、イベントを投稿しないでください。 |
E_INVALIDARG | イベント コレクションが空でした。 |
E_POINTER | 必要なポインター引数が NULL でした。 |
HRESULT_FROM_WIN32(ERROR_CAN_NOT_COMPLETE) | クラス拡張機能が初期化されていません。 |
HRESULT_FROM_WIN32(ERROR_INTERNAL_DB_CORRUPTION | シリアル化エラーが発生しました。 |
HRESULT_FROM_WIN32(ERROR_OBJECT_NOT_FOUND) | 現在、イベントにサブスクライブされているクライアント プログラムはありません。 クライアントがサブスクライブされていない場合は、イベントを投稿しないでください。 |
備考
センサー クラス拡張機能は、これらのイベントを Sensor API と Location API に転送し、クライアント プログラムでイベントを発生させます。
pEventCollection 渡されるコレクションには、1 つ以上のイベントを含めることができます。 IPortableDeviceValues オブジェクトを 1 つ 使用して、各イベントとその関連データを表します。 イベントとデータ型のプラットフォーム定義 PROPERTYKEYは sensors.h で定義されます。
このメソッドによって返される各 IPortableDeviceValues オブジェクトには、SENSOR_CATEGORY_ALLで説明されているように、タイムスタンプが含まれている必要があります。
センサー クラス拡張機能は、このメソッドによって提供される PROPVARIANT 構造体を解放する役割を担います。
イベントの種類を指定するには、適切な GUID 値と共にSENSOR_EVENT_PARAMETER_EVENT_ID PROPERTYKEY を使用します。
イベント スレッドを作成するクラスの例については、「センサー イベントの発生
IPortableDeviceValues と IPortableDeviceValuesCollection については、Windows ポータブル デバイスに関する記事を参照してください。
必要条件
要件 | 価値 |
---|---|
ターゲット プラットフォーム の | ウィンドウズ |
ヘッダー | sensorsclassextension.h |
ライブラリ | SensorsClassExtension.lib |
関連項目
ISensorClassExtension の