EventLog.Delete Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Quita un recurso de registro.
Sobrecargas
Delete(String, String) |
Quita un registro de eventos del equipo especificado. |
Delete(String) |
Quita un registro de eventos del equipo local. |
Delete(String, String)
- Source:
- EventLog.cs
- Source:
- EventLog.cs
- Source:
- EventLog.cs
Quita un registro de eventos del equipo especificado.
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)
Parámetros
- logName
- String
Nombre del registro que se va a eliminar. Posibles valores: Aplicación, Seguridad, Sistema y cualquier registro de eventos personalizado del equipo especificado.
- machineName
- String
Nombre del equipo del que se va a eliminar el registro o "." para el equipo local.
Excepciones
logName
es una cadena vacía ("") o null
.
o bien
machineName
no es un nombre de equipo válido.
No se ha podido abrir en el equipo especificado la clave del Registro para el registro de eventos.
o bien
El registro no existe en el equipo especificado.
El registro de eventos no se ha borrado correctamente.
o bien
No puede abrirse el registro. No hay ningún código de error de Windows disponible.
Ejemplos
En el ejemplo siguiente se elimina un registro del equipo especificado. En el ejemplo se determina el registro de su origen.
Nota
Es posible que más de un origen escriba en un registro de eventos. Antes de eliminar un registro personalizado, asegúrese de que no haya otros orígenes que escriban en ese registro.
#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
Comentarios
Use este método cuando el registro que desea eliminar esté en un equipo remoto. Puede eliminar cualquier inicio de sesión en el equipo, siempre que tenga los permisos del Registro adecuados.
Delete quita el registro especificado por logName
del equipo especificado por machineName
. Si desea eliminar solo el origen registrado en un registro, llame a DeleteEventSource. Si solo desea eliminar las entradas de registro, llame a Clear. Delete y DeleteEventSource son static
métodos, por lo que se puede llamar a en la propia clase. No es necesario crear una instancia de para llamar a ninguno de EventLog los métodos.
Este método elimina primero el archivo que contiene el contenido del registro. A continuación, accede al Registro y quita todos los orígenes de eventos registrados para ese registro. Si vuelve a crear el registro en un momento posterior, debe volver a registrar los orígenes de eventos, si se van a reutilizar. Si no registra los orígenes de eventos y otros usuarios escriben en un origen de eventos sin especificar un nombre de registro, el origen del evento se creará en el registro de eventos de la aplicación. Por lo tanto, las aplicaciones que anteriormente podían escribir entradas en el registro que eliminó y volver a crear escribirán en el registro de aplicación en su lugar, ya que ahora contiene el origen del evento.
Nota
Volver a crear un registro de eventos puede ser un proceso difícil. Evite eliminar cualquiera de los registros de eventos creados por el sistema, como el registro de aplicaciones.
Al eliminar un registro a través de una llamada para Delete eliminar automáticamente los orígenes registrados en ese registro. Esto puede hacer que otras aplicaciones usen ese registro inoperativo.
Consulte también
Se aplica a
Delete(String)
- Source:
- EventLog.cs
- Source:
- EventLog.cs
- Source:
- EventLog.cs
Quita un registro de eventos del equipo local.
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)
Parámetros
- logName
- String
Nombre del registro que se va a eliminar. Posibles valores: Aplicación, Seguridad, Sistema o cualquier registro de eventos personalizado del equipo.
Excepciones
logName
es una cadena vacía ("") o null
.
No se ha podido abrir en el equipo local la clave del Registro para el registro de eventos.
o bien
El registro no existe en el equipo local.
El registro de eventos no se ha borrado correctamente.
o bien
No puede abrirse el registro. No hay ningún código de error de Windows disponible.
Ejemplos
En el ejemplo siguiente se elimina un registro del equipo local. En el ejemplo se determina el registro de su origen.
Nota
Es posible que más de un origen escriba en un registro de eventos. Antes de eliminar un registro personalizado, asegúrese de que no haya otros orígenes que escriban en ese registro.
#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
Comentarios
Use este método cuando el registro que desea eliminar esté en el equipo local. Puede eliminar cualquier inicio de sesión en el equipo, siempre que tenga los permisos del Registro adecuados.
Delete quita el registro especificado por logName
del equipo local. Si desea eliminar solo el origen registrado en un registro, llame a DeleteEventSource. Si solo desea eliminar las entradas de registro, llame a Clear. Delete y DeleteEventSource son static
métodos, por lo que se puede llamar a en la propia clase. No es necesario crear una nueva instancia de para llamar a ninguno de EventLog los métodos.
El Delete método elimina primero el archivo que contiene el contenido del registro. A continuación, accede al Registro y quita todos los orígenes de eventos registrados para ese registro. Si vuelve a crear el registro en un momento posterior, debe volver a registrar los orígenes de eventos, si se van a reutilizar. Si no registra los orígenes de eventos y otros usuarios escriben en un origen de eventos sin especificar un nombre de registro, el origen del evento se creará en el registro de eventos de la aplicación. Por lo tanto, las aplicaciones que anteriormente podían escribir entradas en el registro que eliminó y volver a crear escribirán en el registro de aplicación en su lugar, ya que ahora contiene el origen del evento.
Nota
Volver a crear un registro de eventos puede ser un proceso difícil. Evite eliminar cualquiera de los registros de eventos creados por el sistema, como el registro de aplicaciones.
Al eliminar un registro a través de una llamada para Delete eliminar automáticamente los orígenes registrados en ese registro. Esto puede hacer que otras aplicaciones usen ese registro inoperativo.