writeentry log example eventlog event createeventsource c# .net windows-7 event-log securityexception

example - event log c#



No se encontrĂ³ la fuente, pero algunos o todos los registros de eventos no se pudieron buscar (7)

Inicie la línea de comandos del desarrollador "Como administrador". Esta cuenta tiene acceso completo al registro de seguridad

Recibo la siguiente excepción. He dado control total a la cuenta de Asp.net en los registros de eventos en la edición del registro.

[SecurityException: no se encontró la fuente, pero algunos o todos los registros de eventos no se pudieron buscar. Registros inaccesibles: seguridad.]

System.Diagnostics.EventLog.FindSourceRegistration(String source, String machineName, Boolean readOnly, Boolean wantToCreate) +664 System.Diagnostics.EventLog.SourceExists(String source, String machineName, Boolean wantToCreate) +109 System.Diagnostics.EventLog.SourceExists(String source) +14 Microsoft.ApplicationBlocks.ExceptionManagement.DefaultPublisher.VerifyValidSource() +41

Supongo que esto se debe a algún problema de configuración en el servidor.


No funcionó para mí

Creé una nueva clave y valor de cadena y logré que funcione

Key= HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/services/eventlog/Application/<Your app name>/ String EventMessageFile value=C:/Windows/Microsoft.NET/Framework/v2.0.50727/EventLogMessages.dll


Para mí solo funcionó iisreset (ejecuta cmd como administrador -> iisreset). Tal vez alguien podría intentarlo.


Para mí, este error se debió a la solicitud del comando, que no se estaba ejecutando bajo privilegios de administrador. Debe hacer clic con el botón derecho en el símbolo del sistema y decir " Ejecutar como administrador ".

Necesita la función de administrador para instalar o desinstalar un servicio.


Si está realizando una nueva instalación del sitio web SenseNet TaskManagement en IIS (desde el código fuente, no WebPI), recibirá este mensaje, generalmente relacionado con la comunicación SignalR. Como señala share se debe a una búsqueda clave en el registro que falla.

Para resolver esto para SenseNet TaskManagement v1.1.0, primero encuentre el nombre de la clave de registro en el archivo web.config. Por defecto es "SnTaskWeb".

<appSettings> <add key="LogSourceName" value="SnTaskWeb" />

Abra el editor de registro, regedit.exe , y navegue hasta HKLM/SYSTEM/CurrentControlSet/Services/EventLog/SnTask . Haga clic derecho en SnTask y seleccione New Key , y SnTaskWeb el nombre de la clave SnTaskWeb para la configuración que se muestra arriba. A continuación, haga clic con el botón derecho en el elemento SnTaskWeb y seleccione New Expandable String Value . El nombre debe ser EventMessageFile y los datos de valor deben ser C:/Windows/Microsoft.NET/Framework/v4.0.30319/EventLogMessages.dll .

Palabras clave: signalr, sensenet, regedit, permisos


Tenía la misma excepción. En mi caso, tuve que ejecutar el símbolo del sistema con derechos de administrador.

Desde el menú Inicio, haga clic con el botón derecho en Símbolo del sistema, seleccione "Ejecutar como administrador".


EventLog.SourceExists enumera a través de las subclaves de HKLM/SYSTEM/CurrentControlSet/services/eventlog para ver si contiene una subclave con el nombre especificado. Si la cuenta de usuario con la que se ejecuta el código no tiene acceso de lectura a una subclave a la que intenta acceder (en su caso, la subclave de Security ) antes de encontrar el origen de destino, verá una excepción como la que ha descrito.

El enfoque habitual para manejar estos problemas es registrar fuentes de registro de eventos en el momento de la instalación (bajo una cuenta de administrador) y luego suponer que existen en tiempo de ejecución, permitiendo que cualquier excepción resultante sea tratada como inesperada si el origen de registro de eventos de destino no existe en realidad. en tiempo de ejecución.