Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Método PerformanceCounterCategory.GetCategories ()

 

Publicado: octubre de 2016

Recupera una lista de las categorías de contador de rendimiento que están registrados en el equipo local.

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

Public Shared Function GetCategories As PerformanceCounterCategory()

Valor devuelto

Type: System.Diagnostics.PerformanceCounterCategory()

Una matriz de PerformanceCounterCategory objetos que indica las categorías que están registradas en el equipo local.

Exception Condition
Win32Exception

Error en una llamada a una API del sistema subyacente.

UnauthorizedAccessException

Código que se ejecuta sin privilegios administrativos intentó leer un contador de rendimiento.

System_CAPS_noteNota

Para leer los contadores de rendimiento en Windows Vista y versiones posteriores, Windows XP Professional x64 Edition o Windows Server 2003, debe ser miembro del grupo usuarios del Monitor de rendimiento o tener privilegios administrativos.

Para evitar tener que elevar sus privilegios para tener acceso a los contadores de rendimiento en Windows Vista y versiones posteriores, agréguese al grupo usuarios del Monitor de rendimiento.

En Windows Vista y versiones posteriores, el Control de cuentas de usuario (UAC) determina los privilegios de un usuario. Si es miembro del grupo Administradores integrados, se le asignarán dos símbolos (tokens) de acceso en tiempo de ejecución: un símbolo (token) de acceso de usuario estándar y un símbolo (token) de acceso de administrador. De forma predeterminada, se le asignará el rol de usuario estándar. Para ejecutar el código que tiene acceso a los contadores de rendimiento, primero debe elevar sus privilegios de usuario estándar a administrador. Para ello, inicie una aplicación haciendo clic con el botón derecho en el icono de la aplicación e indique que desea ejecutarla como administrador.

El siguiente ejemplo de código utiliza el GetCategories para devolver una matriz de PerformanceCounterCategory objetos desde el equipo local o un equipo especificado. Convierte el PerformanceCounterCategory matriz en una matriz de nombres de categoría, que se ordena y se muestra al usuario. El GetCategories sobrecarga se selecciona basándose en si se ha especificado un nombre de equipo.

Sub Main(ByVal args() As String)
    Dim machineName As String = ""
    Dim categories() As PerformanceCounterCategory

    ' Copy the machine name argument into the local variable.
    Try
        machineName = IIf(args(0) = ".", "", args(0))
    Catch ex As Exception
    End Try

    ' Generate a list of categories registered on the specified computer.
    Try
        If machineName.Length > 0 Then
            categories = _
                PerformanceCounterCategory.GetCategories(machineName)
        Else
            categories = PerformanceCounterCategory.GetCategories()
        End If
    Catch ex As Exception
        Console.WriteLine("Unable to get categories on " & _
            IIf(machineName.Length > 0, "computer ""{0}"":", _
            "this computer:"), machineName)
        Console.WriteLine(ex.Message)
        Return
    End Try

    Console.WriteLine("These categories are registered on " & _
        IIf(machineName.Length > 0, _
            "computer ""{0}"":", "this computer:"), machineName)

    ' Create and sort an array of category names.
    Dim categoryNames(categories.Length - 1) As String
    Dim objX As Integer
    For objX = 0 To categories.Length - 1
        Console.WriteLine("{0}, {1}", objX, categories(objX).CategoryName)
        categoryNames(objX) = categories(objX).CategoryName
    Next objX
    Array.Sort(categoryNames)

    For objX = 0 To categories.Length - 1
        Console.WriteLine("{0,4} - {1}", objX + 1, categoryNames(objX))
    Next objX
End Sub

PerformanceCounterPermission

for reading performance counter categories. Associated enumeration: F:System.Diagnostics.PerformanceCounterPermissionAccess.Read.

.NET Framework
Disponible desde 1.1
Volver al principio
Mostrar: