PerformanceCounterCategory.Create Methode

Definition

Registriert eine benutzerdefinierte Leistungsindikatorkategorie und einen oder mehrere Zähler mit dem System.

Überlädt

Name Beschreibung
Create(String, String, String, String)
Veraltet.
Veraltet.
Veraltet.

Registriert eine benutzerdefinierte Leistungsindikatorkategorie, die einen einzelnen Leistungsindikator NumberOfItems32 auf dem lokalen Computer enthält.

Create(String, String, PerformanceCounterCategoryType, String, String)

Registriert die Kategorie des benutzerdefinierten Leistungsindikators, die einen einzelnen Leistungsindikator NumberOfItems32 auf dem lokalen Computer enthält.

Create(String, String, CounterCreationDataCollection)
Veraltet.
Veraltet.
Veraltet.

Registriert die Kategorie des benutzerdefinierten Leistungsindikators, die die angegebenen Leistungsindikatoren auf dem lokalen Computer enthält.

Create(String, String, PerformanceCounterCategoryType, CounterCreationDataCollection)

Registriert die Kategorie des benutzerdefinierten Leistungsindikators, die die angegebenen Leistungsindikatoren auf dem lokalen Computer enthält.

Create(String, String, String, String)

Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs

Achtung

This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead.

Achtung

This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead. http://go.microsoft.com/fwlink/?linkid=14202

Achtung

This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead. https://go.microsoft.com/fwlink/?linkid=14202

Registriert eine benutzerdefinierte Leistungsindikatorkategorie, die einen einzelnen Leistungsindikator NumberOfItems32 auf dem lokalen Computer enthält.

public:
 static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::String ^ counterName, System::String ^ counterHelp);
[System.Obsolete("This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead.")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, string counterName, string counterHelp);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, string counterName, string counterHelp);
[System.Obsolete("This method has been deprecated.  Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, string counterName, string counterHelp);
[System.Obsolete("This method has been deprecated.  Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead.  https://go.microsoft.com/fwlink/?linkid=14202")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, string counterName, string counterHelp);
[<System.Obsolete("This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead.")>]
static member Create : string * string * string * string -> System.Diagnostics.PerformanceCounterCategory
static member Create : string * string * string * string -> System.Diagnostics.PerformanceCounterCategory
[<System.Obsolete("This method has been deprecated.  Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead.  http://go.microsoft.com/fwlink/?linkid=14202")>]
static member Create : string * string * string * string -> System.Diagnostics.PerformanceCounterCategory
[<System.Obsolete("This method has been deprecated.  Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead.  https://go.microsoft.com/fwlink/?linkid=14202")>]
static member Create : string * string * string * string -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, counterName As String, counterHelp As String) As PerformanceCounterCategory

Parameter

categoryName
String

Der Name der benutzerdefinierten Leistungsindikatorkategorie, die beim System erstellt und registriert werden soll.

categoryHelp
String

Eine Beschreibung der benutzerdefinierten Kategorie.

counterName
String

Der Name eines neuen Zählers vom Typ NumberOfItems32, der als Teil der neuen Kategorie erstellt werden soll.

counterHelp
String

Eine Beschreibung des Leistungsindikators, der der neuen benutzerdefinierten Kategorie zugeordnet ist.

Gibt zurück

Ein PerformanceCounterCategory Objekt, das der neuen Systemkategorie oder dem Leistungsobjekt zugeordnet ist.

Attribute

Ausnahmen

counterName ist null oder ist eine leere Zeichenfolge ("").

-oder-

Der Zähler, der durch counterName bereits angegeben wird.

-oder-

counterName weist ungültige Syntax auf. Sie kann umgekehrte Schrägstriche ("\") enthalten oder eine Länge von mehr als 80 Zeichen aufweisen.

Die Kategorie ist bereits auf dem lokalen Computer vorhanden.

categoryName ist null.

-oder-

counterHelp ist null.

Fehler beim Aufruf einer zugrunde liegenden System-API.

Code, der ohne Administratorrechte ausgeführt wird, hat versucht, einen Leistungsindikator zu lesen.

Hinweise

Note

Um Leistungsindikatoren aus einer nicht interaktiven Anmeldesitzung in Windows Vista und höher, Windows XP Professional x64 Edition oder Windows Server 2003 zu lesen, müssen Sie entweder Mitglied der Gruppe "Benutzer der Leistungsüberwachung" sein oder über Administratorrechte verfügen.

Um zu vermeiden, dass Sie Ihre Berechtigungen für den Zugriff auf Leistungsindikatoren in Windows Vista und höher erhöhen müssen, fügen Sie sich der Gruppe "Benutzer der Leistungsüberwachung" hinzu.

In Windows Vista und höher bestimmt die Benutzerkontensteuerung (User Account Control, UAC) die Berechtigungen eines Benutzers. Wenn Sie Mitglied der Gruppe "Integrierte Administratoren" sind, werden Ihnen zwei Laufzeitzugriffstoken zugewiesen: ein Standardbenutzerzugriffstoken und ein Administratorzugriffstoken. Standardmäßig befinden Sie sich in der Standardbenutzerrolle. Um den Code auszuführen, der auf Leistungsindikatoren zugreift, müssen Sie zuerst Ihre Berechtigungen vom Standardbenutzer zum Administrator erhöhen. Sie können dies tun, wenn Sie eine Anwendung starten, indem Sie mit der rechten Maustaste auf das Anwendungssymbol klicken und angeben, dass Sie als Administrator ausführen möchten.

Weitere Informationen

Gilt für:

Create(String, String, PerformanceCounterCategoryType, String, String)

Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs

Registriert die Kategorie des benutzerdefinierten Leistungsindikators, die einen einzelnen Leistungsindikator NumberOfItems32 auf dem lokalen Computer enthält.

public:
 static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::Diagnostics::PerformanceCounterCategoryType categoryType, System::String ^ counterName, System::String ^ counterHelp);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.PerformanceCounterCategoryType categoryType, string counterName, string counterHelp);
static member Create : string * string * System.Diagnostics.PerformanceCounterCategoryType * string * string -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, categoryType As PerformanceCounterCategoryType, counterName As String, counterHelp As String) As PerformanceCounterCategory

Parameter

categoryName
String

Der Name der benutzerdefinierten Leistungsindikatorkategorie, die beim System erstellt und registriert werden soll.

categoryHelp
String

Eine Beschreibung der benutzerdefinierten Kategorie.

categoryType
PerformanceCounterCategoryType

Einer der Werte, der PerformanceCounterCategoryType angibt, ob die Kategorie MultiInstance, , SingleInstanceoder Unknown.

counterName
String

Der Name eines neuen Indikators, der als Teil der neuen Kategorie erstellt werden soll.

counterHelp
String

Eine Beschreibung des Leistungsindikators, der der neuen benutzerdefinierten Kategorie zugeordnet ist.

Gibt zurück

Ein PerformanceCounterCategory Objekt, das der neuen Systemkategorie oder dem Leistungsobjekt zugeordnet ist.

Ausnahmen

counterName ist null oder ist eine leere Zeichenfolge ("").

-oder-

Der Zähler, der durch counterName bereits angegeben wird.

-oder-

counterName weist ungültige Syntax auf. Sie kann umgekehrte Schrägstriche ("\") enthalten oder eine Länge von mehr als 80 Zeichen aufweisen.

Die Kategorie ist bereits auf dem lokalen Computer vorhanden.

categoryName ist null.

-oder-

counterHelp ist null.

Fehler beim Aufruf einer zugrunde liegenden System-API.

Code, der ohne Administratorrechte ausgeführt wird, hat versucht, einen Leistungsindikator zu lesen.

Beispiele

Das folgende Codebeispiel zeigt die Verwendung der Create Methode. Das Beispiel zeigt, wie Sie eine benutzerdefinierte Leistungsindikatorkategorie für einzelne Instanzen erstellen.

Console.WriteLine("Creating Inventory custom counter");
if (!PerformanceCounterCategory.Exists("Inventory"))
    PerformanceCounterCategory.Create("Inventory",
        "Truck inventory",
        PerformanceCounterCategoryType.SingleInstance,
        "Trucks", "Number of trucks on hand");
Console.WriteLine("Creating Inventory custom counter")
If Not PerformanceCounterCategory.Exists("Inventory") Then
    PerformanceCounterCategory.Create("Inventory", "Truck inventory", PerformanceCounterCategoryType.SingleInstance, "Trucks", "Number of trucks on hand")
End If

Hinweise

Der categoryType Parameter gibt an, ob die Leistungsindikatorkategorie eine Instanz oder mehrere Instanzen ist. Standardmäßig ist eine Kategorie eine Instanz, wenn sie erstellt wird, und wird zu einer mehrfachen Instanz, wenn eine andere Instanz hinzugefügt wird. Kategorien werden erstellt, wenn eine Anwendung eingerichtet wird, und Instanzen werden zur Laufzeit hinzugefügt. Die PerformanceCounterCategoryType Aufzählung wird verwendet, um anzugeben, ob ein Leistungsindikator mehrere Instanzen aufweisen kann.

Leistungsindikatorkategorien, die mit .NET mit separatem gemeinsam genutztem Arbeitsspeicher installiert sind, wobei jede Leistungsindikatorkategorie über einen eigenen Arbeitsspeicher verfügt. Sie können die Größe des separaten freigegebenen Speichers angeben, indem Sie im Registrierungsschlüssel einen DWORD-Namen namens "FileMappingSize" HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<Kategorienamen>\Leistung erstellen. Der FileMappingSize-Wert wird auf die Größe des freigegebenen Arbeitsspeichers der Kategorie festgelegt. Die Standardgröße ist 131072 Dezimalzahl. Wenn der FileMappingSize-Wert nicht vorhanden ist, wird der Attributwert für das fileMappingSizeperformanceCounters in der Machine.config Datei angegebene Element verwendet, was zusätzlichen Aufwand für die Verarbeitung von Konfigurationsdateien verursacht. Sie können eine Leistungsverbesserung für den Anwendungsstart erkennen, indem Sie die Dateizuordnungsgröße in der Registrierung festlegen.

Note

Es wird dringend empfohlen, während der Installation der Anwendung neue Leistungsindikatorenkategorien zu erstellen, nicht während der Ausführung der Anwendung. Dadurch kann das Betriebssystem seine Liste der registrierten Leistungsindikatorkategorien aktualisieren. Wenn die Liste nicht aktualisiert wurde, schlägt der Versuch, die Kategorie zu verwenden, fehl.

Note

Um Leistungsindikatoren aus einer nicht interaktiven Anmeldesitzung in Windows Vista und höher, Windows XP Professional x64 Edition oder Windows Server 2003 zu lesen, müssen Sie entweder Mitglied der Gruppe "Benutzer der Leistungsüberwachung" sein oder über Administratorrechte verfügen.

Um zu vermeiden, dass Sie Ihre Berechtigungen für den Zugriff auf Leistungsindikatoren in Windows Vista und höher erhöhen müssen, fügen Sie sich der Gruppe "Benutzer der Leistungsüberwachung" hinzu.

In Windows Vista und höher bestimmt die Benutzerkontensteuerung (User Account Control, UAC) die Berechtigungen eines Benutzers. Wenn Sie Mitglied der Gruppe "Integrierte Administratoren" sind, werden Ihnen zwei Laufzeitzugriffstoken zugewiesen: ein Standardbenutzerzugriffstoken und ein Administratorzugriffstoken. Standardmäßig befinden Sie sich in der Standardbenutzerrolle. Um den Code auszuführen, der auf Leistungsindikatoren zugreift, müssen Sie zuerst Ihre Berechtigungen vom Standardbenutzer zum Administrator erhöhen. Sie können dies tun, wenn Sie eine Anwendung starten, indem Sie mit der rechten Maustaste auf das Anwendungssymbol klicken und angeben, dass Sie als Administrator ausführen möchten.

Weitere Informationen

Gilt für:

Create(String, String, CounterCreationDataCollection)

Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs

Achtung

This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead.

Achtung

This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead. http://go.microsoft.com/fwlink/?linkid=14202

Achtung

This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead. https://go.microsoft.com/fwlink/?linkid=14202

Registriert die Kategorie des benutzerdefinierten Leistungsindikators, die die angegebenen Leistungsindikatoren auf dem lokalen Computer enthält.

public:
 static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::Diagnostics::CounterCreationDataCollection ^ counterData);
[System.Obsolete("This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead.")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.CounterCreationDataCollection counterData);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.CounterCreationDataCollection counterData);
[System.Obsolete("This method has been deprecated.  Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.CounterCreationDataCollection counterData);
[System.Obsolete("This method has been deprecated.  Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead.  https://go.microsoft.com/fwlink/?linkid=14202")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.CounterCreationDataCollection counterData);
[<System.Obsolete("This overload of PerformanceCounterCategory.Create has been deprecated. Use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead.")>]
static member Create : string * string * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
static member Create : string * string * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
[<System.Obsolete("This method has been deprecated.  Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")>]
static member Create : string * string * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
[<System.Obsolete("This method has been deprecated.  Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead.  https://go.microsoft.com/fwlink/?linkid=14202")>]
static member Create : string * string * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, counterData As CounterCreationDataCollection) As PerformanceCounterCategory

Parameter

categoryName
String

Der Name der benutzerdefinierten Leistungsindikatorkategorie, die beim System erstellt und registriert werden soll.

categoryHelp
String

Eine Beschreibung der benutzerdefinierten Kategorie.

counterData
CounterCreationDataCollection

Ein CounterCreationDataCollection Wert, der die Zähler angibt, die als Teil der neuen Kategorie erstellt werden sollen.

Gibt zurück

Ein PerformanceCounterCategory Objekt, das der neuen benutzerdefinierten Kategorie oder dem Leistungsobjekt zugeordnet ist.

Attribute

Ausnahmen

Ein Zählername, der innerhalb der counterData Auflistung angegeben wird, ist null oder eine leere Zeichenfolge ("").

-oder-

Ein Indikator, der in der counterData Auflistung angegeben ist, ist bereits vorhanden.

Der categoryName Parameter ist null.

Die Kategorie ist bereits auf dem lokalen Computer vorhanden.

-oder-

Das Layout der counterData Auflistung ist für Basiszähler falsch. Ein Zähler vom Typ AverageCount64, AverageTimer32, CounterMultiTimer, CounterMultiTimerInverse, CounterMultiTimer100Ns, CounterMultiTimer100NsInverse, oder RawFractionSampleFractionSampleCounter muss unmittelbar auf einen der Basiszählertypen (AverageBase, MultiBase, , RawBaseoder SampleBase) folgen.

Fehler beim Aufruf einer zugrunde liegenden System-API.

Code, der ohne Administratorrechte ausgeführt wird, hat versucht, einen Leistungsindikator zu lesen.

Hinweise

Note

Um Leistungsindikatoren aus einer nicht interaktiven Anmeldesitzung in Windows Vista und höher, Windows XP Professional x64 Edition oder Windows Server 2003 zu lesen, müssen Sie entweder Mitglied der Gruppe "Benutzer der Leistungsüberwachung" sein oder über Administratorrechte verfügen.

Um zu vermeiden, dass Sie Ihre Berechtigungen für den Zugriff auf Leistungsindikatoren in Windows Vista und höher erhöhen müssen, fügen Sie sich der Gruppe "Benutzer der Leistungsüberwachung" hinzu.

In Windows Vista und höher bestimmt die Benutzerkontensteuerung (User Account Control, UAC) die Berechtigungen eines Benutzers. Wenn Sie Mitglied der Gruppe "Integrierte Administratoren" sind, werden Ihnen zwei Laufzeitzugriffstoken zugewiesen: ein Standardbenutzerzugriffstoken und ein Administratorzugriffstoken. Standardmäßig befinden Sie sich in der Standardbenutzerrolle. Um den Code auszuführen, der auf Leistungsindikatoren zugreift, müssen Sie zuerst Ihre Berechtigungen vom Standardbenutzer zum Administrator erhöhen. Sie können dies tun, wenn Sie eine Anwendung starten, indem Sie mit der rechten Maustaste auf das Anwendungssymbol klicken und angeben, dass Sie als Administrator ausführen möchten.

Weitere Informationen

Gilt für:

Create(String, String, PerformanceCounterCategoryType, CounterCreationDataCollection)

Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs
Quelle:
PerformanceCounterCategory.cs

Registriert die Kategorie des benutzerdefinierten Leistungsindikators, die die angegebenen Leistungsindikatoren auf dem lokalen Computer enthält.

public:
 static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::Diagnostics::PerformanceCounterCategoryType categoryType, System::Diagnostics::CounterCreationDataCollection ^ counterData);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.PerformanceCounterCategoryType categoryType, System.Diagnostics.CounterCreationDataCollection counterData);
static member Create : string * string * System.Diagnostics.PerformanceCounterCategoryType * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, categoryType As PerformanceCounterCategoryType, counterData As CounterCreationDataCollection) As PerformanceCounterCategory

Parameter

categoryName
String

Der Name der benutzerdefinierten Leistungsindikatorkategorie, die beim System erstellt und registriert werden soll.

categoryHelp
String

Eine Beschreibung der benutzerdefinierten Kategorie.

counterData
CounterCreationDataCollection

Ein CounterCreationDataCollection Wert, der die Zähler angibt, die als Teil der neuen Kategorie erstellt werden sollen.

Gibt zurück

Ein PerformanceCounterCategory Objekt, das der neuen benutzerdefinierten Kategorie oder dem Leistungsobjekt zugeordnet ist.

Ausnahmen

Ein Zählername, der innerhalb der counterData Auflistung angegeben wird, ist null oder eine leere Zeichenfolge ("").

-oder-

Ein Indikator, der in der counterData Auflistung angegeben ist, ist bereits vorhanden.

categoryName ist null.

-oder-

counterData ist null.

categoryType der Wert außerhalb des Bereichs der folgenden Werte liegt: MultiInstance, , SingleInstance, oder Unknown.

Die Kategorie ist bereits auf dem lokalen Computer vorhanden.

-oder-

Das Layout der counterData Auflistung ist für Basiszähler falsch. Ein Zähler vom Typ AverageCount64, AverageTimer32, CounterMultiTimer, CounterMultiTimerInverse, CounterMultiTimer100Ns, CounterMultiTimer100NsInverse, RawFraction, SampleFractionoder SampleCounter muss unmittelbar auf einen der Basiszählertypen (AverageBase, MultiBase, , RawBaseoder SampleBase) folgen.

Fehler beim Aufruf einer zugrunde liegenden System-API.

Code, der ohne Administratorrechte ausgeführt wird, hat versucht, einen Leistungsindikator zu lesen.

Beispiele

Das folgende Codebeispiel zeigt die Verwendung der Create Methode. Das Beispiel zeigt, wie Sie eine benutzerdefinierte Leistungsindikatorkategorie mit mehreren Instanzen für die Anzahl der Bestellungen pro Sekunde erstellen.

CounterCreationData data1 = new CounterCreationData("Trucks",
    "Number of orders", PerformanceCounterType.NumberOfItems32);
CounterCreationData data2 = new CounterCreationData("Rate of sales",
    "Orders/second", PerformanceCounterType.RateOfCountsPerSecond32);
CounterCreationDataCollection ccds = new CounterCreationDataCollection();
ccds.Add(data1);
ccds.Add(data2);
Console.WriteLine("Creating Orders custom counter.");
if (!PerformanceCounterCategory.Exists("Orders"))
    PerformanceCounterCategory.Create("Orders",
        "Processed orders",
        PerformanceCounterCategoryType.MultiInstance,
        ccds);
Dim data1 As New CounterCreationData("Trucks", "Number of orders", PerformanceCounterType.NumberOfItems32)
Dim data2 As New CounterCreationData("Rate of sales", "Orders/second", PerformanceCounterType.RateOfCountsPerSecond32)
Dim ccds As New CounterCreationDataCollection()
ccds.Add(data1)
ccds.Add(data2)
Console.WriteLine("Creating Orders custom counter.")
If Not PerformanceCounterCategory.Exists("Orders") Then
    PerformanceCounterCategory.Create("Orders", "Processed orders", PerformanceCounterCategoryType.MultiInstance, ccds)
End If

Hinweise

Der categoryType Parameter gibt an, ob die Leistungsindikatorkategorie eine Instanz oder mehrere Instanzen ist. Standardmäßig ist eine Kategorie eine Instanz, wenn sie erstellt wird, und wird zu einer mehrfachen Instanz, wenn eine andere Instanz hinzugefügt wird. Kategorien werden erstellt, wenn eine Anwendung eingerichtet wird, und Instanzen werden zur Laufzeit hinzugefügt. Die PerformanceCounterCategoryType Aufzählung wird verwendet, um anzugeben, ob ein Leistungsindikator mehrere Instanzen aufweisen kann.

Leistungsindikatorkategorien, die mit .NET mit separatem gemeinsam genutztem Arbeitsspeicher installiert sind, wobei jede Leistungsindikatorkategorie über einen eigenen Arbeitsspeicher verfügt. Sie können die Größe des separaten freigegebenen Speichers angeben, indem Sie im Registrierungsschlüssel einen DWORD-Namen namens "FileMappingSize" HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<Kategorienamen>\Leistung erstellen. Der FileMappingSize-Wert wird auf die Größe des freigegebenen Arbeitsspeichers der Kategorie festgelegt. Die Standardgröße ist 131072 Dezimalzahl. Wenn der FileMappingSize-Wert nicht vorhanden ist, wird der Attributwert für das fileMappingSizeperformanceCounters in der Machine.config Datei angegebene Element verwendet, was zusätzlichen Aufwand für die Verarbeitung von Konfigurationsdateien verursacht. Sie können eine Leistungsverbesserung für den Anwendungsstart erkennen, indem Sie die Dateizuordnungsgröße in der Registrierung festlegen.

Note

Es wird dringend empfohlen, während der Installation der Anwendung neue Leistungsindikatorenkategorien zu erstellen, nicht während der Ausführung der Anwendung. Dadurch kann das Betriebssystem seine Liste der registrierten Leistungsindikatorkategorien aktualisieren. Wenn die Liste nicht aktualisiert wurde, schlägt der Versuch, die Kategorie zu verwenden, fehl.

Note

Um Leistungsindikatoren aus einer nicht interaktiven Anmeldesitzung in Windows Vista und höher, Windows XP Professional x64 Edition oder Windows Server 2003 zu lesen, müssen Sie entweder Mitglied der Gruppe "Benutzer der Leistungsüberwachung" sein oder über Administratorrechte verfügen.

Um zu vermeiden, dass Sie Ihre Berechtigungen für den Zugriff auf Leistungsindikatoren in Windows Vista und höher erhöhen müssen, fügen Sie sich der Gruppe "Benutzer der Leistungsüberwachung" hinzu.

In Windows Vista und höher bestimmt die Benutzerkontensteuerung (User Account Control, UAC) die Berechtigungen eines Benutzers. Wenn Sie Mitglied der Gruppe "Integrierte Administratoren" sind, werden Ihnen zwei Laufzeitzugriffstoken zugewiesen: ein Standardbenutzerzugriffstoken und ein Administratorzugriffstoken. Standardmäßig befinden Sie sich in der Standardbenutzerrolle. Um den Code auszuführen, der auf Leistungsindikatoren zugreift, müssen Sie zuerst Ihre Berechtigungen vom Standardbenutzer zum Administrator erhöhen. Sie können dies tun, wenn Sie eine Anwendung starten, indem Sie mit der rechten Maustaste auf das Anwendungssymbol klicken und angeben, dass Sie als Administrator ausführen möchten.

Weitere Informationen

Gilt für: