我使用的是Windows 7 64位,Outlook 2010,我正在寻找一个powershell脚本来从Outlook电子邮件中下载嵌入的图片和附件。
现在唯一的选择是打开每条消息并复制每张图片。电子邮件当前在Outlook中,但如果需要,我可以将它们保存到文件夹中。
有人能指出我正确的方向吗?
答案 0 :(得分:0)
我写了这个小脚本来保存文件夹的附件。在Windows 8.1 x64上使用Outlook 2010进行了测试。
$o = New-Object -ComObject outlook.Application
$ns = $o.GetNamespace("MAPI")
$f = $ns.Folders.Item(1)
$di = $f.Folders.item("Deleted Items")
$messagesWithAttachments = $di.items | Where-Object {$_.Attachments.Count -gt 0}
$messagesWithAttachments[0].Attachments.item(1).saveasfile("X:\test\picture.jpg")
您希望保存所有附件,只需循环浏览消息,通过附件并为文件指定唯一名称即可。为此,您可以使用类似System.IO.Path.GetRandomFileName的内容。如果文件名已存在,请获取一个新文件名。