我原先假定Get-WinEvent不能在Windows 2003上执行,即源计算机必须是Vista或更高版本的操作系统。 但是,可以从Vista +计算机上运行Windows 2003。 看来情况并非如此 – 我尝试了以下select:
都显示这个错误:
There are no more endpoints available from the endpoint mapper
使用Get-EventLog在以上每个场景中成功提取事件日志条目。 runas /netonly /user:xxx powershell需要连接到另一个域。
这是否意味着源机器和目标机器必须是Vista +或者这个错误与Get-WinEvent兼容性无关?
Get-WinEvent针对Vista和更新的操作系统的事件日志。 事件日志基础架构被重build,并允许更高级的查询。 Server 2003和更早版本不支持该types的查询机制。 Get-WinEvent还可以定位由Windows事件跟踪(ETW)生成的新事件日志。
Get-EventLog可以针对旧操作系统和新操作系统,但不能访问新的日志,也不支持相同的查询function。 (根据我的经验,执行速度比Get-WinEvent要慢。)
您应该可以从任何支持PowerShell V2的客户端计算机使用Get-WinEvent,但是事件日志的来源必须是Vista或更新的。 客户端和服务器都必须是Vista或更新的。