使用powershell从outlook获取最新约会

使用powershell从outlook获取最新约会,powershell,outlook,Powershell,Outlook,我想得到我通讯簿上3个不同的人今天和明天的约会。这些人在outlook上共享了日历 如何通过powershell获取此信息?我不介意从本地outlook实例获取数据,但希望使用直接连接到服务器的设备。如果是Exchange 2007或更高版本,则必须选择将Exchange Web Services托管API与Powershell一起使用。API如下所示: Glen Scales在其博客上提供了一些将其与Powershell结合使用的优秀示例: 您可以从这个(本地outlook实例)开始,您可能

我想得到我通讯簿上3个不同的人今天和明天的约会。这些人在outlook上共享了日历


如何通过powershell获取此信息?我不介意从本地outlook实例获取数据,但希望使用直接连接到服务器的设备。

如果是Exchange 2007或更高版本,则必须选择将Exchange Web Services托管API与Powershell一起使用。API如下所示:

Glen Scales在其博客上提供了一些将其与Powershell结合使用的优秀示例:

您可以从这个(本地outlook实例)开始,您可能需要根据某些属性进一步筛选结果以查找您的好友信息:

$olFolderCalendar = 9
$ol = New-Object -ComObject Outlook.Application
$ns = $ol.GetNamespace('MAPI')
$Start = (Get-Date).AddDays(-1).ToShortDateString()
$End = (Get-Date).ToShortDateString()

$Filter = "[MessageClass]='IPM.Appointment' AND [Start] > '$Start' AND [End] < '$End'"
$ns.GetDefaultFolder($olFolderCalendar).Items.Restrict($Filter) 
$olFolderCalendar=9
$ol=新对象-ComObject Outlook.Application
$ns=$ol.GetNamespace('MAPI')
$Start=(Get Date).AddDays(-1).ToSortDateString()
$End=(获取日期).ToSortDateString()
$Filter=“[MessageClass]='IPM.Appointment'和[Start]>'$Start'和[End]<'$End''
$ns.GetDefaultFolder($olFolderCalendar).Items.Restrict($Filter)
从中查看函数,这似乎是一个有用的函数。 下面是一个示例输出:

Subject  Start                                   Duration Location
-------   -----                                  -------- --------
Emea IT support team x64 b... 16-9-2016 14:30:00 - 30 -
Citrix receiver in the NL ... 13-9-2016 12:30:00 - 30 - Webex
TMF Workstations OS Patching  12-9-2016 12:30:00 - 30 - INPNQ-Conference Room
Remedy Demo & Training Ses... 13-9-2016 09:30:00 - 120 - webex

它确实需要运行Outlook。

您是否尝试使用
com对象Outlook.Application