找不到源,但无法搜索部分或全部事件日志

Vai*_*ain 122 .net c# securityexception event-log windows-7

我收到以下异常.我在Registry编辑的Eventlogs上完全控制了Asp.net帐户.

[SecurityException:找不到源,但无法搜索部分或全部事件日志.无法访问的日志:安全.]

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
Run Code Online (Sandbox Code Playgroud)

我想这是由于服务器上的一些配置问题?

Nic*_*oiu 105

EventLog.SourceExists枚举子键HKLM\SYSTEM\CurrentControlSet\services\eventlog以查看它是否包含具有指定名称的子键.如果运行代码的用户帐户在Security找到目标源之前没有对其尝试访问的子键(在您的情况下为子键)具有读访问权限,您将看到类似于您所描述的异常.

处理此类问题的常用方法是在安装时(在管理员帐户下)注册事件日志源,然后假设它们在运行时存在,如果目标事件日志源实际上不存在,则允许将任何结果异常视为意外在运行时.

  • 在Windows 8上,似乎即使禁用UAC且用户是管理员,仍然需要以管理员身份运行VS. 这是我案子的解决方案 (25认同)
  • 对我来说,仅在第一次以管理员身份运行应用程序就足够了.之后,创建了事件源并且应用程序正常运行. (2认同)
  • 这是一个有关如何使用操作系统中的嵌入式工具阻止Windows运行的示例 (2认同)

liv*_*ove 67

有同样的例外.就我而言,我必须运行具有管理员权限的命令提示符.

在"开始"菜单中,右键单击"命令提示符",选择"以管理员身份运行".

  • 我的情况是以管理员身份运行Visual Studio 2015。(正在做一个Web API项目。) (2认同)

Raz*_*aza 9

对我来说,此错误是由命令提示符引起的,该命令提示符未在管理员权限下运行.您需要右键单击命令提示符并说" 以管理员身份运行 ".

您需要管理员角色才能安装或卸载服务.


小智 8

启动Developer命令行"作为管理员".此帐户可以完全访问安全日志


小智 6

没有为我工作.

我创建了一个新的键和字符串值,并设法让它工作

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
Run Code Online (Sandbox Code Playgroud)