structure PERF_OBJECT_TYPE (winperf.h)
Décrit les informations de performances spécifiques à l’objet, par exemple le nombre d’instances de l’objet et le nombre de compteurs définis par l’objet.
Syntaxe
typedef struct _PERF_OBJECT_TYPE {
DWORD TotalByteLength;
DWORD DefinitionLength;
DWORD HeaderLength;
DWORD ObjectNameTitleIndex;
#if ...
DWORD ObjectNameTitle;
#else
LPWSTR ObjectNameTitle;
#endif
DWORD ObjectHelpTitleIndex;
#if ...
DWORD ObjectHelpTitle;
#else
LPWSTR ObjectHelpTitle;
#endif
DWORD DetailLevel;
DWORD NumCounters;
LONG DefaultCounter;
LONG NumInstances;
DWORD CodePage;
LARGE_INTEGER PerfTime;
LARGE_INTEGER PerfFreq;
} PERF_OBJECT_TYPE, *PPERF_OBJECT_TYPE;
Membres
TotalByteLength
Taille des données spécifiques à l’objet, en octets. Ce membre est le décalage entre le début de cette structure et la structure PERF_OBJECT_TYPE suivante, s’il en existe un.
DefinitionLength
Taille de cette structure plus la taille de tous les
structures PERF_COUNTER_DEFINITION.
Si l’objet est un objet d’instance multiple (le membre NumInstances n’est pas égal à zéro), ce membre est le décalage entre le début de cette structure et la première structure PERF_INSTANCE_DEFINITION. Sinon, cette valeur est le décalage de la PERF_COUNTER_BLOCK.
HeaderLength
Taille de cette structure, en octets. Ce membre est le décalage entre le début de cette structure et la première structure PERF_COUNTER_DEFINITION.
ObjectNameTitleIndex
Index du nom de l’objet dans la base de données de titre. Pour plus d’informations sur l’utilisation de l’index pour récupérer le nom de l’objet, consultez Récupération des noms de compteurs et du texte d’aide.
Les fournisseurs spécifient la valeur d’index dans leur fichier d’initialisation. Pour plus d’informations, consultez Ajout de noms de compteurs et de descriptions au Registre.
ObjectNameTitle
Réservé.
ObjectHelpTitleIndex
Indexez le texte d’aide de l’objet dans la base de données de titre. Pour plus d’informations sur l’utilisation de l’index pour récupérer le texte d’aide de l’objet, consultez Récupération des noms de compteurs et du texte d’aide.
Les fournisseurs spécifient la valeur d’index dans leur fichier d’initialisation. Pour plus d’informations, consultez Ajout de noms de compteurs et de descriptions au Registre.
ObjectHelpTitle
Réservé.
DetailLevel
Niveau de détail. Les consommateurs utilisent cette valeur pour contrôler la complexité de l’affichage. Cette valeur est le niveau de détail minimal de tous les compteurs d’un objet donné. Ce membre peut être l’une des valeurs suivantes.
NumCounters
Nombre de blocs PERF_COUNTER_DEFINITION retournés par l’objet.
DefaultCounter
Index du nom du compteur dans la base de données de titre du compteur par défaut dont les informations doivent être affichées lorsque cet objet est sélectionné dans l’outil Performance. Ce membre peut être –1 pour indiquer qu’il n’y a pas de valeur par défaut.
NumInstances
Nombre d’instances d’objet pour lesquelles les compteurs sont fournis. Si l’objet peut avoir zéro ou plusieurs instances, mais qu’il n’en a pas actuellement, cette valeur doit être égale à zéro. Si l’objet ne peut pas avoir plusieurs instances, cette valeur doit être PERF_NO_INSTANCES.
CodePage
Ce membre est égal à zéro si les chaînes d’instance sont des chaînes Unicode. Dans le cas contraire, ce membre est l’identificateur de page de codes des noms d’instance. Vous pouvez utiliser la valeur de la page de codes lors de l’appel de MultiByteToWideChar pour convertir la chaîne en Unicode.
PerfTime
Horodatage généré par le fournisseur que les consommateurs utilisent lors du calcul des valeurs de compteur. Par exemple, il peut s’agir de la valeur actuelle, en nombre, du compteur de performances haute résolution.
Les fournisseurs doivent fournir cette valeur si les types de compteurs de leurs compteurs incluent l’indicateur de PERF_OBJECT_TIMER. Dans le cas contraire, les consommateurs utilisent la valeur PerfTime de PERF_DATA_BLOCK.
PerfFreq
Valeur de fréquence générée par le fournisseur que les consommateurs utilisent lors du calcul des valeurs de compteur. Par exemple, il peut s’agir de la fréquence actuelle, en nombre par seconde, du compteur de performances haute résolution.
Les fournisseurs doivent fournir cette valeur si les types de compteurs de leurs compteurs incluent l’indicateur de PERF_OBJECT_TIMER. Dans le cas contraire, les consommateurs utilisent la valeur perfFreq de PERF_DATA_BLOCK.
Remarques
Les fournisseurs utilisent cette structure pour fournir des données de performances pour les objets qu’ils prennent en charge. Les consommateurs utilisent cette structure pour consommer des données de performances pour les objets qu’ils ont interrogés.
Cette structure est suivie d’une liste de structures PERF_COUNTER_DEFINITION, une pour chaque compteur défini pour l’objet de performance. Pour plus d’informations sur la disposition du bloc de données de performances, consultez format de données de performances.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows XP [applications de bureau uniquement] |
serveur minimum pris en charge | Windows Server 2003 [applications de bureau uniquement] |
d’en-tête | winperf.h (inclure Windows.h) |