EventLog.DeleteEventSource Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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.