PerformanceCounter Construtores

Definição

Inicializa uma nova instância da classe PerformanceCounter.Initializes a new instance of the PerformanceCounter class.

Sobrecargas

PerformanceCounter()

Inicializa uma nova instância somente leitura da classe PerformanceCounter, sem associar a instância a nenhum sistema ou contador de desempenho personalizado.Initializes a new, read-only instance of the PerformanceCounter class, without associating the instance with any system or custom performance counter.

PerformanceCounter(String, String)

Inicializa uma instância nova e somente leitura da classe PerformanceCounter e a associa ao contador de desempenho personalizado ou do sistema, especificado no computador local.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. Este construtor requer que a categoria de tenha uma única instância.This constructor requires that the category have a single instance.

PerformanceCounter(String, String, Boolean)

Inicializa uma instância nova e somente leitura ou de leitura/gravação da classe PerformanceCounter e a associa ao contador de desempenho personalizado ou do sistema especificado no computador local.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. Este construtor requer que a categoria contenha uma única instância.This constructor requires that the category contain a single instance.

PerformanceCounter(String, String, String)

Inicializa uma instância nova e somente leitura da classe PerformanceCounter e a associa ao sistema especificado ou ao contador de desempenho personalizado e à instância de categoria no computador local.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)

Inicializa uma instância nova e somente leitura ou de leitura/gravação da classe PerformanceCounter e a associa ao sistema especificado ou ao contador de desempenho personalizado e à instância de categoria no computador local.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)

Inicializa uma instância nova e somente leitura da classe PerformanceCounter e a associa ao sistema especificado ou ao contador de desempenho personalizado e à instância de categoria no computador especificado.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()

Inicializa uma nova instância somente leitura da classe PerformanceCounter, sem associar a instância a nenhum sistema ou contador de desempenho personalizado.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 ()

Exemplos

O exemplo de código a seguir cria uma instância padrão da PerformanceCounter classe.The following code example creates a default instance of the PerformanceCounter class. Depois que a instância é criada, CategoryName os CounterName valores de propriedade,, e InstanceName são definidos, e os resultados de uma chamada para o NextValue método são exibidos.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())

Comentários

Essa sobrecarga do construtor define as CategoryName Propriedades, CounterName e InstanceName como cadeias de caracteres vazias (""), e define a MachineName propriedade para o computador local, (".").This overload of the constructor sets the CategoryName, CounterName, and InstanceName properties to empty strings (""), and sets the MachineName property to the local computer, (".").

Esse construtor não inicializa o contador de desempenho, portanto, não associa a instância a um contador existente no computador local.This constructor does not initialize the performance counter, so it does not associate the instance with an existing counter on the local computer. Para apontar para um contador de desempenho específico, defina a CategoryName , CounterName e, opcionalmente, as InstanceName MachineName Propriedades e antes de ler qualquer outra propriedade ou tentar ler a partir de um contador.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. Para gravar em um contador de desempenho, defina a ReadOnly propriedade como false .To write to a performance counter, set the ReadOnly property to false.

Observação

O HostProtectionAttribute atributo aplicado a esse membro tem o seguinte Resources valor de propriedade: Synchronization | SharedState .The HostProtectionAttribute attribute applied to this member has the following Resources property value: Synchronization | SharedState. HostProtectionAttribute não afeta aplicativos de área de trabalho (que são normalmente iniciados com o clique duplo em um ícone, a digitação de um comando ou a inserção de uma URL em um navegador).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). Para obter mais informações, consulte a HostProtectionAttribute classe ou os atributos de proteção de host e de programação de SQL Server.For more information, see the HostProtectionAttribute class or SQL Server Programming and Host Protection Attributes.

Aplica-se a

PerformanceCounter(String, String)

Inicializa uma instância nova e somente leitura da classe PerformanceCounter e a associa ao contador de desempenho personalizado ou do sistema, especificado no computador local.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. Este construtor requer que a categoria de tenha uma única instância.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)

Parâmetros

categoryName
String

O nome da categoria de contador de desempenho (objeto de desempenho) ao qual este contador de desempenho está associado.The name of the performance counter category (performance object) with which this performance counter is associated.

counterName
String

O nome do contador de desempenho.The name of the performance counter.

Exceções

categoryName é uma cadeia de caracteres vazia ("").categoryName is an empty string ("").

- ou --or- counterName é uma cadeia de caracteres vazia ("").counterName is an empty string ("").

- ou --or- A categoria especificada não existe.The category specified does not exist.

- ou --or- A categoria especificada está marcada como várias instâncias e requer que o contador de desempenho seja criado com um nome de instância.The category specified is marked as multi-instance and requires the performance counter to be created with an instance name.

- ou --or- categoryName e counterName foram localizados em diferentes idiomas.categoryName and counterName have been localized into different languages.

categoryName ou counterName é null.categoryName or counterName is null.

Ocorreu um erro ao acessar uma API do sistema.An error occurred when accessing a system API.

Um código em execução sem privilégios administrativos tentou ler um contador de desempenho.Code that is executing without administrative privileges attempted to read a performance counter.

Comentários

As cadeias de caracteres de parâmetro não diferenciam maiúsculas de minúsculas.The parameter strings are not case-sensitive.

Use essa sobrecarga para acessar um contador no computador local que pertence a uma categoria que contém uma única instância de categoria de contador de desempenho.Use this overload to access a counter on the local computer that belongs to a category containing a single performance counter category instance. Se você tentar usar esse construtor para apontar essa PerformanceCounter instância para uma categoria que contém várias instâncias, o construtor lançará uma exceção.If you attempt to use this constructor to point this PerformanceCounter instance to a category that contains multiple instances, the constructor throws an exception. Essa sobrecarga pode acessar qualquer contador somente leitura ou de leitura/gravação, mas faz isso em um modo somente leitura.This overload can access any read-only or read/write counter, but does so in a read-only mode. Uma PerformanceCounter instância criada usando essa sobrecarga não pode gravar no contador, mesmo que o próprio contador seja leitura/gravação.A PerformanceCounter instance created using this overload cannot write to the counter, even if the counter itself is read/write.

Essa sobrecarga do construtor define as CategoryName Propriedades e CounterName para os valores que você passa, define a MachineName propriedade para o computador local, "." e define a InstanceName propriedade como uma cadeia de caracteres vazia ("").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 ("").

Esse construtor inicializa o contador de desempenho e associa a instância a um contador existente (um sistema ou um contador personalizado) no computador local.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. Os valores que você passa para as CategoryName Propriedades e CounterName devem apontar para um contador de desempenho existente no computador local.The values that you pass in for the CategoryName and CounterName properties must point to an existing performance counter on the local computer.

Observação

Para ler os contadores de desempenho de uma sessão de logon não interativa no Windows Vista e posterior, no Windows XP Professional x64 Edition ou no Windows Server 2003, você deve ser um membro do grupo usuários do monitor de desempenho ou ter privilégios administrativos.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.

Para evitar a elevação de seus privilégios para acessar os contadores de desempenho no Windows Vista, adicione-se ao grupo usuários do monitor de desempenho.To avoid having to elevate your privileges to access performance counters in Windows Vista, add yourself to the Performance Monitor Users group.

No Windows Vista, o UAC (controle de conta de usuário) determina os privilégios de um usuário.In Windows Vista, User Account Control (UAC) determines the privileges of a user. Se for um membro do grupo Administradores Internos, você receberá dois tokens de acesso do tempo de execução: um token de acesso do usuário padrão e um token de acesso do administrador.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. Por padrão, você está na função de usuário padrão.By default, you are in the standard user role. Para executar o código que acessa contadores de desempenho, você deve primeiro elevar seus privilégios do usuário padrão para o administrador.To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. Você pode fazer isso ao iniciar um aplicativo clicando com o botão direito do mouse no ícone do aplicativo e indicando que deseja executar como administrador.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.

Aplica-se a

PerformanceCounter(String, String, Boolean)

Inicializa uma instância nova e somente leitura ou de leitura/gravação da classe PerformanceCounter e a associa ao contador de desempenho personalizado ou do sistema especificado no computador local.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. Este construtor requer que a categoria contenha uma única instância.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)

Parâmetros

categoryName
String

O nome da categoria de contador de desempenho (objeto de desempenho) ao qual este contador de desempenho está associado.The name of the performance counter category (performance object) with which this performance counter is associated.

counterName
String

O nome do contador de desempenho.The name of the performance counter.

readOnly
Boolean

true para acessar o contador no modo somente leitura (embora o próprio contador possa ser de leitura/gravação); false para acessar o contador no modo de leitura/gravação.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.

Exceções

O categoryName é uma cadeia de caracteres vazia ("").The categoryName is an empty string ("").

- ou --or- O counterName é uma cadeia de caracteres vazia ("").The counterName is an empty string ("").

- ou --or- A categoria especificada não existe.The category specified does not exist. (se readOnly for true).(if readOnly is true).

- ou --or- A categoria especificada não é uma categoria personalizada do .NET Framework (se readOnly for false).The category specified is not a .NET Framework custom category (if readOnly is false).

- ou --or- A categoria especificada está marcada como várias instâncias e requer que o contador de desempenho seja criado com um nome de instância.The category specified is marked as multi-instance and requires the performance counter to be created with an instance name.

- ou --or- categoryName e counterName foram localizados em diferentes idiomas.categoryName and counterName have been localized into different languages.

categoryName ou counterName é null.categoryName or counterName is null.

Ocorreu um erro ao acessar uma API do sistema.An error occurred when accessing a system API.

Um código em execução sem privilégios administrativos tentou ler um contador de desempenho.Code that is executing without administrative privileges attempted to read a performance counter.

Exemplos

O exemplo de código a seguir cria uma instância da PerformanceCounter classe.The following code example creates an instance of the PerformanceCounter class. O exemplo passa nomes de categoria, nomes de contadores e um valor de sinalizador que indica que o contador não é somente leitura.The example passes in category names, counter names, and a flag value indicating that the counter is not read-only. Este exemplo de código faz parte de um exemplo maior para a PerformanceCounter classe.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)

Comentários

As cadeias de caracteres de parâmetro não diferenciam maiúsculas de minúsculas.The parameter strings are not case-sensitive.

Use essa sobrecarga para acessar um contador somente leitura ou de leitura/gravação no computador local que pertence a uma categoria que contém uma única instância de categoria de contador de desempenho.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. Se você tentar usar esse construtor para apontar essa PerformanceCounter instância para uma categoria que contém várias instâncias, o construtor lançará uma exceção.If you attempt to use this constructor to point this PerformanceCounter instance to a category that contains multiple instances, the constructor throws an exception.

Essa sobrecarga do construtor define as CategoryName Propriedades, CounterName e ReadOnly para os valores que você passa, define a MachineName propriedade para o computador local, "." e define a InstanceName propriedade como uma cadeia de caracteres vazia ("").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 ("").

Esse construtor inicializa o contador de desempenho e associa a instância a um contador existente (um sistema ou um contador personalizado) no computador local.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. Os valores que você passa para as CategoryName Propriedades e CounterName devem apontar para um contador de desempenho existente no computador local.The values that you pass in for the CategoryName and CounterName properties must point to an existing performance counter on the local computer. Se a instância do contador de desempenho para a qual você aponta não for válida, chamar o construtor lançará uma exceção.If the performance counter instance that you point to is not valid, calling the constructor throws an exception.

Observação

Você pode usar essa sobrecarga para se conectar a um contador do sistema, mas não pode gravar em um contador do sistema.You can use this overload to connect to a system counter, but you cannot write to a system counter. Portanto, readOnly a configuração para ao false se conectar a um contador do sistema faz com que o Construtor gere uma exceção.Therefore, setting readOnly to false when connecting to a system counter causes the constructor to throw an exception.

Observação

Para ler os contadores de desempenho de uma sessão de logon não interativa no Windows Vista e posterior, no Windows XP Professional x64 Edition ou no Windows Server 2003, você deve ser um membro do grupo usuários do monitor de desempenho ou ter privilégios administrativos.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.

Para evitar a elevação de seus privilégios para acessar os contadores de desempenho no Windows Vista, adicione-se ao grupo usuários do monitor de desempenho.To avoid having to elevate your privileges to access performance counters in Windows Vista, add yourself to the Performance Monitor Users group.

No Windows Vista, o UAC (controle de conta de usuário) determina os privilégios de um usuário.In Windows Vista, User Account Control (UAC) determines the privileges of a user. Se for um membro do grupo Administradores Internos, você receberá dois tokens de acesso do tempo de execução: um token de acesso do usuário padrão e um token de acesso do administrador.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. Por padrão, você está na função de usuário padrão.By default, you are in the standard user role. Para executar o código que acessa contadores de desempenho, você deve primeiro elevar seus privilégios do usuário padrão para o administrador.To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. Você pode fazer isso ao iniciar um aplicativo clicando com o botão direito do mouse no ícone do aplicativo e indicando que deseja executar como administrador.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.

Aplica-se a

PerformanceCounter(String, String, String)

Inicializa uma instância nova e somente leitura da classe PerformanceCounter e a associa ao sistema especificado ou ao contador de desempenho personalizado e à instância de categoria no computador local.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)

Parâmetros

categoryName
String

O nome da categoria de contador de desempenho (objeto de desempenho) ao qual este contador de desempenho está associado.The name of the performance counter category (performance object) with which this performance counter is associated.

counterName
String

O nome do contador de desempenho.The name of the performance counter.

instanceName
String

O nome da instância de categoria do contador de desempenho ou uma cadeia de caracteres vazia ("") se a categoria contiver uma única instância.The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.

Exceções

categoryName é uma cadeia de caracteres vazia ("").categoryName is an empty string ("").

- ou --or- counterName é uma cadeia de caracteres vazia ("").counterName is an empty string ("").

- ou --or- A categoria especificada não é válida.The category specified is not valid.

- ou --or- A categoria especificada está marcada como várias instâncias e requer que o contador de desempenho seja criado com um nome de instância.The category specified is marked as multi-instance and requires the performance counter to be created with an instance name.

- ou --or- instanceName tem mais de 127 caracteres.instanceName is longer than 127 characters.

- ou --or- categoryName e counterName foram localizados em diferentes idiomas.categoryName and counterName have been localized into different languages.

categoryName ou counterName é null.categoryName or counterName is null.

Ocorreu um erro ao acessar uma API do sistema.An error occurred when accessing a system API.

Um código em execução sem privilégios administrativos tentou ler um contador de desempenho.Code that is executing without administrative privileges attempted to read a performance counter.

Comentários

As cadeias de caracteres de parâmetro não diferenciam maiúsculas de minúsculas.The parameter strings are not case-sensitive.

Essa sobrecarga do construtor define as CategoryName Propriedades, CounterName , e InstanceName para os valores que você passa e define a MachineName propriedade para o computador local ".".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, ".".

Esse construtor inicializa o contador de desempenho e associa a instância a um contador existente (um sistema ou um contador personalizado) no computador local.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. Os valores que você passa para as CategoryName Propriedades, CounterName e InstanceName devem apontar para um contador de desempenho existente no computador local.The values that you pass in for the CategoryName, CounterName, and InstanceName properties must point to an existing performance counter on the local computer. Se a instância do contador de desempenho que você apontar para não for válida, chamar o construtor lançará uma exceção.If the performance counter instance you point to is not valid, calling the constructor throws an exception.

Essa sobrecarga pode acessar qualquer contador somente leitura ou de leitura/gravação, mas faz isso em um modo somente leitura.This overload can access any read-only or read/write counter, but does so in a read-only mode. Uma PerformanceCounter instância criada usando essa sobrecarga não pode gravar no contador, mesmo que o próprio contador seja leitura/gravação.A PerformanceCounter instance created using this overload cannot write to the counter, even if the counter itself is read/write.

Para criar uma instância de categoria de desempenho, especifique um instanceName no PerformanceCounter Construtor.To create a performance category instance, specify an instanceName on the PerformanceCounter constructor. Se a instância de categoria especificada por instanceName já existir, o novo objeto fará referência à instância de categoria existente.If the category instance specified by instanceName already exists the new object will reference the existing category instance.

Observação

Para ler os contadores de desempenho no Windows Vista, no Windows XP Professional x64 Edition ou no Windows Server 2003, você deve ser membro do grupo usuários do monitor de desempenho ou ter privilégios administrativos.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.

Para evitar a elevação de seus privilégios para acessar os contadores de desempenho no Windows Vista, adicione-se ao grupo usuários do monitor de desempenho.To avoid having to elevate your privileges to access performance counters in Windows Vista, add yourself to the Performance Monitor Users group.

No Windows Vista, o UAC (controle de conta de usuário) determina os privilégios de um usuário.In Windows Vista, User Account Control (UAC) determines the privileges of a user. Se for um membro do grupo Administradores Internos, você receberá dois tokens de acesso do tempo de execução: um token de acesso do usuário padrão e um token de acesso do administrador.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. Por padrão, você está na função de usuário padrão.By default, you are in the standard user role. Para executar o código que acessa contadores de desempenho, você deve primeiro elevar seus privilégios do usuário padrão para o administrador.To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. Você pode fazer isso ao iniciar um aplicativo clicando com o botão direito do mouse no ícone do aplicativo e indicando que deseja executar como administrador.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.

Aplica-se a

PerformanceCounter(String, String, String, Boolean)

Inicializa uma instância nova e somente leitura ou de leitura/gravação da classe PerformanceCounter e a associa ao sistema especificado ou ao contador de desempenho personalizado e à instância de categoria no computador local.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)

Parâmetros

categoryName
String

O nome da categoria de contador de desempenho (objeto de desempenho) ao qual este contador de desempenho está associado.The name of the performance counter category (performance object) with which this performance counter is associated.

counterName
String

O nome do contador de desempenho.The name of the performance counter.

instanceName
String

O nome da instância de categoria do contador de desempenho ou uma cadeia de caracteres vazia ("") se a categoria contiver uma única instância.The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.

readOnly
Boolean

true para acessar um contador no modo somente leitura e false para acessar um contador no modo de leitura/gravação.true to access a counter in read-only mode; false to access a counter in read/write mode.

Exceções

categoryName é uma cadeia de caracteres vazia ("").categoryName is an empty string ("").

- ou --or- counterName é uma cadeia de caracteres vazia ("").counterName is an empty string ("").

- ou --or- A configuração de permissão de leitura/gravação solicitada é inválida para esse contador.The read/write permission setting requested is invalid for this counter.

- ou --or- A categoria especificada não existe. (se readOnly for true).The category specified does not exist (if readOnly is true).

- ou --or- A categoria especificada não é uma categoria personalizada do .NET Framework (se readOnly for false).The category specified is not a .NET Framework custom category (if readOnly is false).

- ou --or- A categoria especificada está marcada como várias instâncias e requer que o contador de desempenho seja criado com um nome de instância.The category specified is marked as multi-instance and requires the performance counter to be created with an instance name.

- ou --or- instanceName tem mais de 127 caracteres.instanceName is longer than 127 characters.

- ou --or- categoryName e counterName foram localizados em diferentes idiomas.categoryName and counterName have been localized into different languages.

categoryName ou counterName é null.categoryName or counterName is null.

Ocorreu um erro ao acessar uma API do sistema.An error occurred when accessing a system API.

Um código em execução sem privilégios administrativos tentou ler um contador de desempenho.Code that is executing without administrative privileges attempted to read a performance counter.

Comentários

As cadeias de caracteres de parâmetro não diferenciam maiúsculas de minúsculas.The parameter strings are not case-sensitive.

Use essa sobrecarga para acessar um contador de desempenho no modo somente leitura ou de leitura/gravação.Use this overload to access a performance counter in either read-only or read/write mode.

Essa sobrecarga do construtor define as CategoryName Propriedades, CounterName e InstanceName com os valores que você passa, e define a MachineName propriedade para o computador local, ".".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, ".".

Esse construtor inicializa o contador de desempenho e associa a instância a um contador existente (um sistema ou um contador personalizado) no computador local.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. Os valores que você passa para as CategoryName Propriedades, CounterName e InstanceName devem apontar para um contador de desempenho existente no computador local.The values that you pass in for the CategoryName, CounterName, and InstanceName properties must point to an existing performance counter on the local computer. Se a instância do contador de desempenho para a qual você aponta não for válida, chamar o construtor lançará uma exceção.If the performance counter instance that you point to is not valid, calling the constructor throws an exception.

Observação

Você pode usar essa sobrecarga para se conectar a um contador do sistema, mas não pode gravar em um contador do sistema.You can use this overload to connect to a system counter, but you cannot write to a system counter. Portanto, readOnly a configuração para ao false se conectar a um contador do sistema faz com que o Construtor gere uma exceção.Therefore, setting readOnly to false when connecting to a system counter causes the constructor to throw an exception.

Para criar uma instância de categoria de desempenho, especifique um instanceName no PerformanceCounter Construtor.To create a performance category instance, specify an instanceName on the PerformanceCounter constructor. Se a instância de categoria especificada por instanceName já existir, o novo objeto fará referência à instância de categoria existente.If the category instance specified by instanceName already exists the new object will reference the existing category instance.

Observação

Para ler os contadores de desempenho no Windows Vista, no Windows XP Professional x64 Edition ou no Windows Server 2003, você deve ser membro do grupo usuários do monitor de desempenho ou ter privilégios administrativos.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.

Para evitar a elevação de seus privilégios para acessar os contadores de desempenho no Windows Vista, adicione-se ao grupo usuários do monitor de desempenho.To avoid having to elevate your privileges to access performance counters in Windows Vista, add yourself to the Performance Monitor Users group.

No Windows Vista, o UAC (controle de conta de usuário) determina os privilégios de um usuário.In Windows Vista, User Account Control (UAC) determines the privileges of a user. Se for um membro do grupo Administradores Internos, você receberá dois tokens de acesso do tempo de execução: um token de acesso do usuário padrão e um token de acesso do administrador.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. Por padrão, você está na função de usuário padrão.By default, you are in the standard user role. Para executar o código que acessa contadores de desempenho, você deve primeiro elevar seus privilégios do usuário padrão para o administrador.To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. Você pode fazer isso ao iniciar um aplicativo clicando com o botão direito do mouse no ícone do aplicativo e indicando que deseja executar como administrador.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.

Aplica-se a

PerformanceCounter(String, String, String, String)

Inicializa uma instância nova e somente leitura da classe PerformanceCounter e a associa ao sistema especificado ou ao contador de desempenho personalizado e à instância de categoria no computador especificado.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)

Parâmetros

categoryName
String

O nome da categoria de contador de desempenho (objeto de desempenho) ao qual este contador de desempenho está associado.The name of the performance counter category (performance object) with which this performance counter is associated.

counterName
String

O nome do contador de desempenho.The name of the performance counter.

instanceName
String

O nome da instância de categoria do contador de desempenho ou uma cadeia de caracteres vazia ("") se a categoria contiver uma única instância.The name of the performance counter category instance, or an empty string (""), if the category contains a single instance.

machineName
String

O computador no qual o contador de desempenho e sua categoria associada existem.The computer on which the performance counter and its associated category exist.

Exceções

categoryName é uma cadeia de caracteres vazia ("").categoryName is an empty string ("").

- ou --or- counterName é uma cadeia de caracteres vazia ("").counterName is an empty string ("").

- ou --or- A configuração de permissão de leitura/gravação solicitada é inválida para esse contador.The read/write permission setting requested is invalid for this counter.

- ou --or- O contador não existe no computador especificado.The counter does not exist on the specified computer.

- ou --or- A categoria especificada está marcada como várias instâncias e requer que o contador de desempenho seja criado com um nome de instância.The category specified is marked as multi-instance and requires the performance counter to be created with an instance name.

- ou --or- instanceName tem mais de 127 caracteres.instanceName is longer than 127 characters.

- ou --or- categoryName e counterName foram localizados em diferentes idiomas.categoryName and counterName have been localized into different languages.

O parâmetro machineName não é válido.The machineName parameter is not valid.

categoryName ou counterName é null.categoryName or counterName is null.

Ocorreu um erro ao acessar uma API do sistema.An error occurred when accessing a system API.

Um código em execução sem privilégios administrativos tentou ler um contador de desempenho.Code that is executing without administrative privileges attempted to read a performance counter.

Comentários

As cadeias de caracteres de parâmetro não diferenciam maiúsculas de minúsculas.The parameter strings are not case-sensitive.

Essa sobrecarga do construtor define as CategoryName Propriedades, CounterName , e InstanceName MachineName para os valores que você passa.This overload of the constructor sets the CategoryName, CounterName, InstanceName, and MachineName properties to the values you pass in.

Esse construtor inicializa o contador de desempenho e associa a instância a um contador existente (um sistema ou um contador personalizado) no computador especificado.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. Os valores que você passa para as CategoryName Propriedades, CounterName InstanceName e MachineName devem apontar para um contador de desempenho existente.The values that you pass in for the CategoryName, CounterName, InstanceName and MachineName properties must point to an existing performance counter. Se a instância do contador de desempenho que você apontar para não for válida, chamar o construtor lançará uma exceção.If the performance counter instance you point to is not valid, calling the constructor throws an exception. Essa sobrecarga pode acessar qualquer contador somente leitura ou de leitura/gravação, mas faz isso em um modo somente leitura.This overload can access any read-only or read/write counter, but does so in a read-only mode. Uma PerformanceCounter instância criada usando essa sobrecarga não pode gravar no contador, mesmo que o próprio contador seja leitura/gravação.A PerformanceCounter instance created using this overload cannot write to the counter, even if the counter itself is read/write.

Observação

Não é possível gravar em contadores de desempenho remotos.You cannot write to remote performance counters. Não há sobrecarga que permita que você especifique uma instância de leitura/gravação da PerformanceCounter classe que se conecta a um computador remoto.There is no overload that allows you to specify a read/write instance of the PerformanceCounter class that connects to a remote computer.

Para criar uma instância de categoria de desempenho, especifique um instanceName no PerformanceCounter Construtor.To create a performance category instance, specify an instanceName on the PerformanceCounter constructor. Se a instância de categoria especificada por instanceName já existir, o novo objeto fará referência à instância de categoria existente.If the category instance specified by instanceName already exists the new object will reference the existing category instance.

Observação

Para ler os contadores de desempenho no Windows Vista, no Windows XP Professional x64 Edition ou no Windows Server 2003, você deve ser membro do grupo usuários do monitor de desempenho ou ter privilégios administrativos.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.

Para evitar a elevação de seus privilégios para acessar os contadores de desempenho no Windows Vista, adicione-se ao grupo usuários do monitor de desempenho.To avoid having to elevate your privileges to access performance counters in Windows Vista, add yourself to the Performance Monitor Users group.

No Windows Vista, o UAC (controle de conta de usuário) determina os privilégios de um usuário.In Windows Vista, User Account Control (UAC) determines the privileges of a user. Se for um membro do grupo Administradores Internos, você receberá dois tokens de acesso do tempo de execução: um token de acesso do usuário padrão e um token de acesso do administrador.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. Por padrão, você está na função de usuário padrão.By default, you are in the standard user role. Para executar o código que acessa contadores de desempenho, você deve primeiro elevar seus privilégios do usuário padrão para o administrador.To execute the code that accesses performance counters, you must first elevate your privileges from standard user to administrator. Você pode fazer isso ao iniciar um aplicativo clicando com o botão direito do mouse no ícone do aplicativo e indicando que deseja executar como administrador.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.

Observação

No Windows Vista, quando o computador remoto é membro de um grupo de trabalho, talvez seja necessário desabilitar o UAC para que a conta de usuário local não seja filtrada e possa ser elevada para uma conta de administrador.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. Por motivos de segurança, desabilitar o UAC deve ser um último recurso.For security reasons, disabling UAC should be a last resort. Para obter informações sobre como desabilitar o UAC, consulte controle de conta de usuário e WMI.For information on disabling UAC, see User Account Control and WMI.

Aplica-se a