EventLog.Delete Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Tar bort en loggresurs.
Överlagringar
| Name | Description |
|---|---|
| Delete(String, String) |
Tar bort en händelselogg från den angivna datorn. |
| Delete(String) |
Tar bort en händelselogg från den lokala datorn. |
Delete(String, String)
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
Tar bort en händelselogg från den angivna datorn.
public:
static void Delete(System::String ^ logName, System::String ^ machineName);
public static void Delete(string logName, string machineName);
static member Delete : string * string -> unit
Public Shared Sub Delete (logName As String, machineName As String)
Parametrar
- logName
- String
Namnet på loggen som ska tas bort. Möjliga värden är: Program, säkerhet, system och eventuella anpassade händelseloggar på den angivna datorn.
- machineName
- String
Namnet på den dator som loggen ska tas bort från eller "." för den lokala datorn.
Undantag
logName är en tom sträng ("") eller null.
-eller-
machineName är inte ett giltigt datornamn.
Det gick inte att öppna registernyckeln för händelseloggen på den angivna datorn.
-eller-
Loggen finns inte på den angivna datorn.
Händelseloggen har inte rensats.
-eller-
Det går inte att öppna loggen. Det finns ingen Windows felkod.
Exempel
I följande exempel tas en logg bort från den angivna datorn. Exemplet avgör loggen från källan.
Note
Mer än en källa kan skriva till en händelselogg. Innan du tar bort en anpassad logg kontrollerar du att det inte finns några andra källor som skriver till loggen.
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
Kommentarer
Använd den här metoden när loggen som du vill ta bort finns på en fjärrdator. Du kan ta bort alla loggar på datorn, förutsatt att du har rätt registerbehörigheter.
Delete tar bort loggen som anges av logName från datorn som anges av machineName. Om du bara vill ta bort källan som är registrerad i en logg anropar du DeleteEventSource. Om du bara vill ta bort loggposterna anropar du Clear.
Delete och DeleteEventSource är static metoder, så att de kan anropas på själva klassen. Det är inte nödvändigt att skapa en instans av för att anropa någon av EventLog metoderna.
Den här metoden tar först bort filen som innehåller innehållet i loggen. Den kommer sedan åt registret och tar bort alla händelsekällor som registrerats för loggen. Om du återskapar loggen vid ett senare tillfälle bör du registrera händelsekällorna igen om de ska återanvändas. Om du inte registrerar händelsekällorna och andra användare skriver till en händelsekälla utan att ange ett loggnamn skapas händelsekällan i programhändelseloggen. Därför skriver program som tidigare kunde skriva poster till loggen som du tog bort och återskapade till programloggen i stället, eftersom den nu innehåller händelsekällan.
Note
Det kan vara svårt att återskapa en händelselogg. Undvik att ta bort någon av de systemskapade händelseloggarna, till exempel programloggen.
Om du tar bort en logg via ett anrop för att Delete automatiskt ta bort de källor som är registrerade i loggen. Detta kan göra andra program med hjälp av den loggen inoperativa.
Se även
Gäller för
Delete(String)
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
- Källa:
- EventLog.cs
Tar bort en händelselogg från den lokala datorn.
public:
static void Delete(System::String ^ logName);
public static void Delete(string logName);
static member Delete : string -> unit
Public Shared Sub Delete (logName As String)
Parametrar
- logName
- String
Namnet på loggen som ska tas bort. Möjliga värden är: Program, Säkerhet, System och eventuella anpassade händelseloggar på datorn.
Undantag
logName är en tom sträng ("") eller null.
Det gick inte att öppna registernyckeln för händelseloggen på den lokala datorn.
-eller-
Loggen finns inte på den lokala datorn.
Händelseloggen har inte rensats.
-eller-
Det går inte att öppna loggen. Det finns ingen Windows felkod.
Exempel
I följande exempel tas en logg bort från den lokala datorn. Exemplet avgör loggen från källan.
Note
Mer än en källa kan skriva till en händelselogg. Innan du tar bort en anpassad logg kontrollerar du att det inte finns några andra källor som skriver till loggen.
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
Kommentarer
Använd den här metoden när loggen som du vill ta bort finns på den lokala datorn. Du kan ta bort alla loggar på datorn, förutsatt att du har rätt registerbehörigheter.
Delete tar bort loggen som anges av logName från den lokala datorn. Om du bara vill ta bort källan som är registrerad i en logg anropar du DeleteEventSource. Om du bara vill ta bort loggposterna anropar du Clear.
Delete och DeleteEventSource är static metoder, så att de kan anropas på själva klassen. Det är inte nödvändigt att skapa en ny instans av för att anropa någon av EventLog metoderna.
Metoden Delete tar först bort filen som innehåller innehållet i loggen. Den kommer sedan åt registret och tar bort alla händelsekällor som registrerats för loggen. Om du återskapar loggen vid ett senare tillfälle bör du registrera händelsekällorna igen om de ska återanvändas. Om du inte registrerar händelsekällorna och andra användare skriver till en händelsekälla utan att ange ett loggnamn skapas händelsekällan i programhändelseloggen. Därför skriver program som tidigare kunde skriva poster till loggen som du tog bort och återskapade till programloggen i stället, eftersom den nu innehåller händelsekällan.
Note
Det kan vara svårt att återskapa en händelselogg. Undvik att ta bort någon av de systemskapade händelseloggarna, till exempel programloggen.
Om du tar bort en logg via ett anrop för att Delete automatiskt ta bort de källor som är registrerade i loggen. Detta kan göra andra program med hjälp av den loggen inoperativa.