Partilhar via


EventLog.DeleteEventSource Método

Definição

Remove o registro da origem do evento de um aplicativo do log de eventos.

Sobrecargas

DeleteEventSource(String)

Remove o registro da origem do evento do log de eventos do computador local.

DeleteEventSource(String, String)

Remove o registro da fonte de eventos do aplicativo do computador especificado.

DeleteEventSource(String)

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Remove o registro da origem do evento do log de eventos do computador local.

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

Parâmetros

source
String

O nome pelo qual o aplicativo está registrado no sistema de log de eventos.

Exceções

O parâmetro source não existe no Registro do computador local.

- ou -

Você não tem acesso para gravação na chave do Registro para o log de eventos.

Exemplos

O exemplo a seguir exclui uma origem do computador local. O exemplo determina o log de sua origem e exclui o log.

Observação

Mais de uma fonte pode gravar em um log de eventos. Antes de excluir um log personalizado, verifique se não há outras fontes gravando nesse log.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::Threading;
int main()
{
   String^ logName;
   if ( EventLog::SourceExists( "MySource" ) )
   {
      
      // Find the log associated with this source.    
      logName = EventLog::LogNameFromSourceName( "MySource", "." );
      // Make sure the source is in the log we believe it to be in
      if (logName != "MyLog")
          return -1;
      // Delete the source and the log.
      EventLog::DeleteEventSource( "MySource" );
      EventLog::Delete( logName );
      Console::WriteLine( "{0} deleted.", logName );
   }
   else
        {
            // Create the event source to make next try successful.
            EventLog::CreateEventSource("MySource", "MyLog");
        }
}
using System;
using System.Diagnostics;
using System.Threading;

class MySample1
{
    public static void Main()
    {
        string logName;

        if (EventLog.SourceExists("MySource"))
        {
            // Find the log associated with this source.
            logName = EventLog.LogNameFromSourceName("MySource", ".");
            // Make sure the source is in the log we believe it to be in.
            if (logName != "MyLog")
                return;
            // Delete the source and the log.
            EventLog.DeleteEventSource("MySource");
            EventLog.Delete(logName);

            Console.WriteLine(logName + " deleted.");
        }
        else
        {
            // Create the event source to make next try successful.
            EventLog.CreateEventSource("MySource", "MyLog");
        }
    }
}
Option Explicit On
Option Strict On

Imports System.Diagnostics
Imports System.Threading

Class MySample
    Public Shared Sub Main()
        Dim logName As String

        If EventLog.SourceExists("MySource") Then
            ' Find the log associated with this source.    
            logName = EventLog.LogNameFromSourceName("MySource", ".")
            ' Make sure the source is in the log we believe it to be in
            If (logName <> "MyLog") Then
                Return
            End If
            ' Delete the source and the log.
            EventLog.DeleteEventSource("MySource")
            EventLog.Delete(logName)

            Console.WriteLine((logName & " deleted."))
        Else
            ' Create the event source to make next try successful.
            EventLog.CreateEventSource("MySource", "MyLog")
        End If
    End Sub
End Class

Comentários

Use esse método para remover o registro de um Source do computador local. DeleteEventSource acessa o registro no computador local e remove o registro do aplicativo como uma fonte válida de eventos.

Você poderá remover o componente como uma fonte válida de eventos se não precisar mais dele para gravar entradas nesse log. Por exemplo, você poderá fazer isso se precisar alterar o componente de um log para outro. Como uma fonte só pode ser registrada em um log por vez, alterar o log exige que você remova o registro atual.

DeleteEventSource remove apenas a origem registrada em um log. Se você quiser remover o log em si, chame Delete. Se você quiser apenas excluir as entradas de log, chame Clear. Delete e DeleteEventSource são static métodos, para que possam ser chamados na própria classe. Não é necessário criar uma instância de EventLog para chamar qualquer método.

Excluir um log por meio de uma chamada para Delete excluir automaticamente as fontes registradas nesse log. Isso pode tornar outros aplicativos usando esse log inoperante.

Observação

Se uma origem já tiver sido mapeada para um log e você o remapear para um novo log, reinicie o computador para que as alterações entrem em vigor.

Confira também

Aplica-se a

DeleteEventSource(String, String)

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Remove o registro da fonte de eventos do aplicativo do computador especificado.

public:
 static void DeleteEventSource(System::String ^ source, System::String ^ machineName);
public static void DeleteEventSource (string source, string machineName);
static member DeleteEventSource : string * string -> unit
Public Shared Sub DeleteEventSource (source As String, machineName As String)

Parâmetros

source
String

O nome pelo qual o aplicativo está registrado no sistema de log de eventos.

machineName
String

O nome do computador do qual remover o registro ou "." para o computador local.

Exceções

O parâmetro machineName é inválido.

- ou -

O parâmetro source não existe no Registro do computador especificado.

- ou -

Você não tem acesso para gravação na chave do Registro para o log de eventos.

source não pode ser excluída porque no Registro, a chave do Registro pai para source não contém uma subchave com o mesmo nome.

Exemplos

O exemplo a seguir exclui uma origem do computador especificado. O exemplo determina o log de sua origem e exclui o log.

Observação

Mais de uma fonte pode gravar em um log de eventos. Antes de excluir um log personalizado, verifique se não há outras fontes gravando nesse log.

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::Threading;
int main()
{
   String^ logName;
   if ( EventLog::SourceExists( "MySource", "MyMachine") )
   {
      
      // Find the log associated with this source.    
      logName = EventLog::LogNameFromSourceName( "MySource", "MyMachine" );
      // Make sure the source is in the log we believe it to be in
      if (logName != "MyLog")
          return -1;
      // Delete the source and the log.
      EventLog::DeleteEventSource( "MySource", "MyMachine" );
      EventLog::Delete( logName, "MyMachine" );
      Console::WriteLine( "{0} deleted.", logName );
   }
   else
        {
            // Create the event source to make next try successful.
            EventSourceCreationData^ mySourceData = gcnew EventSourceCreationData("MySource", "MyLog");
            mySourceData->MachineName = "MyMachine";
            EventLog::CreateEventSource(mySourceData);
        }
}
using System;
using System.Diagnostics;
using System.Threading;

class MySample
{
    public static void Main()
    {
        string logName;

        if (EventLog.SourceExists("MySource", "MyMachine"))
        {
            // Find the log associated with this source.
            logName = EventLog.LogNameFromSourceName("MySource", "MyMachine");
            // Make sure the source is in the log we believe it to be in.
            if (logName != "MyLog")
                return;
            // Delete the source and the log.
            EventLog.DeleteEventSource("MySource", "MyMachine");
            EventLog.Delete(logName, "MyMachine");

            Console.WriteLine(logName + " deleted.");
        }
        else
        {
            // Create the event source to make next try successful.
            EventSourceCreationData mySourceData = new EventSourceCreationData("MySource", "MyLog");
            mySourceData.MachineName = "MyMachine";
            EventLog.CreateEventSource(mySourceData);
        }
    }
}
Option Explicit On
Option Strict On

Imports System.Diagnostics
Imports System.Threading

Class MySample
    Public Shared Sub Main()
        Dim logName As String

        If EventLog.SourceExists("MySource", "MyMachine") Then
            ' Find the log associated with this source.    
            logName = EventLog.LogNameFromSourceName("MySource", "MyMachine")
            ' Make sure the source is in the log we believe it to be in
            If (logName <> "MyLog") Then
                Return
            End If
            ' Delete the source and the log.
            EventLog.DeleteEventSource("MySource", "MyMachine")
            EventLog.Delete(logName, "MyMachine")

            Console.WriteLine((logName & " deleted."))
        Else
            ' Create the event source to make next try successful.
            Dim mySourceData As New EventSourceCreationData("MySource", "MyLog")
            mySourceData.MachineName = "MyMachine"
            EventLog.CreateEventSource(mySourceData)
        End If
    End Sub
End Class

Comentários

Use essa sobrecarga para remover o registro de um Source de um computador remoto. DeleteEventSource acessa o registro no computador especificado por machineName e remove o registro do aplicativo como uma fonte válida de eventos.

Você poderá remover o componente como uma fonte válida de eventos se não precisar mais dele para gravar entradas nesse log. Por exemplo, você poderá fazer isso se precisar alterar o componente de um log para outro. Como uma fonte só pode ser registrada em um log por vez, alterar o log exige que você remova o registro atual.

DeleteEventSource remove apenas a origem registrada em um log. Se você quiser remover o log em si, chame Delete. Se você quiser apenas excluir as entradas de log, chame Clear. Delete e DeleteEventSource são static métodos, para que possam ser chamados na própria classe. Não é necessário criar uma instância de EventLog para chamar qualquer método.

Excluir um log por meio de uma chamada para Delete excluir automaticamente as fontes registradas nesse log. Isso pode tornar outros aplicativos usando esse log inoperante.

Observação

Se uma origem já tiver sido mapeada para um log e você o remapear para um novo log, reinicie o computador para que as alterações entrem em vigor.

Confira também

Aplica-se a