PerformanceCounter Konstruktory

Definicja

Inicjuje nowe wystąpienie klasy PerformanceCounter.Initializes a new instance of the PerformanceCounter class.

Przeciążenia

PerformanceCounter()

Inicjuje nowe wystąpienie tylko do odczytu PerformanceCounter klasy, bez kojarzenia wystąpienia z dowolnym system lub niestandardowy licznik wydajności.Initializes a new, read-only instance of the PerformanceCounter class, without associating the instance with any system or custom performance counter.

PerformanceCounter(String, String)

Inicjuje nowe wystąpienie tylko do odczytu PerformanceCounter klasy i kojarzy je z określonym systemem lub niestandardowym licznikiem wydajności na komputerze lokalnym.Initializes a new, read-only instance of the PerformanceCounter class and associates it with the specified system or custom performance counter on the local computer. Ten Konstruktor wymaga, aby Kategoria miała pojedyncze wystąpienie.This constructor requires that the category have a single instance.

PerformanceCounter(String, String, Boolean)

Inicjuje nowe wystąpienie, tylko do odczytu lub odczytu/zapisu PerformanceCounter klasy i kojarzy je z określonym systemem lub niestandardowym licznikiem wydajności na komputerze lokalnym.Initializes a new, read-only or read/write instance of the PerformanceCounter class and associates it with the specified system or custom performance counter on the local computer. Ten Konstruktor wymaga, aby Kategoria zawierała pojedyncze wystąpienie.This constructor requires that the category contain a single instance.

PerformanceCounter(String, String, String)

Inicjuje nowe wystąpienie tylko do odczytu PerformanceCounter klasy i kojarzy je z określonym systemem lub niestandardowym licznikiem wydajności i wystąpieniem kategorii na komputerze lokalnym.Initializes a new, read-only instance of the PerformanceCounter class and associates it with the specified system or custom performance counter and category instance on the local computer.

PerformanceCounter(String, String, String, Boolean)

Inicjuje nowe wystąpienie, tylko do odczytu lub odczytu/zapisu PerformanceCounter klasy i kojarzy je z określonym systemem lub niestandardowym licznikiem wydajności i wystąpieniem kategorii na komputerze lokalnym.Initializes a new, read-only or read/write instance of the PerformanceCounter class and associates it with the specified system or custom performance counter and category instance on the local computer.

PerformanceCounter(String, String, String, String)

Inicjuje nowe wystąpienie tylko do odczytu PerformanceCounter klasy i kojarzy je z określonym systemem lub niestandardowym licznikiem wydajności i wystąpieniem kategorii na określonym komputerze.Initializes a new, read-only instance of the PerformanceCounter class and associates it with the specified system or custom performance counter and category instance, on the specified computer.

PerformanceCounter()

Inicjuje nowe wystąpienie tylko do odczytu PerformanceCounter klasy, bez kojarzenia wystąpienia z dowolnym system lub niestandardowy licznik wydajności.Initializes a new, read-only instance of the PerformanceCounter class, without associating the instance with any system or custom performance counter.

public:
 PerformanceCounter();
public PerformanceCounter ();
Public Sub New ()

Przykłady

Poniższy przykład kodu tworzy wystąpienie domyślne PerformanceCounter klasy.The following code example creates a default instance of the PerformanceCounter class. Po utworzeniu wystąpienia CategoryName CounterName InstanceName wartości właściwości, i są ustawiane, a wyniki wywołania NextValue metody są wyświetlane.After the instance is created, the CategoryName, CounterName, and InstanceName property values are set, and the results of a call to the NextValue method are displayed.

PerformanceCounter^ PC = gcnew PerformanceCounter;
PC->CategoryName = "Process";
PC->CounterName = "Private Bytes";
PC->InstanceName = "Explorer";
MessageBox::Show( PC->NextValue().ToString() );
PerformanceCounter PC=new PerformanceCounter();
PC.CategoryName="Process";
PC.CounterName="Private Bytes";
PC.InstanceName="Explorer";
MessageBox.Show(PC.NextValue().ToString());
Dim PC As New PerformanceCounter()
PC.CategoryName = "Process"
PC.CounterName = "Private Bytes"
PC.InstanceName = "Explorer"
MessageBox.Show(PC.NextValue().ToString())

Uwagi

To przeciążenie konstruktora ustawia CategoryName CounterName właściwości,, i InstanceName na puste ciągi ("") i ustawia MachineName Właściwość na komputer lokalny (".").This overload of the constructor sets the CategoryName, CounterName, and InstanceName properties to empty strings (""), and sets the MachineName property to the local computer, (".").

Ten konstruktor nie inicjuje licznika wydajności, dlatego nie kojarzy wystąpienia z istniejącym licznikiem na komputerze lokalnym.This constructor does not initialize the performance counter, so it does not associate the instance with an existing counter on the local computer. Aby wskazać określony licznik wydajności, należy ustawić CategoryName , CounterName , i, opcjonalnie, InstanceName MachineName właściwości i przed odczytaniem innych właściwości lub próby odczytu z licznika.To point to a specific performance counter, set the CategoryName, CounterName, and, optionally, the InstanceName and MachineName properties before reading any other properties or attempting to read from a counter. Aby zapisać dane w liczniku wydajności, należy ustawić ReadOnly Właściwość na false .To write to a performance counter, set the ReadOnly property to false.

Uwaga

HostProtectionAttributeAtrybut zastosowany do tego elementu członkowskiego ma następującą Resources wartość właściwości: Synchronization | SharedState .The HostProtectionAttribute attribute applied to this member has the following Resources property value: Synchronization | SharedState. Atrybut HostProtectionAttribute nie ma wpływu na aplikacje pulpitu (które typowo są uruchamiane przez dwukrotne kliknięcie ikony, wpisanie polecenia albo wprowadzenie adresu URL w przeglądarce).The HostProtectionAttribute does not affect desktop applications (which are typically started by double-clicking an icon, typing a command, or entering a URL in a browser). Aby uzyskać więcej informacji, zobacz HostProtectionAttribute atrybuty programowania klasy lub SQL Server i ochrony hosta.For more information, see the HostProtectionAttribute class or SQL Server Programming and Host Protection Attributes.

Dotyczy

PerformanceCounter(String, String)

Inicjuje nowe wystąpienie tylko do odczytu PerformanceCounter klasy i kojarzy je z określonym systemem lub niestandardowym licznikiem wydajności na komputerze lokalnym.Initializes a new, read-only instance of the PerformanceCounter class and associates it with the specified system or custom performance counter on the local computer. Ten Konstruktor wymaga, aby Kategoria miała pojedyncze wystąpienie.This constructor requires that the category have a single instance.

public:
 PerformanceCounter(System::String ^ categoryName, System::String ^ counterName);
public PerformanceCounter (string categoryName, string counterName);
new System.Diagnostics.PerformanceCounter : string * string -> System.Diagnostics.PerformanceCounter
Public Sub New (categoryName As String, counterName As String)

Parametry

categoryName
String

Nazwa kategorii licznika wydajności (obiekt wydajności), z którą jest skojarzony Ten licznik wydajności.The name of the performance counter category (performance object) with which this performance counter is associated.

counterName
String

Nazwa licznika wydajności.The name of the performance counter.

Wyjątki

categoryName jest pustym ciągiem ("").categoryName is an empty string ("").

-lub--or- counterName jest pustym ciągiem ("").counterName is an empty string ("").

-lub--or- Określona Kategoria nie istnieje.The category specified does not exist.

-lub--or- Określona kategoria jest oznaczona jako wiele wystąpień i wymaga, aby licznik wydajności został utworzony przy użyciu nazwy wystąpienia.The category specified is marked as multi-instance and requires the performance counter to be created with an instance name.

-lub--or- categoryName i zostały counterName zlokalizowane w różnych językach.categoryName and counterName have been localized into different languages.

categoryName lub counterName jest null .categoryName or counterName is null.

Wystąpił błąd podczas uzyskiwania dostępu do interfejsu API systemu.An error occurred when accessing a system API.

Kod wykonywany bez uprawnień administracyjnych próbował odczytać licznik wydajności.Code that is executing without administrative privileges attempted to read a performance counter.

Uwagi

W ciągach parametrów nie jest rozróżniana wielkość liter.The parameter strings are not case-sensitive.

Użyj tego przeciążenia, aby uzyskać dostęp do licznika na komputerze lokalnym, który należy do kategorii zawierającej pojedyncze wystąpienie kategorii licznika wydajności.Use this overload to access a counter on the local computer that belongs to a category containing a single performance counter category instance. Jeśli próbujesz użyć tego konstruktora do wskazywania tego PerformanceCounter wystąpienia dla kategorii zawierającej wiele wystąpień, Konstruktor zgłosi wyjątek.If you attempt to use this constructor to point this PerformanceCounter instance to a category that contains multiple instances, the constructor throws an exception. To Przeciążenie może uzyskać dostęp do dowolnego licznika tylko do odczytu lub odczytu/zapisu, ale robi to w trybie tylko do odczytu.This overload can access any read-only or read/write counter, but does so in a read-only mode. PerformanceCounterWystąpienie utworzone za pomocą tego przeciążenia nie może zapisywać w liczniku, nawet jeśli sam licznik jest odczyt/zapis.A PerformanceCounter instance created using this overload cannot write to the counter, even if the counter itself is read/write.

To przeciążenie konstruktora ustawia CategoryName CounterName właściwości i dla przekazywanych wartości, ustawia MachineName Właściwość na komputer lokalny, "." i ustawia InstanceName Właściwość na ciąg pusty ("").This overload of the constructor sets the CategoryName and CounterName properties to the values you pass in, sets the MachineName property to the local computer, ".", and sets the InstanceName property to an empty string ("").

Ten konstruktor inicjuje licznik wydajności i kojarzy wystąpienie z istniejącym licznikiem (system lub licznik niestandardowy) na komputerze lokalnym.This constructor initializes the performance counter and associates the instance with an existing counter (either a system or a custom counter) on the local computer. Wartości, które są przekazywane dla CategoryName właściwości i, CounterName muszą wskazywać na istniejący licznik wydajności na komputerze lokalnym.The values that you pass in for the CategoryName and CounterName properties must point to an existing performance counter on the local computer.

Uwaga

Aby odczytać liczniki wydajności z nieinteraktywnej sesji logowania w systemie Windows Vista lub nowszym, Windows XP Professional x64 Edition lub Windows Server 2003, trzeba być członkiem grupy Użytkownicy monitora wydajności lub mieć uprawnienia administracyjne.To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges.

Aby uniknąć konieczności podniesienia uprawnień dostępu do liczników wydajności w systemie Windows Vista, należy dodać siebie do grupy Użytkownicy monitora wydajności.To avoid having to elevate your privileges to access performance counters in Windows Vista, add yourself to the Performance Monitor Users group.

W systemie Windows Vista Kontrola konta użytkownika (UAC) określa uprawnienia użytkownika.In Windows Vista, User Account Control (UAC) determines the privileges of a user. Jeśli jesteś członkiem wbudowanej grupy Administratorzy, masz przypisane dwa tokeny dostępu w czasie wykonywania: token dostępu użytkownika standardowego i token dostępu administratora.If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. Domyślnie jesteś w roli użytkownika standardowego.By default, you are in the standard user role. Aby wykonać kod, który uzyskuje dostęp do liczników wydajności, należy najpierw podnieść poziom uprawnień użytkownika standardowego do administratora.To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. Można to zrobić podczas uruchamiania aplikacji przez kliknięcie prawym przyciskiem myszy ikony aplikacji i wskazanie, że chcesz uruchomić program jako administrator.You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator.

Dotyczy

PerformanceCounter(String, String, Boolean)

Inicjuje nowe wystąpienie, tylko do odczytu lub odczytu/zapisu PerformanceCounter klasy i kojarzy je z określonym systemem lub niestandardowym licznikiem wydajności na komputerze lokalnym.Initializes a new, read-only or read/write instance of the PerformanceCounter class and associates it with the specified system or custom performance counter on the local computer. Ten Konstruktor wymaga, aby Kategoria zawierała pojedyncze wystąpienie.This constructor requires that the category contain a single instance.

public:
 PerformanceCounter(System::String ^ categoryName, System::String ^ counterName, bool readOnly);
public PerformanceCounter (string categoryName, string counterName, bool readOnly);
new System.Diagnostics.PerformanceCounter : string * string * bool -> System.Diagnostics.PerformanceCounter
Public Sub New (categoryName As String, counterName As String, readOnly As Boolean)

Parametry

categoryName
String

Nazwa kategorii licznika wydajności (obiekt wydajności), z którą jest skojarzony Ten licznik wydajności.The name of the performance counter category (performance object) with which this performance counter is associated.

counterName
String

Nazwa licznika wydajności.The name of the performance counter.

readOnly
Boolean

true Aby uzyskać dostęp do licznika w trybie tylko do odczytu (chociaż licznik może być tylko do odczytu/zapisu); false Aby uzyskać dostęp do licznika w trybie odczytu/zapisu.true to access the counter in read-only mode (although the counter itself could be read/write); false to access the counter in read/write mode.

Wyjątki

categoryNameJest pustym ciągiem ("").The categoryName is an empty string ("").

-lub--or- counterNameJest pustym ciągiem ("").The counterName is an empty string ("").

-lub--or- Określona Kategoria nie istnieje.The category specified does not exist. (Jeśli readOnly jest true ).(if readOnly is true).

-lub--or- Określona Kategoria nie jest kategorią niestandardową .NET Framework (Jeśli readOnly jest false ).The category specified is not a .NET Framework custom category (if readOnly is false).

-lub--or- Określona kategoria jest oznaczona jako wiele wystąpień i wymaga, aby licznik wydajności został utworzony przy użyciu nazwy wystąpienia.The category specified is marked as multi-instance and requires the performance counter to be created with an instance name.

-lub--or- categoryName i zostały counterName zlokalizowane w różnych językach.categoryName and counterName have been localized into different languages.

categoryName lub counterName jest null .categoryName or counterName is null.

Wystąpił błąd podczas uzyskiwania dostępu do interfejsu API systemu.An error occurred when accessing a system API.

Kod wykonywany bez uprawnień administracyjnych próbował odczytać licznik wydajności.Code that is executing without administrative privileges attempted to read a performance counter.

Przykłady

Poniższy przykład kodu tworzy wystąpienie PerformanceCounter klasy.The following code example creates an instance of the PerformanceCounter class. Przykład przebiega w nazwach kategorii, nazwach liczników i wartości flagi wskazujących, że licznik nie jest tylko do odczytu.The example passes in category names, counter names, and a flag value indicating that the counter is not read-only. Ten przykład kodu jest częścią większego przykładu dla PerformanceCounter klasy.This code example is part of a larger example for the PerformanceCounter class.

PC = gcnew PerformanceCounter( "AverageCounter64SampleCategory","AverageCounter64Sample",false );
avgCounter64Sample = new PerformanceCounter("AverageCounter64SampleCategory",
    "AverageCounter64Sample",
    false);

avgCounter64Sample = New PerformanceCounter("AverageCounter64SampleCategory", "AverageCounter64Sample", False)

Uwagi

W ciągach parametrów nie jest rozróżniana wielkość liter.The parameter strings are not case-sensitive.

Użyj tego przeciążenia, aby uzyskać dostęp do licznika tylko do odczytu lub odczytu/zapisu na komputerze lokalnym, który należy do kategorii zawierającej pojedyncze wystąpienie kategorii licznika wydajności.Use this overload to access a read-only or read/write counter on the local computer that belongs to a category containing a single performance counter category instance. Jeśli próbujesz użyć tego konstruktora do wskazywania tego PerformanceCounter wystąpienia dla kategorii zawierającej wiele wystąpień, Konstruktor zgłosi wyjątek.If you attempt to use this constructor to point this PerformanceCounter instance to a category that contains multiple instances, the constructor throws an exception.

To przeciążenie konstruktora ustawia CategoryName CounterName właściwości,, i ReadOnly na przekazywane wartości, ustawia MachineName Właściwość na komputer lokalny, "." i ustawia InstanceName Właściwość na pusty ciąg ("").This overload of the constructor sets the CategoryName, CounterName, and ReadOnly properties to the values you pass in, sets the MachineName property to the local computer, ".", and sets the InstanceName property to an empty string ("").

Ten konstruktor inicjuje licznik wydajności i kojarzy wystąpienie z istniejącym licznikiem (system lub licznik niestandardowy) na komputerze lokalnym.This constructor initializes the performance counter and associates the instance with an existing counter (either a system or a custom counter) on the local computer. Wartości, które są przekazywane dla CategoryName właściwości i, CounterName muszą wskazywać na istniejący licznik wydajności na komputerze lokalnym.The values that you pass in for the CategoryName and CounterName properties must point to an existing performance counter on the local computer. Jeśli wystąpienie licznika wydajności, które wskazuje, jest nieprawidłowe, wywołanie konstruktora zgłasza wyjątek.If the performance counter instance that you point to is not valid, calling the constructor throws an exception.

Uwaga

Tego przeciążenia można użyć do nawiązania połączenia z licznikiem systemowym, ale nie można zapisać do licznika systemowego.You can use this overload to connect to a system counter, but you cannot write to a system counter. W związku z tym ustawienie readOnly false podczas łączenia z licznikiem systemu powoduje, że Konstruktor zgłosi wyjątek.Therefore, setting readOnly to false when connecting to a system counter causes the constructor to throw an exception.

Uwaga

Aby odczytać liczniki wydajności z nieinteraktywnej sesji logowania w systemie Windows Vista lub nowszym, Windows XP Professional x64 Edition lub Windows Server 2003, trzeba być członkiem grupy Użytkownicy monitora wydajności lub mieć uprawnienia administracyjne.To read performance counters from a non-interactive logon session in Windows Vista and later, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges.

Aby uniknąć konieczności podniesienia uprawnień dostępu do liczników wydajności w systemie Windows Vista, należy dodać siebie do grupy Użytkownicy monitora wydajności.To avoid having to elevate your privileges to access performance counters in Windows Vista, add yourself to the Performance Monitor Users group.

W systemie Windows Vista Kontrola konta użytkownika (UAC) określa uprawnienia użytkownika.In Windows Vista, User Account Control (UAC) determines the privileges of a user. Jeśli jesteś członkiem wbudowanej grupy Administratorzy, masz przypisane dwa tokeny dostępu w czasie wykonywania: token dostępu użytkownika standardowego i token dostępu administratora.If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. Domyślnie jesteś w roli użytkownika standardowego.By default, you are in the standard user role. Aby wykonać kod, który uzyskuje dostęp do liczników wydajności, należy najpierw podnieść poziom uprawnień użytkownika standardowego do administratora.To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. Można to zrobić podczas uruchamiania aplikacji przez kliknięcie prawym przyciskiem myszy ikony aplikacji i wskazanie, że chcesz uruchomić program jako administrator.You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator.

Dotyczy

PerformanceCounter(String, String, String)

Inicjuje nowe wystąpienie tylko do odczytu PerformanceCounter klasy i kojarzy je z określonym systemem lub niestandardowym licznikiem wydajności i wystąpieniem kategorii na komputerze lokalnym.Initializes a new, read-only instance of the PerformanceCounter class and associates it with the specified system or custom performance counter and category instance on the local computer.

public:
 PerformanceCounter(System::String ^ categoryName, System::String ^ counterName, System::String ^ instanceName);
public PerformanceCounter (string categoryName, string counterName, string instanceName);
new System.Diagnostics.PerformanceCounter : string * string * string -> System.Diagnostics.PerformanceCounter
Public Sub New (categoryName As String, counterName As String, instanceName As String)

Parametry

categoryName
String

Nazwa kategorii licznika wydajności (obiekt wydajności), z którą jest skojarzony Ten licznik wydajności.The name of the performance counter category (performance object) with which this performance counter is associated.

counterName
String

Nazwa licznika wydajności.The name of the performance counter.

instanceName
String

Nazwa wystąpienia kategorii licznika wydajności lub pusty ciąg (""), jeśli kategoria zawiera pojedyncze wystąpienie.The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.

Wyjątki

categoryName jest pustym ciągiem ("").categoryName is an empty string ("").

-lub--or- counterName jest pustym ciągiem ("").counterName is an empty string ("").

-lub--or- Określona kategoria jest nieprawidłowa.The category specified is not valid.

-lub--or- Określona kategoria jest oznaczona jako wiele wystąpień i wymaga, aby licznik wydajności został utworzony przy użyciu nazwy wystąpienia.The category specified is marked as multi-instance and requires the performance counter to be created with an instance name.

-lub--or- instanceName jest dłuższa niż 127 znaków.instanceName is longer than 127 characters.

-lub--or- categoryName i zostały counterName zlokalizowane w różnych językach.categoryName and counterName have been localized into different languages.

categoryName lub counterName jest null .categoryName or counterName is null.

Wystąpił błąd podczas uzyskiwania dostępu do interfejsu API systemu.An error occurred when accessing a system API.

Kod wykonywany bez uprawnień administracyjnych próbował odczytać licznik wydajności.Code that is executing without administrative privileges attempted to read a performance counter.

Uwagi

W ciągach parametrów nie jest rozróżniana wielkość liter.The parameter strings are not case-sensitive.

To przeciążenie konstruktora ustawia CategoryName CounterName właściwości,, i InstanceName na przekazywane wartości, a następnie ustawia MachineName Właściwość na komputer lokalny, ".".This overload of the constructor sets the CategoryName, CounterName, and InstanceName properties to the values you pass in, and sets the MachineName property to the local computer, ".".

Ten konstruktor inicjuje licznik wydajności i kojarzy wystąpienie z istniejącym licznikiem (system lub licznik niestandardowy) na komputerze lokalnym.This constructor initializes the performance counter and associates the instance with an existing counter (either a system or a custom counter) on the local computer. Wartości, które są przekazywane dla CategoryName CounterName właściwości, i InstanceName muszą wskazywać na istniejący licznik wydajności na komputerze lokalnym.The values that you pass in for the CategoryName, CounterName, and InstanceName properties must point to an existing performance counter on the local computer. Jeśli wystąpienie licznika wydajności wskazywane jest nieprawidłowe, wywołanie konstruktora zgłasza wyjątek.If the performance counter instance you point to is not valid, calling the constructor throws an exception.

To Przeciążenie może uzyskać dostęp do dowolnego licznika tylko do odczytu lub odczytu/zapisu, ale robi to w trybie tylko do odczytu.This overload can access any read-only or read/write counter, but does so in a read-only mode. PerformanceCounterWystąpienie utworzone za pomocą tego przeciążenia nie może zapisywać w liczniku, nawet jeśli sam licznik jest odczyt/zapis.A PerformanceCounter instance created using this overload cannot write to the counter, even if the counter itself is read/write.

Aby utworzyć wystąpienie kategorii wydajności, określ instanceName wartość w PerformanceCounter konstruktorze.To create a performance category instance, specify an instanceName on the PerformanceCounter constructor. Jeśli wystąpienie kategorii określone przez instanceName już istnieje, nowy obiekt będzie odwoływać się do istniejącego wystąpienia kategorii.If the category instance specified by instanceName already exists the new object will reference the existing category instance.

Uwaga

Aby odczytać liczniki wydajności w systemie Windows Vista, Windows XP Professional x64 Edition lub Windows Server 2003, trzeba być członkiem grupy Użytkownicy monitora wydajności lub mieć uprawnienia administracyjne.To read performance counters in Windows Vista, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges.

Aby uniknąć konieczności podniesienia uprawnień dostępu do liczników wydajności w systemie Windows Vista, należy dodać siebie do grupy Użytkownicy monitora wydajności.To avoid having to elevate your privileges to access performance counters in Windows Vista, add yourself to the Performance Monitor Users group.

W systemie Windows Vista Kontrola konta użytkownika (UAC) określa uprawnienia użytkownika.In Windows Vista, User Account Control (UAC) determines the privileges of a user. Jeśli jesteś członkiem wbudowanej grupy Administratorzy, masz przypisane dwa tokeny dostępu w czasie wykonywania: token dostępu użytkownika standardowego i token dostępu administratora.If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. Domyślnie jesteś w roli użytkownika standardowego.By default, you are in the standard user role. Aby wykonać kod, który uzyskuje dostęp do liczników wydajności, należy najpierw podnieść poziom uprawnień użytkownika standardowego do administratora.To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. Można to zrobić podczas uruchamiania aplikacji przez kliknięcie prawym przyciskiem myszy ikony aplikacji i wskazanie, że chcesz uruchomić program jako administrator.You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator.

Dotyczy

PerformanceCounter(String, String, String, Boolean)

Inicjuje nowe wystąpienie, tylko do odczytu lub odczytu/zapisu PerformanceCounter klasy i kojarzy je z określonym systemem lub niestandardowym licznikiem wydajności i wystąpieniem kategorii na komputerze lokalnym.Initializes a new, read-only or read/write instance of the PerformanceCounter class and associates it with the specified system or custom performance counter and category instance on the local computer.

public:
 PerformanceCounter(System::String ^ categoryName, System::String ^ counterName, System::String ^ instanceName, bool readOnly);
public PerformanceCounter (string categoryName, string counterName, string instanceName, bool readOnly);
new System.Diagnostics.PerformanceCounter : string * string * string * bool -> System.Diagnostics.PerformanceCounter
Public Sub New (categoryName As String, counterName As String, instanceName As String, readOnly As Boolean)

Parametry

categoryName
String

Nazwa kategorii licznika wydajności (obiekt wydajności), z którą jest skojarzony Ten licznik wydajności.The name of the performance counter category (performance object) with which this performance counter is associated.

counterName
String

Nazwa licznika wydajności.The name of the performance counter.

instanceName
String

Nazwa wystąpienia kategorii licznika wydajności lub pusty ciąg (""), jeśli kategoria zawiera pojedyncze wystąpienie.The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.

readOnly
Boolean

true Aby uzyskać dostęp do licznika w trybie tylko do odczytu; false Aby uzyskać dostęp do licznika w trybie do odczytu/zapisu.true to access a counter in read-only mode; false to access a counter in read/write mode.

Wyjątki

categoryName jest pustym ciągiem ("").categoryName is an empty string ("").

-lub--or- counterName jest pustym ciągiem ("").counterName is an empty string ("").

-lub--or- Żądane ustawienie uprawnienia do odczytu/zapisu jest nieprawidłowe dla tego licznika.The read/write permission setting requested is invalid for this counter.

-lub--or- Określona Kategoria nie istnieje (Jeśli readOnly jest true ).The category specified does not exist (if readOnly is true).

-lub--or- Określona Kategoria nie jest kategorią niestandardową .NET Framework (Jeśli readOnly jest false ).The category specified is not a .NET Framework custom category (if readOnly is false).

-lub--or- Określona kategoria jest oznaczona jako wiele wystąpień i wymaga, aby licznik wydajności został utworzony przy użyciu nazwy wystąpienia.The category specified is marked as multi-instance and requires the performance counter to be created with an instance name.

-lub--or- instanceName jest dłuższa niż 127 znaków.instanceName is longer than 127 characters.

-lub--or- categoryName i zostały counterName zlokalizowane w różnych językach.categoryName and counterName have been localized into different languages.

categoryName lub counterName jest null .categoryName or counterName is null.

Wystąpił błąd podczas uzyskiwania dostępu do interfejsu API systemu.An error occurred when accessing a system API.

Kod wykonywany bez uprawnień administracyjnych próbował odczytać licznik wydajności.Code that is executing without administrative privileges attempted to read a performance counter.

Uwagi

W ciągach parametrów nie jest rozróżniana wielkość liter.The parameter strings are not case-sensitive.

Użyj tego przeciążenia, aby uzyskać dostęp do licznika wydajności w trybie tylko do odczytu lub do odczytu/zapisu.Use this overload to access a performance counter in either read-only or read/write mode.

To przeciążenie konstruktora ustawia CategoryName CounterName właściwości,, i InstanceName na przekazane wartości, a następnie ustawia MachineName Właściwość na komputer lokalny, ".".This overload of the constructor sets the CategoryName, CounterName, and InstanceName properties to the values you pass in, it and sets the MachineName property to the local computer, ".".

Ten konstruktor inicjuje licznik wydajności i kojarzy wystąpienie z istniejącym licznikiem (system lub licznik niestandardowy) na komputerze lokalnym.This constructor initializes the performance counter and associates the instance with an existing counter (either a system or a custom counter) on the local computer. Wartości, które są przekazywane dla CategoryName CounterName właściwości, i InstanceName muszą wskazywać na istniejący licznik wydajności na komputerze lokalnym.The values that you pass in for the CategoryName, CounterName, and InstanceName properties must point to an existing performance counter on the local computer. Jeśli wystąpienie licznika wydajności, które wskazuje, jest nieprawidłowe, wywołanie konstruktora zgłasza wyjątek.If the performance counter instance that you point to is not valid, calling the constructor throws an exception.

Uwaga

Tego przeciążenia można użyć do nawiązania połączenia z licznikiem systemowym, ale nie można zapisać do licznika systemowego.You can use this overload to connect to a system counter, but you cannot write to a system counter. W związku z tym ustawienie readOnly false podczas łączenia z licznikiem systemu powoduje, że Konstruktor zgłosi wyjątek.Therefore, setting readOnly to false when connecting to a system counter causes the constructor to throw an exception.

Aby utworzyć wystąpienie kategorii wydajności, określ instanceName wartość w PerformanceCounter konstruktorze.To create a performance category instance, specify an instanceName on the PerformanceCounter constructor. Jeśli wystąpienie kategorii określone przez instanceName już istnieje, nowy obiekt będzie odwoływać się do istniejącego wystąpienia kategorii.If the category instance specified by instanceName already exists the new object will reference the existing category instance.

Uwaga

Aby odczytać liczniki wydajności w systemie Windows Vista, Windows XP Professional x64 Edition lub Windows Server 2003, trzeba być członkiem grupy Użytkownicy monitora wydajności lub mieć uprawnienia administracyjne.To read performance counters in Windows Vista, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges.

Aby uniknąć konieczności podniesienia uprawnień dostępu do liczników wydajności w systemie Windows Vista, należy dodać siebie do grupy Użytkownicy monitora wydajności.To avoid having to elevate your privileges to access performance counters in Windows Vista, add yourself to the Performance Monitor Users group.

W systemie Windows Vista Kontrola konta użytkownika (UAC) określa uprawnienia użytkownika.In Windows Vista, User Account Control (UAC) determines the privileges of a user. Jeśli jesteś członkiem wbudowanej grupy Administratorzy, masz przypisane dwa tokeny dostępu w czasie wykonywania: token dostępu użytkownika standardowego i token dostępu administratora.If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. Domyślnie jesteś w roli użytkownika standardowego.By default, you are in the standard user role. Aby wykonać kod, który uzyskuje dostęp do liczników wydajności, należy najpierw podnieść poziom uprawnień użytkownika standardowego do administratora.To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. Można to zrobić podczas uruchamiania aplikacji przez kliknięcie prawym przyciskiem myszy ikony aplikacji i wskazanie, że chcesz uruchomić program jako administrator.You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator.

Dotyczy

PerformanceCounter(String, String, String, String)

Inicjuje nowe wystąpienie tylko do odczytu PerformanceCounter klasy i kojarzy je z określonym systemem lub niestandardowym licznikiem wydajności i wystąpieniem kategorii na określonym komputerze.Initializes a new, read-only instance of the PerformanceCounter class and associates it with the specified system or custom performance counter and category instance, on the specified computer.

public:
 PerformanceCounter(System::String ^ categoryName, System::String ^ counterName, System::String ^ instanceName, System::String ^ machineName);
public PerformanceCounter (string categoryName, string counterName, string instanceName, string machineName);
new System.Diagnostics.PerformanceCounter : string * string * string * string -> System.Diagnostics.PerformanceCounter
Public Sub New (categoryName As String, counterName As String, instanceName As String, machineName As String)

Parametry

categoryName
String

Nazwa kategorii licznika wydajności (obiekt wydajności), z którą jest skojarzony Ten licznik wydajności.The name of the performance counter category (performance object) with which this performance counter is associated.

counterName
String

Nazwa licznika wydajności.The name of the performance counter.

instanceName
String

Nazwa wystąpienia kategorii licznika wydajności lub pusty ciąg (""), jeśli kategoria zawiera pojedyncze wystąpienie.The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.

machineName
String

Komputer, na którym istnieje licznik wydajności i skojarzona z nim Kategoria.The computer on which the performance counter and its associated category exist.

Wyjątki

categoryName jest pustym ciągiem ("").categoryName is an empty string ("").

-lub--or- counterName jest pustym ciągiem ("").counterName is an empty string ("").

-lub--or- Żądane ustawienie uprawnienia do odczytu/zapisu jest nieprawidłowe dla tego licznika.The read/write permission setting requested is invalid for this counter.

-lub--or- Licznik nie istnieje na określonym komputerze.The counter does not exist on the specified computer.

-lub--or- Określona kategoria jest oznaczona jako wiele wystąpień i wymaga, aby licznik wydajności został utworzony przy użyciu nazwy wystąpienia.The category specified is marked as multi-instance and requires the performance counter to be created with an instance name.

-lub--or- instanceName jest dłuższa niż 127 znaków.instanceName is longer than 127 characters.

-lub--or- categoryName i zostały counterName zlokalizowane w różnych językach.categoryName and counterName have been localized into different languages.

machineNameParametr jest nieprawidłowy.The machineName parameter is not valid.

categoryName lub counterName jest null .categoryName or counterName is null.

Wystąpił błąd podczas uzyskiwania dostępu do interfejsu API systemu.An error occurred when accessing a system API.

Kod wykonywany bez uprawnień administracyjnych próbował odczytać licznik wydajności.Code that is executing without administrative privileges attempted to read a performance counter.

Uwagi

W ciągach parametrów nie jest rozróżniana wielkość liter.The parameter strings are not case-sensitive.

To przeciążenie konstruktora ustawia CategoryName CounterName właściwości,, InstanceName i MachineName na przekazane wartości.This overload of the constructor sets the CategoryName, CounterName, InstanceName, and MachineName properties to the values you pass in.

Ten konstruktor inicjuje licznik wydajności i kojarzy wystąpienie z istniejącym licznikiem (system lub licznik niestandardowy) na określonym komputerze.This constructor initializes the performance counter and associates the instance with an existing counter (either a system or a custom counter) on the specified computer. Wartości, które są przekazywane dla CategoryName CounterName właściwości, InstanceName i MachineName muszą wskazywać na istniejący licznik wydajności.The values that you pass in for the CategoryName, CounterName, InstanceName and MachineName properties must point to an existing performance counter. Jeśli wystąpienie licznika wydajności wskazywane jest nieprawidłowe, wywołanie konstruktora zgłasza wyjątek.If the performance counter instance you point to is not valid, calling the constructor throws an exception. To Przeciążenie może uzyskać dostęp do dowolnego licznika tylko do odczytu lub odczytu/zapisu, ale robi to w trybie tylko do odczytu.This overload can access any read-only or read/write counter, but does so in a read-only mode. PerformanceCounterWystąpienie utworzone za pomocą tego przeciążenia nie może zapisywać w liczniku, nawet jeśli sam licznik jest odczyt/zapis.A PerformanceCounter instance created using this overload cannot write to the counter, even if the counter itself is read/write.

Uwaga

Nie można zapisywać w zdalnych licznikach wydajności.You cannot write to remote performance counters. Nie ma przeciążenia, które pozwala określić wystąpienie odczytu/zapisu PerformanceCounter klasy, która łączy się z komputerem zdalnym.There is no overload that allows you to specify a read/write instance of the PerformanceCounter class that connects to a remote computer.

Aby utworzyć wystąpienie kategorii wydajności, określ instanceName wartość w PerformanceCounter konstruktorze.To create a performance category instance, specify an instanceName on the PerformanceCounter constructor. Jeśli wystąpienie kategorii określone przez instanceName już istnieje, nowy obiekt będzie odwoływać się do istniejącego wystąpienia kategorii.If the category instance specified by instanceName already exists the new object will reference the existing category instance.

Uwaga

Aby odczytać liczniki wydajności w systemie Windows Vista, Windows XP Professional x64 Edition lub Windows Server 2003, trzeba być członkiem grupy Użytkownicy monitora wydajności lub mieć uprawnienia administracyjne.To read performance counters in Windows Vista, Windows XP Professional x64 Edition, or Windows Server 2003, you must either be a member of the Performance Monitor Users group or have administrative privileges.

Aby uniknąć konieczności podniesienia uprawnień dostępu do liczników wydajności w systemie Windows Vista, należy dodać siebie do grupy Użytkownicy monitora wydajności.To avoid having to elevate your privileges to access performance counters in Windows Vista, add yourself to the Performance Monitor Users group.

W systemie Windows Vista Kontrola konta użytkownika (UAC) określa uprawnienia użytkownika.In Windows Vista, User Account Control (UAC) determines the privileges of a user. Jeśli jesteś członkiem wbudowanej grupy Administratorzy, masz przypisane dwa tokeny dostępu w czasie wykonywania: token dostępu użytkownika standardowego i token dostępu administratora.If you are a member of the Built-in Administrators group, you are assigned two run-time access tokens: a standard user access token and an administrator access token. Domyślnie jesteś w roli użytkownika standardowego.By default, you are in the standard user role. Aby wykonać kod, który uzyskuje dostęp do liczników wydajności, należy najpierw podnieść poziom uprawnień użytkownika standardowego do administratora.To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. Można to zrobić podczas uruchamiania aplikacji przez kliknięcie prawym przyciskiem myszy ikony aplikacji i wskazanie, że chcesz uruchomić program jako administrator.You can do this when you start an application by right-clicking the application icon and indicating that you want to run as an administrator.

Uwaga

W systemie Windows Vista, gdy komputer zdalny jest członkiem grupy roboczej, może być konieczne wyłączenie funkcji Kontrola konta użytkownika, aby nie odfiltrowanych kont użytkowników lokalnych i umożliwić podwyższenie poziomu konta administratora.In Windows Vista, when the remote computer is a member of a workgroup, you may need to disable UAC so that the local user account is not filtered and can be elevated to an administrator account. Ze względów bezpieczeństwa wyłączenie funkcji Kontrola konta użytkownika powinno być ostatnim etapem.For security reasons, disabling UAC should be a last resort. Aby uzyskać informacje na temat wyłączania funkcji UAC, zobacz Kontrola konta użytkownika i WMI.For information on disabling UAC, see User Account Control and WMI.

Dotyczy