Partager via


type complexe du fournisseur

Définit un fournisseur et les compteurs qu’il fournit.

<xs:complexType name="provider">
    <xs:choice
        minOccurs="0"
        maxOccurs="unbounded"
    >
        <xs:element name="counterSet"
            type="man:counterSet"
        >
            <xs:key name="uniqueCounterID">
                <xs:selector
                    xpath="./man:counter"
                 />
                <xs:field
                    xpath="@id"
                 />
            </xs:key>
            <xs:unique name="uniqueCounterName">
                <xs:selector
                    xpath="./man:counter"
                 />
                <xs:field
                    xpath="@name"
                 />
            </xs:unique>
            <xs:keyref name="existBaseID">
                <xs:selector
                    xpath="./man:counter"
                 />
                <xs:field
                    xpath="@baseID"
                 />
            </xs:keyref>
            <xs:keyref name="existPerfTimeID">
                <xs:selector
                    xpath="./man:counter"
                 />
                <xs:field
                    xpath="@perfTimeID"
                 />
            </xs:keyref>
            <xs:keyref name="existPerfFreqID">
                <xs:selector
                    xpath="./man:counter"
                 />
                <xs:field
                    xpath="@perfFreqID"
                 />
            </xs:keyref>
            <xs:keyref name="existMultiCounterID">
                <xs:selector
                    xpath="./man:counter"
                 />
                <xs:field
                    xpath="@multiCounterID"
                 />
            </xs:keyref>
            <xs:key name="uniqueStructNames">
                <xs:selector
                    xpath="./man:structs/man:struct"
                 />
                <xs:field
                    xpath="@name"
                 />
            </xs:key>
            <xs:keyref name="existCounterName">
                <xs:selector
                    xpath="./man:counter"
                 />
                <xs:field
                    xpath="@struct"
                 />
            </xs:keyref>
        </xs:element>
    </xs:choice>
    <xs:attribute name="symbol"
        type="man:CSymbolType"
        use="optional"
     />
    <xs:attribute name="callback"
        use="optional"
        default="default"
    >
        <xs:simpleType>
            <xs:restriction
                base="xs:string"
            >
                <xs:enumeration
                    value="custom"
                 />
                <xs:enumeration
                    value="default"
                 />
            </xs:restriction>
        </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="providerGuid"
        type="man:GUIDType"
        use="required"
     />
    <xs:attribute name="applicationIdentity"
        type="xs:string"
        use="required"
     />
    <xs:attribute name="providerType"
        use="optional"
        default="userMode"
    >
        <xs:simpleType>
            <xs:restriction
                base="xs:string"
            >
                <xs:enumeration
                    value="userMode"
                 />
                <xs:enumeration
                    value="kernelMode"
                 />
            </xs:restriction>
        </xs:simpleType>
    </xs:attribute>
    <xs:attribute name="providerName"
        type="xs:string"
        use="optional"
        default="Counters"
     />
    <xs:attribute name="resourceBase"
        type="man:UInt32Type"
        use="optional"
     />
</xs:complexType>

Éléments enfants

Élément Type Description
counterSet man:counterSet Identifie le jeu de compteurs qui contient un ou plusieurs compteurs liés logiquement.

Attributs

Nom Type Description
applicationIdentity xs:string Nom du fichier binaire qui contient les chaînes de ressources localisées, un fichier .exe ou .dll (n’incluez pas le chemin d’accès au fichier binaire).
L’utilitaire Lodctr.exe utilise le chemin d’accès du paramètre facultatif [path] pour rechercher le fichier binaire. Par exemple, lodctr [/m:manifest [path]]. Si vous n’incluez pas le paramètre [path], Lodctr.exe recherche dans le dossier qui contient le manifeste.
rappel Cet attribut indique que vous souhaitez recevoir une notification lorsqu’un consommateur effectue certaines actions.
Si vous incluez cet attribut, l’outil CTRPP utilise l’autre signature de fonction CounterInitialize , que vous utilisez pour transmettre le nom de votre fonction qui implémente la fonction de rappel ControlCallback .
Au lieu de spécifier cet attribut, vous pouvez utiliser l’argument CTRPP-NotificationCallback.
Windows Vista : La seule valeur valide pour cet attribut est « custom ». L’utilitaire CTRPP génère le modèle pour une fonction de rappel ControlCallback. Le modèle est inclus dans le fichier .c généré par CTRPP.

providerGuid man:GUIDType GUID de chaîne qui identifie de manière unique le fournisseur dans le manifeste. Le GUID doit être unique dans le manifeste.
Vous devez fournir un nouveau GUID uniquement lorsque la version de l’application change (si vous prenez en charge les installations côte à côte).
providerName xs:string Nom utilisé pour créer le nom de classe WMI Win32_PerfRawData. Si vous ne spécifiez pas de nom, « Compteurs » est utilisé comme nom de la classe .
providerType Identifie si le fournisseur est un fournisseur en mode utilisateur, un fournisseur en mode noyau ou un fournisseur de pilotes. Les valeurs possibles sont les suivantes.
Terme Description
Usermode
Spécifiez ce mode pour un composant en mode utilisateur tel qu’une application, une DLL ou un pilote en mode utilisateur. Les extensions classiques pour les composants en mode utilisateur sont .exe ou .dll. Il s’agit de la valeur par défaut.
Noyau
Spécifiez ce mode pour un composant en mode noyau, tel qu’un pilote WDM ou WDF. L’extension classique pour les composants en mode noyau est .sys.
Windows Vista et Windows Server 2008 : Cette valeur n’est pas prise en charge tant que Windows 7 et Windows Server 2008 R2.

resourceBase man:UInt32Type

Définit la valeur d’index de ressource de départ que CTRPP utilise pour générer les identificateurs de ressource.

symbole man:CSymbolType

Nom symbolique qui identifie le fournisseur. L’outil CTRPP crée une variable HANDLE que vous pouvez utiliser lors de l’appel de fonctions qui nécessitent un handle au fournisseur (par exemple, PerfSetULongCounterValue). Le nom symbolique est le nom de la variable.

Si vous incluez l’argument -prefix lors de l’appel de CTRPP, la chaîne de préfixe est ajoutée au début du nom symbolique.

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2008 [applications de bureau uniquement]