Get-WinEvent开始和结束日期不过滤记录

res*_*101 3 powershell events date

get-winevent开始和结束日期不是过滤记录.谁能告诉我为什么?我希望从最近2天的事件下面的代码,但我得到的日期可以追溯到2010年(我的Windows时钟日期是正确的)

[String]$ComputerName = $env:COMPUTERNAME#Current computer 
[String[]]$EventLogNames=@("Application","System")#Main eventlogs 
[System.DateTime[]]$EventStartDate = (((Get-Date).addDays(-2)).date)#date 10 days ago 
[System.DateTime[]]$EventEndTime = (Get-Date)

$EventCritea = @{logname = $EventLogNames; StartTime=$EventStartDate; EndTime=$EventEndTime}
Get-WinEvent -ComputerName $ComputerName -FilterHashTable $EventCritea  -ErrorAction SilentlyContinue
Run Code Online (Sandbox Code Playgroud)

Fil*_*urt 7

脚本中的错误是开始和结束日期/时间的类型 - 它们被声明为数组.

更改

[System.DateTime[]]$EventStartDate = (((Get-Date).addDays(-2)).date)
[System.DateTime[]]$EventEndTime = (Get-Date)
Run Code Online (Sandbox Code Playgroud)

[System.DateTime]$EventStartDate = (((Get-Date).addDays(-2)).date)
[System.DateTime]$EventEndTime = (Get-Date)
Run Code Online (Sandbox Code Playgroud)

或者完全省略它们

$EventStartDate = (((Get-Date).addDays(-2)).date)
$EventEndTime = (Get-Date)
Run Code Online (Sandbox Code Playgroud)