EventLog.Delete Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Rimuove una risorsa di log.
Overload
Delete(String, String) |
Rimuove un registro eventi dal computer specificato. |
Delete(String) |
Rimuove un registro eventi dal computer locale. |
Delete(String, String)
- Origine:
- EventLog.cs
- Origine:
- EventLog.cs
- Origine:
- EventLog.cs
Rimuove un registro eventi dal computer specificato.
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)
Parametri
- logName
- String
Nome del registro da eliminare. I valori possibili sono Applicazione, Sicurezza, Sistema e qualsiasi registro eventi personalizzato del computer specificato.
- machineName
- String
Nome del computer da cui eliminare il log oppure "." per il computer locale.
Eccezioni
logName
è una stringa ("") o null
.
-oppure-
machineName
non è un nome di computer valido.
Non è possibile aprire la chiave del Registro di sistema per il log eventi sul computer specificato.
-oppure-
Il log non è presente sul computer specificato.
La cancellazione del log eventi non è stata eseguita correttamente.
-oppure-
È impossibile aprire il log. Non è disponibile un codice di errore di Windows.
Esempio
Nell'esempio seguente viene eliminato un log dal computer specificato. Nell'esempio viene determinato il log dall'origine.
Nota
Più di un'origine potrebbe scrivere in un registro eventi. Prima di eliminare un log personalizzato, assicurarsi che non siano presenti altre origini che scrivono nel 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
Commenti
Usare questo metodo quando il log da eliminare si trova in un computer remoto. È possibile eliminare qualsiasi accesso nel computer, purché siano disponibili le autorizzazioni appropriate del Registro di sistema.
Delete rimuove il log specificato dal computer specificato logName
da machineName
. Se si vuole eliminare solo l'origine registrata in un log, chiamare DeleteEventSource. Se si desidera eliminare solo le voci di log, chiamare Clear. Delete e DeleteEventSource sono static
metodi, in modo che possano essere chiamati sulla classe stessa. Non è necessario creare un'istanza di EventLog per chiamare un metodo.
Questo metodo elimina prima il file che contiene il contenuto del log. Accede quindi al Registro di sistema e rimuove tutte le origini eventi registrate per tale log. Se si ricrea il log in un secondo momento, è necessario registrare di nuovo le origini eventi, se devono essere riutilizzate. Se non si registrano le origini eventi e altri utenti scrivono in un'origine evento senza specificare un nome di log, l'origine evento verrà creata nel registro eventi dell'applicazione. Pertanto, le applicazioni che in precedenza erano in grado di scrivere voci nel log eliminato e ricreato verranno scritte nel log dell'applicazione, perché ora contiene l'origine eventi.
Nota
La ricreazione di un registro eventi può essere un processo difficile. Evitare di eliminare uno dei log eventi creati dal sistema, ad esempio il log dell'applicazione.
L'eliminazione di un log tramite una chiamata per Delete eliminare automaticamente le origini registrate nel log. In questo modo è possibile creare altre applicazioni usando l'inoperativo del log.
Vedi anche
Si applica a
Delete(String)
- Origine:
- EventLog.cs
- Origine:
- EventLog.cs
- Origine:
- EventLog.cs
Rimuove un registro eventi dal computer locale.
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)
Parametri
- logName
- String
Nome del registro da eliminare. I valori possibili sono Applicazione, Sicurezza, Sistema e qualsiasi registro eventi personalizzato del computer.
Eccezioni
logName
è una stringa ("") o null
.
Non è possibile aprire la chiave del Registro di sistema per il log eventi sul computer locale.
-oppure-
Il log non è presente sul computer locale.
La cancellazione del log eventi non è stata eseguita correttamente.
-oppure-
È impossibile aprire il log. Non è disponibile un codice di errore di Windows.
Esempio
Nell'esempio seguente viene eliminato un log dal computer locale. Nell'esempio viene determinato il log dall'origine.
Nota
Più di un'origine potrebbe scrivere in un registro eventi. Prima di eliminare un log personalizzato, assicurarsi che non siano presenti altre origini che scrivono nel 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
Commenti
Usare questo metodo quando il log da eliminare si trova nel computer locale. È possibile eliminare qualsiasi accesso nel computer, purché siano disponibili le autorizzazioni appropriate del Registro di sistema.
Delete rimuove il log specificato logName
dal computer locale. Se si vuole eliminare solo l'origine registrata in un log, chiamare DeleteEventSource. Se si desidera eliminare solo le voci di log, chiamare Clear. Delete e DeleteEventSource sono static
metodi, in modo che possano essere chiamati sulla classe stessa. Non è necessario creare una nuova istanza di EventLog per chiamare entrambi i metodi.
Il Delete metodo elimina prima il file che contiene il contenuto del log. Accede quindi al Registro di sistema e rimuove tutte le origini eventi registrate per tale log. Se si ricrea il log in un secondo momento, è necessario registrare di nuovo le origini eventi, se devono essere riutilizzate. Se non si registrano le origini eventi e altri utenti scrivono in un'origine evento senza specificare un nome di log, l'origine evento verrà creata nel registro eventi dell'applicazione. Pertanto, le applicazioni che in precedenza erano in grado di scrivere voci nel log eliminato e ricreato verranno scritte nel log dell'applicazione, perché ora contiene l'origine eventi.
Nota
La ricreazione di un registro eventi può essere un processo difficile. Evitare di eliminare uno dei log eventi creati dal sistema, ad esempio il log dell'applicazione.
L'eliminazione di un log tramite una chiamata per Delete eliminare automaticamente le origini registrate nel log. In questo modo è possibile creare altre applicazioni usando l'inoperativo del log.