Sdílet prostřednictvím


EventLog.DeleteEventSource Metoda

Definice

Odebere registraci zdroje událostí aplikace z protokolu událostí.

Přetížení

DeleteEventSource(String)

Odebere registraci zdroje událostí z protokolu událostí místního počítače.

DeleteEventSource(String, String)

Odebere registraci zdroje událostí aplikace z zadaného počítače.

DeleteEventSource(String)

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Odebere registraci zdroje událostí z protokolu událostí místního počítače.

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)

Parametry

source
String

Název, pod kterým je aplikace registrována v systému protokolu událostí.

Výjimky

Parametr source v registru místního počítače neexistuje.

-nebo-

Nemáte oprávnění k zápisu do klíče registru pro protokol událostí.

Příklady

Následující příklad odstraní zdroj z místního počítače. Příklad určí protokol ze svého zdroje a pak odstraní protokol.

Poznámka

Do protokolu událostí může zapisovat více než jeden zdroj. Před odstraněním vlastního protokolu se ujistěte, že do tohoto protokolu nejsou zapisují žádné další zdroje.

#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

Poznámky

Tuto metodu použijte k odebrání registrace objektu Source z místního počítače. DeleteEventSource přistupuje k registru na místním počítači a odebere registraci aplikace jako platného zdroje událostí.

Pokud už komponentu nepotřebujete k zápisu položek do tohoto protokolu, můžete ji odebrat jako platný zdroj událostí. Můžete to udělat například v případě, že potřebujete změnit součást z jednoho protokolu na jiný. Vzhledem k tomu, že zdroj lze současně zaregistrovat pouze k jednomu protokolu, změna protokolu vyžaduje, abyste aktuální registraci odebrali.

DeleteEventSource odebere pouze zdroj zaregistrovaný v protokolu. Pokud chcete odebrat samotný protokol, zavolejte Delete. Pokud chcete odstranit pouze položky protokolu, zavolejte Clear. Delete a DeleteEventSource jsou static metody, takže je lze volat v samotné třídě. Není nutné vytvářet instanci EventLog pro volání některé z metod.

Odstraněním protokolu prostřednictvím volání se Delete automaticky odstraní zdroje zaregistrované v daném protokolu. To může mít za následek, že jiné aplikace, které používají tento protokol, budou nefunkční.

Poznámka

Pokud již byl zdroj namapován na protokol a přemapujete ho na nový protokol, je nutné restartovat počítač, aby se změny projevily.

Viz také

Platí pro

DeleteEventSource(String, String)

Zdroj:
EventLog.cs
Zdroj:
EventLog.cs
Zdroj:
EventLog.cs

Odebere registraci zdroje událostí aplikace z zadaného počítače.

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)

Parametry

source
String

Název, pod kterým je aplikace registrována v systému protokolu událostí.

machineName
String

Název počítače, ze který se má registrace odebrat, nebo "." pro místní počítač.

Výjimky

Parametr machineName je neplatný.

-nebo-

Parametr source neexistuje v registru zadaného počítače.

-nebo-

Nemáte oprávnění k zápisu do klíče registru pro protokol událostí.

source Nelze odstranit, protože v registru nadřazený klíč registru pro source neobsahuje podklíč se stejným názvem.

Příklady

Následující příklad odstraní zdroj ze zadaného počítače. Příklad určí protokol ze svého zdroje a pak odstraní protokol.

Poznámka

Do protokolu událostí může zapisovat více než jeden zdroj. Před odstraněním vlastního protokolu se ujistěte, že do tohoto protokolu nejsou zapisují žádné další zdroje.

#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

Poznámky

Toto přetížení slouží k odebrání registrace objektu Source ze vzdáleného počítače. DeleteEventSource přistupuje k registru na počítači určeném nástrojem machineName a odebere registraci aplikace jako platného zdroje událostí.

Pokud už komponentu nepotřebujete k zápisu položek do tohoto protokolu, můžete ji odebrat jako platný zdroj událostí. Můžete to udělat například v případě, že potřebujete změnit součást z jednoho protokolu na jiný. Vzhledem k tomu, že zdroj lze současně zaregistrovat pouze k jednomu protokolu, změna protokolu vyžaduje, abyste aktuální registraci odebrali.

DeleteEventSource odebere pouze zdroj zaregistrovaný v protokolu. Pokud chcete odebrat samotný protokol, zavolejte Delete. Pokud chcete odstranit pouze položky protokolu, zavolejte Clear. Delete a DeleteEventSource jsou static metody, takže je lze volat v samotné třídě. Není nutné vytvářet instanci EventLog pro volání některé z metod.

Odstraněním protokolu prostřednictvím volání se Delete automaticky odstraní zdroje zaregistrované v daném protokolu. To může mít za následek, že jiné aplikace, které používají tento protokol, budou nefunkční.

Poznámka

Pokud již byl zdroj namapován na protokol a přemapujete ho na nový protokol, je nutné restartovat počítač, aby se změny projevily.

Viz také

Platí pro