我正在创建一个ASP.NET应用程序,它会将一些内容记录到Windows EventLog中。为此,必须首先创建一个事件源。这需要管理权限,所以我无法在ASP.NET应用程序中执行此操作。
是否有与Windows捆绑在一起的现有命令行应用程序可以创建事件日志源,或者我必须推出自己的命令行应用程序?
发布于 2015-11-26 20:14:26
如果有人感兴趣,也可以通过添加一些注册表值来手动创建事件源。
将以下行另存为.reg文件,然后双击将其导入注册表:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\eventlog\Application\YOUR_EVENT_SOURCE_NAME_GOES_HERE]
"EventMessageFile"="C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319\\EventLogMessages.dll"
"TypesSupported"=dword:00000007
这将创建一个名为YOUR_EVENT_SOURCE_NAME_GOES_HERE
的事件源。
发布于 2009-05-22 16:41:53
或者只使用命令行命令:
事件创建
发布于 2015-09-10 22:09:20
无论cmd/batch版本如何工作,当你想定义一个高于1000的eventID时,你可能会遇到一个问题。对于使用1000+的eventID创建事件,我将使用powershell,如下所示:
$evt=new-object System.Diagnostics.Eventlog(“Define Logbook”)
$evt.Source=”Define Source”
$evtNumber=Define Eventnumber
$evtDescription=”Define description”
$infoevent=[System.Diagnostics.EventLogEntryType]::Define error level
$evt.WriteEntry($evtDescription,$infoevent,$evtNumber)
示例:
$evt=new-object System.Diagnostics.Eventlog(“System”)
$evt.Source=”Tcpip”
$evtNumber=4227
$evtDescription=”This is a Test Event”
$infoevent=[System.Diagnostics.EventLogEntryType]::Warning
$evt.WriteEntry($evtDescription,$infoevent,$evtNumber)
https://stackoverflow.com/questions/446691
复制相似问题