我有一个小型 winforms 应用程序,可以创建一个新的事件日志源。
我以管理员身份运行它以获得提升的权限。
代码检查以确保指定的事件日志不存在,然后创建源。这在我的 Windows 7 机器上运行良好,但是当我在 Windows Server 2008 R2 SP1 上运行该应用程序时,它告诉我源已经存在。我知道这不是因为 a) 这是全新安装的 Windows Server 2008 R2,并且 b) 我添加了代码以返回所有日志源的列表,而我的新日志源不在列表中。
我知道“前 8 个字符”是重要的字符,并且我确保我的源名称是完全唯一的。
这是超级简单的代码(当然我对此有尝试/捕捉):
if (!EventLog.SourceExists(sourceName))
{
EventLog.CreateEventSource(sourceName, logName);
}
谁能告诉我为什么 Windows Server 2008 对我撒谎?