次の方法で共有


EventDefinitionType 複合型

プロバイダーが書き込むことができるイベントを定義します。

<xs:complexType name="EventDefinitionType">
    <xs:simpleContent>
        <xs:extension
            base="string"
        >
            <xs:attribute name="value"
                type="UInt32Type"
                use="required"
             />
            <xs:attribute name="level"
                type="QName"
                use="optional"
             />
            <xs:attribute name="template"
                type="token"
                use="optional"
             />
            <xs:attribute name="channel"
                type="token"
                use="optional"
             />
            <xs:attribute name="keywords"
                type="QNameList"
                use="optional"
             />
            <xs:attribute name="task"
                type="QName"
                use="optional"
             />
            <xs:attribute name="opcode"
                type="QName"
                use="optional"
             />
            <xs:attribute name="symbol"
                type="CSymbolType"
                use="optional"
             />
            <xs:attribute name="version"
                type="unsignedByte"
                use="optional"
             />
            <xs:attribute name="message"
                type="strTableRef"
                use="optional"
             />
            <xs:attribute name="notLogged"
                type="boolean"
                use="optional"
                default="false"
             />
        </xs:extension>
    </xs:simpleContent>
</xs:complexType>

属性

名前 Type Description
channel token イベントが書き込まれるチャネルを識別する識別子。 定義またはインポートしたチャネルの 1 つのチャネル ID を指定します。 チャネルでチャネル ID が指定されていない場合は、チャネルの名前を使用します。 チャネルの定義またはインポートの詳細については、 ChannelListType 複合型に関するページを参照してください。
チャネルを指定しない場合、イベントはチャネルに書き込まれません。 通常、チャネルを指定しない唯一の理由は、ETW セッションにのみイベントを書き込む場合です。 詳細については、「イベント トレース セッションの制御」を参照してください。
keywords QNameList このイベントが属するイベントのカテゴリを識別するキーワード (keyword)名のスペース区切りのリスト。 定義するキーワードのリストからキーワード (keyword)名を指定します。 キーワードの定義の詳細については、 KeywordType 複合型に関するページを参照してください。
キーワードを指定しない場合、イベント記述子にはキーワードに 0 が含まれます。
レベル QName イベントを記述するときに使用する詳細レベル。 マニフェストで定義したレベルの名前、または Windows SDK に含まれる\Include\Winmeta.xml ファイルで定義されているレベルの 1 つを指定します。 レベルの定義の詳細については、「 LevelType 複合型」を参照してください。
レベルを指定しない場合、イベント記述子には level に 0 が含まれます。
イベントが書き込まれるチャネルの種類が管理場合は、レベルを指定する必要があります。レベルは、Winmeata.xmlで定義されている次のいずれかのレベルである必要があります。
  • win:Critical
  • win:Error
  • win:Warning
  • win:Informational

message strTableRef イベントのローカライズされたメッセージ。 メッセージ文字列は、マニフェストの stringTable セクションでローカライズされた文字列を参照します。
イベントの書き込み先のチャネルの種類が管理場合は、メッセージを指定する必要があります。
notLogged boolean プロバイダーがこのイベントをログに記録するかどうかを決定します。 プロバイダーがこのイベントをログに記録する場合は true を指定します。それ以外の場合は false。 マニフェストからイベントを削除する代わりに、プロバイダーがこのイベントをログに記録しなくなったことを示すには、この属性を使用します。 マニフェストでイベントを保持すると、コンシューマーはイベントを含む古い etl ファイルをデコードできます。
Windows Server 2008 と Windows Vista: この属性は、Windows 7 バージョンの Windows SDK より前のバージョンのメッセージ コンパイラではサポートされていません。
オペコード QName タスク内の操作を識別するオペコードの名前。 マニフェストで定義したオペコードの名前、または Winmeta.xml で定義されているオペコードの 1 つを指定します。 オペコードの定義の詳細については、「 OpcodeType 複合型」を参照してください。
参照するタスクにタスク固有 (ローカル) オペコードが含まれている場合は、そのタスク固有のオペコードの 1 つ、またはプロバイダー レベルで定義されたオペコード (グローバルオペコード) を指定できます。 グローバルオペコードを指定した場合、グローバルオペコードの値をタスクのローカルオペコードと同じにすることはできません。
ローカルオペコードを参照する場合、タスク属性はローカルオペコードが属するタスクを参照する必要があります。
オペコードを指定しない場合、イベント記述子にはオペコードに 0 が含まれます。
記号 CSymbolType アプリケーションでこのイベントのイベント記述子を参照するために使用するシンボル。 メッセージ コンパイラ (MC.exe) は、 シンボルを使用して、コンパイラによって生成されるヘッダー ファイル内のイベント記述子の定数を作成します。 シンボルを指定しない場合、コンパイラによって自動的に生成されます。 イベントを書き込むには、 EventWrite 関数を呼び出すときに記述子を使用します。
タスク QName このイベントを生成するコンポーネントまたはサブコンポーネントを識別するタスクの名前。 マニフェストで定義したタスクの名前を指定します。 タスクの定義の詳細については、「 TaskType 複合型」を参照してください。
タスクを指定しない場合、イベント記述子にはタスクの 0 が含まれます。
template token このイベントに含まれるデータ項目を定義するテンプレートのテンプレート識別子。 マニフェストで定義したテンプレートの識別子を指定します。 テンプレートの定義の詳細については、「 TemplateItemType 複合型」を参照してください。
value UInt32Type イベント識別子。 識別子は、定義するイベントの一覧内で一意である必要があります。
version unsignedByte イベント定義の 1 バイトバージョン番号。

解説

EvtFormatMessage を使用してイベントのメッセージ文字列を書式設定する (またはイベント ビューアーを使用してメッセージ文字列を表示する) 場合、メッセージ文字列には挿入文字列と Win32 FormatMessage 関数がサポートする書式指定文字列を含めることができます。 挿入文字列は %n または %n!s! に制限されます。 (%1 など) ここで 、n はイベントのテンプレートで定義されているデータ項目を 1 から始まる参照です。 メッセージ文字列には、%%n 形式のパラメーター挿入文字列 (%%4 など) を含めることもできます。 メッセージに含めることができる挿入文字列の最大数は 100 です。

必要条件

要件
サポートされている最小のクライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2008 [デスクトップ アプリのみ]