Esta documentación está archivada y no tiene mantenimiento.

PerformanceCounterCategory.CounterExists (Método) (String)

Determina si el contador especificado está registrado en esta categoría; esta información se indica mediante las propiedades CategoryName y MachineName.

Espacio de nombres: System.Diagnostics
Ensamblado: System (en system.dll)

public bool CounterExists (
	string counterName
)
public boolean CounterExists (
	String counterName
)
public function CounterExists (
	counterName : String
) : boolean

Parámetros

counterName

Nombre del contador de rendimiento que se va a buscar.

Valor devuelto

Es true si el contador está registrado en la categoría especificada por las propiedades CategoryName y MachineName; de lo contrario, es false.

Tipo de excepciónCondición

ArgumentNullException

El valor de counterName es referencia de objeto null (Nothing en Visual Basic).

InvalidOperationException

No se ha establecido el valor de la propiedad CategoryName.

Win32Exception

Se ha producido un error en la llamada a una API del sistema subyacente.

Debe establecer la propiedad CategoryName antes de llamar a este método. De lo contrario, se producirá una excepción.

Si no se ha establecido la propiedad MachineName, este método utiliza el equipo local (".").

En el ejemplo de código siguiente se determina si existe un PerformanceCounter. Se obtiene un nombre de categoría, un nombre de contador y un nombre de equipo de la línea de comandos, si se han proporcionado. Se crea un objeto PerformanceCounterCategory mediante la sobrecarga PerformanceCounterCategoryadecuada. A continuación, se utiliza el método CounterExists(String) para determinar si existe el PerformanceCounter especificado y se informa al usuario.

Sub Main(ByVal args() As String)
    Dim categoryName As String = ""
    Dim counterName As String = ""
    Dim machineName As String = ""
    Dim objectExists As Boolean = False
    Dim pcc As PerformanceCounterCategory

    ' Copy the supplied arguments into the local variables.
    Try
        categoryName = args(0)
        counterName = args(1)
        machineName = IIf(args(2) = ".", "", args(2))
    Catch ex As Exception
        ' Ignore the exception from non-supplied arguments.
    End Try

    Try
        If machineName.Length = 0 Then
            pcc = New PerformanceCounterCategory(categoryName)
        Else
            pcc = New PerformanceCounterCategory(categoryName, machineName)
        End If

        ' Check whether the specified counter exists.
        ' Use the per-instance overload of CounterExists.
        objectExists = pcc.CounterExists(counterName)

    Catch ex As Exception
        Console.WriteLine("Unable to check for the existence of " & _
            "counter ""{0}"" in category ""{1}"" on " & _
            IIf(machineName.Length > 0, _
            "computer ""{2}"".", "this computer.") & vbCrLf & _
            ex.Message, counterName, categoryName, machineName)
        Return
    End Try

    ' Tell the user whether the counter exists.
    Console.WriteLine("Counter ""{0}"" " & _
        IIf(objectExists, "exists", "does not exist") & _
        " in category ""{1}"" on " & _
        IIf(machineName.Length > 0, _
            "computer ""{2}"".", "this computer."), _
        counterName, pcc.CategoryName, pcc.MachineName)
End Sub

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center, Windows XP Professional x64, Windows XP SP2, Windows XP Starter Edition

.NET Framework no admite todas las versiones de cada plataforma. Para obtener una lista de las versiones admitidas, vea Requisitos del sistema.

.NET Framework

Compatible con: 2.0, 1.1, 1.0
Mostrar: