次の方法で共有


WNODE_EVENT_ITEM 構造体 (wmistr.h)

WNODE_EVENT_ITEM構造体には、イベントのドライバーによって生成されたデータが含まれています。

構文

typedef struct tagWNODE_EVENT_ITEM {
  struct _WNODE_HEADER WnodeHeader;
} WNODE_EVENT_ITEM, *PWNODE_EVENT_ITEM;

メンバー

WnodeHeader

バッファー サイズ、要求に関連付けられたデータ ブロックを表す GUID、渡されるまたは返されるWNODE_XXX データに関する情報を提供するフラグなど、すべてのWNODE_XXX 構造体に共通する情報を含むWNODE_HEADER構造体を指定します。

注釈

WNODE_EVENT_ITEM構造体の WnodeHeader メンバーの後に、WnodeHeader で設定されているフラグに依存する型の構造体が続きます。 可能性としては、 WNODE_ALL_DATAWNODE_SINGLE_INSTANCEWNODE_SINGLE_ITEMなどがあります。 フラグの詳細については、「 WNODE_HEADER」を参照してください。

WNODE_EVENT_ITEM構造体で使用するWNODE_HEADER構造体のProviderId メンバーは、IoWMIDeviceObjectToProviderId を使用して初期化する必要があります。

ドライバーは、 IRP_MN_ENABLE_EVENTS 要求に応答して以前に有効にしたイベントのみを生成します。 イベントを生成するために、ドライバーは IoWMIWriteEvent を呼び出し、 WNODE_EVENT_ITEMへのポインターを渡します。 WMI は、そのイベントに登録されているすべてのデータ コンシューマーに配信するためにイベントをキューに入れます。

最適なパフォーマンスを得るには、イベントのサイズを小さくする必要があります。 ただし、イベントのデータ量がレジストリで定義されている最大サイズを超える場合、ドライバーは、WMI が関連する WNODE_EVENT_ITEMのクエリに使用する WNODE_EVENT_REFERENCEを渡すことができます。 WMI イベントの定義と生成の詳細については、「 Windows Management Instrumentation」を参照してください。

要件

要件
Header wmistr.h (Wmistr.h を含む)

こちらもご覧ください

IRP_MN_ENABLE_EVENTS

IoWMIDeviceObjectToProviderId

IoWMIWriteEvent

WNODE_ALL_DATA

WNODE_EVENT_REFERENCE

WNODE_HEADER

WNODE_SINGLE_INSTANCE

WNODE_SINGLE_ITEM