provider Complex Type
Defines a provider and the counters that it provides.
<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>
Child elements
Element | Type | Description |
---|---|---|
counterSet | man:counterSet | Identifies the counter set that contains one or more logically related counters. |
Attributes
Name | Type | Description | |||||
---|---|---|---|---|---|---|---|
applicationIdentity | xs:string | The name of the binary file that contains the localized resource strings, either an .exe or .dll file (do not include the path to the binary). The Lodctr.exe utility uses the path from the optional [path] parameter to search for the binary file. For example, lodctr [/m:manifest [path]]. If you do not include the [path] parameter, Lodctr.exe searches the folder that contains the manifest. |
|||||
callback | This attribute indicates that you want to receive notification when a consumer performs certain actions. If you include this attribute, the CTRPP tool uses the alternate CounterInitialize function signature, which you use to pass in the name of your function that implements the ControlCallback callback function. As an alternative to specifying this attribute, you can use the -NotificationCallbackCTRPP argument. Windows Vista: The only valid value for this attribute is "custom". The CTRPP utility generates the template for a ControlCallback callback function. The template is included in the .c file that CTRPP generated. |
||||||
providerGuid | man:GUIDType | String GUID that uniquely identifies the provider in the manifest. The GUID must be unique within the manifest. You need to provide a new GUID only when the version of the application changes (if you support side-by-side installations). |
|||||
providerName | xs:string | The name that is used to create the WMI Win32_PerfRawData class name. If you do not specify a name, "Counters" is used as the name of the class. |
|||||
providerType | Identifies whether the provider is a user-mode provider, kernel-mode provider, or driver provider. Possible values are as follows.
|
||||||
resourceBase | man:UInt32Type | Defines the starting resource index value that CTRPP uses to generate the resource identifiers. |
|||||
symbol | man:CSymbolType | A symbolic name that identifies the provider. The CTRPP tool creates a HANDLE variable that you can use when calling functions that require a handle to the provider (for example, PerfSetULongCounterValue). The symbolic name is the name of the variable. If you include the -prefix argument when calling CTRPP, the prefix string is added to the beginning of the symbolic name. |
Requirements
Requirement | Value |
---|---|
Minimum supported client |
Windows Vista [desktop apps only] |
Minimum supported server |
Windows Server 2008 [desktop apps only] |