Freigeben über


Definieren von Namens-/Wertzuordnungen

Ein Anbieter kann eine Liste von Name/Wert-Paaren definieren, die Consumer verwenden, um ganzzahlige Werte Zeichenfolgen zuzuordnen. Die Namen-Wert-Paare können ganzzahlige Werte Zeichenfolgen oder Bitwerte Zeichenfolgen zuordnen. Jeder Wert entspricht einem Zeichenfolgenwert. Verwenden Sie Zuordnungen für ganzzahlige Datenelemente, die Enumerationswerte enthalten.

Consumer können die Wertzuordnung verwenden, um die Zeichenfolge abzurufen, die einem Wert zugeordnet ist, und sie anstelle des Ganzzahl- oder Bitwerts anzuzeigen. Verwenden Sie zum Definieren einer ganzzahligen Wertzuordnung die ValueMap- und Kartenelemente. Verwenden Sie zum Definieren einer Bitwertzuordnung die Bitmap- und Kartenelemente.

Das folgende Beispiel zeigt, wie Sie eine Wertzuordnung und eine Bitmap definieren. Sie müssen das Namensattribut der Zuordnung angeben. Für jedes Name/Wert-Paar müssen Sie das Wert- und Nachrichtenattribut angeben.

<instrumentationManifest
    xmlns="http://schemas.microsoft.com/win/2004/08/events" 
    xmlns:win="http://manifests.microsoft.com/win/2004/08/windows/events"
    xmlns:xs="http://www.w3.org/2001/XMLSchema"
    >

    <instrumentation>
        <events>
            <provider name="Microsoft-Windows-SampleProvider"
                guid="{1db28f2e-8f80-4027-8c5a-a11f7f10f62d}"
                symbol="PROVIDER_GUID"
                resourceFileName="<path to the exe or dll that contains the metadata resources>"
                messageFileName="<path to the exe or dll that contains the string resources>"
                message="$(string.Provider.Name)">

                . . .

                <maps>
                    <valueMap name="TransferType">
                        <map value="1" message="$(string.TransferType.Download)"/>
                        <map value="2" message="$(string.TransferType.Upload)"/>
                        <map value="3" message="$(string.TransferType.UploadReply)"/>
                    </valueMap>
                    <bitMap name="DaysOfTheWeek">
                        <map value="0x1" message="$(string.DaysOfTheWeek.Sunday)"/>
                        <map value="0x2" message="$(string.DaysOfTheWeek.Monday)"/>
                        <map value="0x4" message="$(string.DaysOfTheWeek.Tuesday)"/>
                        <map value="0x8" message="$(string.DaysOfTheWeek.Wednesday)"/>
                        <map value="0x10" message="$(string.DaysOfTheWeek.Thursday)"/>
                        <map value="0x20" message="$(string.DaysOfTheWeek.Friday)"/>
                        <map value="0x40" message="$(string.DaysOfTheWeek.Saturday)"/>
                    </bitMap>
                </maps>

                . . .

            </provider>
        </events>
    </instrumentation>

    <localization>
        <resources culture="en-US">
            <stringTable>
                <string id="Provider.Name" value="Sample Provider"/>
                <string id="TransferType.Download" value="Download"/>
                <string id="TransferType.Upload" value="Upload"/>
                <string id="TransferType.UploadReply" value="Upload-reply"/>
                <string id="DaysOfTheWeek.Sunday" value="Sunday"/>
                <string id="DaysOfTheWeek.Monday" value="Monday"/>
                <string id="DaysOfTheWeek.Tuesday" value="Tuesday"/>
                <string id="DaysOfTheWeek.Wednesday" value="Wednesday"/>
                <string id="DaysOfTheWeek.Thursday" value="Thursday"/>
                <string id="DaysOfTheWeek.Friday" value="Friday"/>
                <string id="DaysOfTheWeek.Saturday" value="Saturday"/>
            </stringTable>
        </resources>
    </localization>

</instrumentationManifest>