带Powershell的Outlook日历未启动所有项目

带Powershell的Outlook日历未启动所有项目,powershell,outlook,Powershell,Outlook,我有一个powershell脚本,可以从默认outlook文件夹中提取日历邀请。当我执行代码时,它只提取部分信息(没有错误消息),如果我的日历上有10个会议,只有4个会出现。有人遇到过类似的问题吗?我可以做些什么来解决它 Function Get-OutlookCalendar { Add-type -assembly “Microsoft.Office.Interop.Outlook” | out-null $olFolders = “Microsoft.Office.I

我有一个powershell脚本,可以从默认outlook文件夹中提取日历邀请。当我执行代码时,它只提取部分信息(没有错误消息),如果我的日历上有10个会议,只有4个会出现。有人遇到过类似的问题吗?我可以做些什么来解决它

 Function Get-OutlookCalendar {
     Add-type -assembly “Microsoft.Office.Interop.Outlook” | out-null
     $olFolders = “Microsoft.Office.Interop.Outlook.OlDefaultFolders” -as [type]
     $outlook = new-object -comobject outlook.application
     $namespace = $outlook.GetNameSpace(“MAPI”)
     $folder = $namespace.getDefaultFolder($olFolders::olFolderCalendar)
     $folder.items |
     Select-Object -Property start,RequiredAttendees, Subject, IsRecurring, Organizer,ConversationID,RecurrenceState,OptionalAttendees,Body

} 
$start_date=(Get-date).AddDays(-2) |Get-Date -Format 'MM/dd/yyyy'
$end_date=Get-Date -Format 'MM/dd/yyyy'
Get-OutlookCalendar| where-object { $_.start -gt [datetime]$start_date -and $_.start -le [datetime]$end_date } | sort-object start

两天前或更高,但不比今天新的开始日期与此有什么关系?这10次会议都在这个范围内吗?另外,
$start\u date=(Get date).AddDays(-2).date
将消除
-gt[datetime]$start\u date
-在
[System.String]
[System.datetime]
之间不必要的来回转换。嘿,用户,好消息-我已经解决了部分问题。我剖析了你的脚本,并在我自己的日历上运行它。虽然我同意你有一些多余的代码,但这不是问题所在。在我的例子中,问题是它不显示定期约会。我还没有找到解决这个问题的方法(因此这不是一个答案),但问题似乎是定期约会没有出现。你能确认你的情况是否相同吗?最有可能的是重复条目开始时间早于2天前。它们是从何处创建的。@V3rmouth-感谢您的回复。对我来说,没有模式,我很少看到我是DL一部分的会议,我的电子邮件发送到,也很少出现定期会议。@不只是我-同意你的过度转换。我尝试了您最初推荐的代码,但由于没有得到预期的结果,我考虑进行转换,看看是否有什么不同。