gpt4 book ai didi

logging - C#中的事件记录器是否需要管理员权限才能将日志写入Windows Event Viewer?

转载 作者:行者123 更新时间:2023-12-04 05:34:44 24 4
gpt4 key购买 nike

在我的C#应用​​程序中,我使用EventLog类记录消息。它在我的机器上工作得很好,但在客户端机器上却没有。

客户端计算机的配置与我的计算机不同。我的机器具有Vista OS,而客户端具有Windows 2003 OS。

我在计算机上拥有管理员权限,而在客户端计算机上,我的应用程序以非管理员用户权限运行。

在客户端计算机上,我收到了Faulting application , version ,faulting module kernel32.dll的错误消息

当我注释掉EventLog.WriteEntry()方法调用并开始将日志写入简单文本文件时,我的应用程序停止在客户端计算机上崩溃。

所以我只是想知道事件记录是否需要管理员权限或需要什么?

环境详细信息:C#、. net 2.0框架,Windows Vista,Windows 2003 Server,Oracle

最佳答案

System.Diagnostics.EventLog class in .NET Framework 3.5 @ MSDN:

If you write to an event log, you mustspecify or create an event Source. Youmust have administrative rights on thecomputer to create a new event source.

...

If the event source for the event log associated with the EventLog instance doesn't exist, a new event source is created. To create an event source in Windows Vista and later or Windows Server 2003, you must have administrative credentials.

This requirement is because all event logs, including Security logs, must be searched to determine whether the event source is unique. Starting with Windows Vista, users do not have permission to access the Security log; therefore, a SecurityException is thrown.

关于logging - C#中的事件记录器是否需要管理员权限才能将日志写入Windows Event Viewer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3930529/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com