Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

EventLog.CreateEventSource (Método) (String, String, String)

Nota: esta API ya está obsoleta.

Establece, mediante el nombre de origen especificado, una aplicación como origen de eventos válido para la escritura de entradas en un registro del equipo especificado. Este método puede utilizarse también para crear un nuevo registro personalizado en el equipo especificado.

Espacio de nombres:  System.Diagnostics
Ensamblado:  System (en System.dll)

[ObsoleteAttribute("This method has been deprecated.  Please use System.Diagnostics.EventLog.CreateEventSource(EventSourceCreationData sourceData) instead.  http://go.microsoft.com/fwlink/?linkid=14202")]
public static void CreateEventSource(
	string source,
	string logName,
	string machineName
)

Parámetros

source
Tipo: System.String
Origen mediante el que se registra la aplicación en el equipo especificado.
logName
Tipo: System.String
Nombre del registro en el que se escriben las entradas del origen. Entre los posibles valores se incluye Aplicación, Sistema o un registro de eventos personalizado. Si no se especifica un valor, logName toma Aplicación como valor predeterminado.
machineName
Tipo: System.String
Nombre del equipo con el que se va a registrar este origen de eventos o "." para el equipo local.

ExcepciónCondición
ArgumentException

machineName no es un nombre de equipo válido.

– O bien –

source es una cadena vacía ("") o null.

– O bien –

logName no es un nombre de registro de eventos válido. Los nombres de registros de eventos deben estar formados por caracteres imprimibles, a excepción de '*', '?' y '\'.

– O bien –

logName no es válido para la creación del registro de usuario. Los nombres de registro de eventos AppEvent, SysEvent y SecEvent están reservados para uso del sistema.

– O bien –

El nombre del registro coincide con el nombre de un origen de eventos ya existente.

– O bien –

El nombre de origen produce una ruta de clave del Registro con una longitud superior a 254 caracteres.

– O bien –

Los 8 primeros caracteres de logName coinciden con los 8 primeros caracteres del nombre de un registro de eventos ya existente en el equipo especificado.

– O bien –

No puede registrarse el origen porque ya existe en el equipo especificado.

– O bien –

El nombre del origen coincide con el nombre de un origen de eventos ya existente.

InvalidOperationException

No se ha podido abrir en el equipo especificado la clave del Registro para el registro de eventos.

Utilice esta sobrecarga para crear un registro personalizado o para crear y registrar la propiedad Source en un registro existente en el equipo especificado.

Si logName es null o una cadena vacía ("") al llamar al método CreateEventSource, el registro toma como valor predeterminado el registro de aplicaciones. Si el registro no existe en el equipo especificado, el sistema crea un registro personalizado y registra la aplicación como el origen (Source) para ese registro.

Solamente es necesario crear un origen de eventos si se está escribiendo en el registro de eventos. Antes de escribir una entrada en un registro de eventos, se debe registrar el origen de eventos con el registro de eventos como origen de eventos válido. Cuando se escribe una entrada del Registro, el sistema utiliza Source para buscar el registro adecuado donde agregarla. Si se está leyendo el registro de eventos, se pueden especificar las propiedades Source o Log y MachineName.

NotaNota

Para poder crear un origen de eventos en Windows Vista y versiones posteriores o Windows Server 2003, debe tener privilegios de administrador.

La razón de este requisito es que deben buscarse todos los registros de eventos, incluidos los de seguridad, para determinar si el origen del evento es único. En Windows Vista y versiones posteriores, los usuarios no tienen permiso de acceso al registro de seguridad; por tanto, se produce una excepción SecurityException.

En Windows Vista y posteriores, el Control de cuentas de usuario (UAC) determina los privilegios de un usuario. Si es miembro del grupo Administradores integrados, se le asignarán dos símbolos (tokens) de acceso en tiempo de ejecución: un símbolo (token) de acceso de usuario estándar y un símbolo (token) de acceso de administrador. De forma predeterminada, se le asignará el rol de usuario estándar. Para ejecutar el código que tiene acceso al registro de seguridad, primero debe elevar el nivel de sus privilegios de usuario estándar a administrador. Podrá hacerlo cuando inicie una aplicación haciendo clic con el botón secundario en el icono de la aplicación e indicando que desea ejecutarla como administrador.

Para escribir eventos en un registro de eventos, deberán utilizarse WriteEvent y WriteEntry. Para escribir eventos, es necesario especificar un origen de eventos; asimismo, antes de escribir la primera entrada con el origen, es necesario crearlo y configurarlo.

El nuevo origen de eventos deberá crearse durante la instalación de la aplicación. Esto permite al sistema operativo actualizar con tiempo la lista de orígenes de eventos registrados y su configuración. Si el sistema operativo aún no ha actualizado la lista de orígenes de eventos y se intenta escribir un evento con el nuevo origen, se producirá un error en la operación de escritura. Para configurar un nuevo origen, puede utilizarse EventLogInstaller o el método CreateEventSource. Es necesario contar con derechos administrativos en el equipo para crear un nuevo origen de eventos.

Puede crearse un origen de eventos para un registro de eventos ya existente o para uno nuevo. Cuando se crea un origen para un registro de eventos nuevo, el sistema registra el origen de ese registro, pero éste no se crea hasta que no se escriba la primera entrada en él.

El sistema operativo guarda los registros de eventos como archivos. Cuando se utiliza EventLogInstaller o CreateEventSource para crear un registro de eventos nuevo, el archivo asociado se guarda en el directorio %SystemRoot%\System32\Config del equipo especificado. El nombre de archivo se establece anexando los 8 primeros caracteres de la propiedad Log con la extensión de nombre de archivo ".evt".

El origen ha de ser único en el equipo local (un nombre de origen nuevo no puede coincidir con otro anterior o con el de un registro de eventos ya existente). Aunque cada origen sólo puede escribir en un registro de eventos a la vez, la aplicación puede utilizar varios orígenes para escribir en diversos registros. Por ejemplo, una aplicación podría requerir la configuración de varios orígenes para registros de eventos o archivos de recursos diferentes.

El origen deberá configurarse para escribir o bien entradas adaptadas o bien cadenas directas. Cuando una aplicación escriba entradas usando tanto identificadores de recursos como valores de cadena, deberán registrarse dos orígenes diferentes. Por ejemplo, puede configurarse un origen con archivos de recursos y usarlo en el método WriteEvent para escribir entradas en el registro de eventos mediante identificadores de recursos. A continuación, puede crearse otro origen sin archivos de recursos y usarlo en el método WriteEntry para escribir cadenas directamente en el registro de eventos.

Para cambiar los detalles de configuración de un origen ya existente, será necesario eliminarlo primero para volver a crearlo con la nueva configuración. Si otras aplicaciones o componentes lo estuvieran utilizando, en lugar de eliminarlo, deberá crearse uno nuevo con la configuración actualizada.

NotaNota

Cuando un origen asignado a un registro vuelve a asignarse a otro registro, es necesario reiniciar el equipo para que los cambios surtan efecto.

En el siguiente ejemplo se crea el origen MySource en el equipo MyServer y se escribe una entrada en el registro de eventos MyNewLog.


using System;
using System.Diagnostics;
using System.Threading;

class MySample{

    public static void Main(){

        // Create the source, if it does not already exist.
        if(!EventLog.SourceExists("MySource", "MyServer"))
        {
            // An event log source should not be created and immediately used.
            // There is a latency time to enable the source, it should be created
            // prior to executing the application that uses the source.
            // Execute this sample a second time to use the new source.
            EventLog.CreateEventSource("MySource", "MyNewLog", "MyServer");
            Console.WriteLine("CreatingEventSource");
            Console.WriteLine("Exiting, execute the application a second time to use the source.");
            // The source is created.  Exit the application to allow it to be registered.
            return;
        }

        // Create an EventLog instance and assign its source.
        EventLog myLog = new EventLog();
        myLog.Source = "MySource";

        // Write an informational entry to the event log.    
        myLog.WriteEntry("Writing to event log.");

        Console.WriteLine("Message written to event log.");                                                                        
    }
}
   


.NET Framework

Compatible con: 1.1, 1.0
Obsoleto (advertencia del compilador) en 4.5.2
Obsoleto (advertencia del compilador) en 4.5.1
Obsoleto (advertencia del compilador) en 4.5
Obsoleto (advertencia del compilador) en 4
Obsoleto (advertencia del compilador) en 3.5
Obsoleto (advertencia del compilador) en 3.5 SP1
Obsoleto (advertencia del compilador) en 3.0
Obsoleto (advertencia del compilador) en 3.0 SP1
Obsoleto (advertencia del compilador) en 3.0 SP2
Obsoleto (advertencia del compilador) en 2.0
Obsoleto (advertencia del compilador) en 2.0 SP1
Obsoleto (advertencia del compilador) en 2.0 SP2

.NET Framework Client Profile

Obsoleto (advertencia del compilador) en 4
Obsoleto (advertencia del compilador) en 3.5 SP1

Windows Phone 8.1, Windows Phone 8, Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft