Compartilhar via


PerformanceCounterCategory.Delete(String) Método

Definição

Remove a categoria e seus contadores associados do computador local.

public:
 static void Delete(System::String ^ categoryName);
public static void Delete (string categoryName);
static member Delete : string -> unit
Public Shared Sub Delete (categoryName As String)

Parâmetros

categoryName
String

O nome da categoria de contador de desempenho personalizado a ser excluída.

Exceções

O parâmetro categoryName é null.

O parâmetro categoryName tem uma sintaxe inválida. Pode conter caracteres de barra invertida (“\”) ou ter um tamanho maior que 80 caracteres.

Falha ao chamar uma API do sistema subjacente.

A categoria não pode ser excluída porque não é uma categoria personalizada.

Um código em execução sem privilégios administrativos tentou ler um contador de desempenho.

Exemplos

O exemplo de código a seguir usa o Delete método para excluir um PerformanceCounterCategory e os PerformanceCounter objetos que ele contém.

public static void Main(string[] args)
{
    string categoryName = "";

    // Copy the supplied argument into the local variable.
    try
    {
        categoryName = args[0];
    }
    catch (Exception ex)
    {
        Console.WriteLine("Missing argument identifying category to be deleted.");
    }

    // Delete the specified category.
    try
    {
        if (PerformanceCounterCategory.Exists(categoryName))
        {
            PerformanceCounterCategory.Delete(categoryName);
            Console.WriteLine("Category \"{0}\" deleted from this computer.", categoryName);
        }
        else
        {
            Console.WriteLine("Category name not found");
        }
    }
    catch (Exception ex)
    {
        Console.WriteLine("Unable to delete " +
            "category \"{0}\" from this computer:" + "\n" + ex.Message, categoryName);
    }
}
Sub Main(ByVal args() As String)
    Dim categoryName As String = ""

    ' Copy the supplied argument into the local variable.
    Try
        categoryName = args(0)
    Catch ex As Exception
        Console.WriteLine("Missing argument identifying category to be deleted.")
    End Try

    ' Delete the specified category.
    Try
        If (PerformanceCounterCategory.Exists(categoryName)) Then
            PerformanceCounterCategory.Delete(categoryName)
            Console.WriteLine( _
                "Category ""{0}"" deleted from this computer.", categoryName)
        Else
            Console.WriteLine("Category name not found")
        End If

    Catch ex As Exception
        Console.WriteLine("Unable to delete " & _
            "category ""{0}"" from this computer:" & vbCrLf & _
            ex.Message, categoryName)
    End Try
End Sub

Comentários

Você pode excluir apenas categorias de contador de desempenho personalizadas do sistema. Não é possível excluir um contador de uma categoria. Para fazer isso, exclua a categoria e recrie a categoria com os contadores que você deseja reter. Para evitar uma exceção, confirme se a categoria existe antes de tentar excluí-la.

Observação

Para ler contadores de desempenho de uma sessão de logon não interativa no Windows Vista e posterior, Windows XP Professional x64 Edition ou Windows Server 2003, você deve ser membro do grupo usuários Monitor de Desempenho ou ter privilégios administrativos.

Para evitar ter que elevar seus privilégios para acessar contadores de desempenho no Windows Vista e posterior, adicione-se ao grupo Monitor de Desempenho Usuários.

No Windows Vista e posterior, UAC (Controle de Conta de Usuário) determina os privilégios de um usuário. 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. Por padrão, você está na função de usuário padrão. Para executar o código que acessa contadores de desempenho, primeiro você deve elevar seus privilégios de usuário padrão para administrador. Você pode fazer isso ao iniciar um aplicativo, clicando com o botão direito do mouse no ícone do aplicativo e indicando que você deseja executar como administrador.

Aplica-se a

Confira também