次の方法で共有


KsGenerateDataEvent 関数 (ks.h)

KsGenerateDataEvent 関数は、イベント エントリ構造とコールバック データを指定すると、標準イベント通知の 1 つを生成します。 これにより、デバイスはイベント通知を生成する必要があるタイミングを判断できますが、このヘルパー関数を使用して実際の通知を実行できます。

構文

KSDDKAPI NTSTATUS KsGenerateDataEvent(
  [in] PKSEVENT_ENTRY EventEntry,
  [in] ULONG          DataSize,
  [in] PVOID          Data
);

パラメーター

[in] EventEntry

イベント データを参照するイベント エントリ構造を指定します。 この情報は、実行する通知の種類を決定するために使用されます。 通知の種類が定義済みの標準の 1 つでない場合は、エラーが返されます。 単一の非回復イベントの場合、関数から返された場合、このエントリは無効になります。 したがって、イベントの一覧を列挙するコードは、このイベントを関数に渡す前に、リスト内の次のイベントを取得するために事前作成する必要があります。

[in] DataSize

渡される Data パラメーターのサイズをバイト単位で指定します。

[in] Data

クライアント コールバックに渡されるデータを指します。 このデータは、イベントが有効になったときに設定された事前割り当て済みバッファー スロットのいずれかにコピーされます。 データのサイズは、最初に割り当てられたサイズよりも小さくする必要があります。または、イベントが失敗します。

戻り値

KsGenerateDataEvent 関数は、成功した場合、または失敗した場合は例外またはメモリ エラーを返すSTATUS_SUCCESSを返します。

注釈

この関数が呼び出される前に、イベント リスト ロックが取得されていることを前提としています。 この関数は、イベント エントリの RemoveHandler を呼び出す可能性があります。 したがって、ロックの IRQ レベルより高いレベルで関数を呼び出す必要があります。または、 Remove 関数は、このような IRQ レベルで呼び出されるを処理できる必要があります。

この関数は、コールバックを介してクライアントにデータを返すイベント専用です。

要件

要件
対象プラットフォーム ユニバーサル
Header ks.h (Ks.h を含む)
Library Ks.lib

こちらもご覧ください

KSBUFFER_ITEM