【发布时间】:2014-12-12 21:36:04
【问题描述】:
感谢您抽出宝贵时间阅读本文。原始帖子将保留在下面,但我 - 认为 - 我有更好的方式来表达我的问题。
如何重写这个从 Outlook 获取约会信息的 powershell 脚本:
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 Subject, Start, Duration, Location, Body
使用 CDOEX 并做同样的事情,但对所有用户?谢谢。
--------原问题:-------- 我最近编写了一个 powershell 脚本,它从 Outlook 日历中获取信息并根据它找到的信息生成提醒电子邮件。该脚本运行良好,然后我的老板告诉我它必须从 Exchange 数据库而不是 Outlook 中提取此信息。该脚本将直接在 Exchange 服务器上运行,不需要远程访问。
是否有交换 com 对象(完全公开,我知道术语“com 对象”,但我不知道它们是什么)用于交换,就像它们用于 Outlook 一样,或者就像从通用数据库中提取信息一样简单碰巧为交换服务器工作?
据我所知,它很可能会在 Powershell 1 和 Exchange Server 2003 中运行。 请随时将我指向任何相关网站,如果需要,我可以自己找到它。任何帮助,将不胜感激。谢谢。
-乔什
【问题讨论】:
-
您想从 Exchange 查询什么?
-
好吧,我们需要在每个用户的日历约会中查看在主题/正文中找到的特定字符串,然后发送一封“提醒”电子邮件,其中包含我们提取的内容。从 Outlook 中提取非常容易,但现在必须直接从交换服务器中完成。
标签: powershell exchange-server cdo.message