我创建了一个规则,可以将电子邮件从收件箱移动到子文件夹“任务”。我可以将所有电子邮件从子文件夹“任务”移动到Outlook中的另一个子文件夹“完成”但是任何人都可以帮助我复制电子邮件.msg文件本地到预定义的文件夹.Below是powershell代码。
$olFolderInbox = 6;
$GetOutlook = New-Object -com "Outlook.Application";
$olName = $GetOutlook.GetNamespace("MAPI")
$olxEmailFolder = $olName.GetDefaultFolder($olFolderInbox)
$SubFolders = $olxEmailFolder.Folders | ? { $_.Name -match 'Tasks' };
$TargetFolder = $olxEmailFolder.Folders.Item('Completed')
$SubFolders.Items |
ForEach-Object -Process {
$psitem.Move($TargetFolder)
}
答案 0 :(得分:1)
我不确定您是否可以将电子邮件保存为.msg,但是,您可以使用修改后的代码将其保存为.htm
$olFolderInbox = 6
Add-Type -assembly 'Microsoft.Office.Interop.Outlook'
$GetOutlook = New-Object -ComObject 'Outlook.Application'
$olName = $GetOutlook.GetNamespace('MAPI')
$olxEmailFolder = $olName.GetDefaultFolder($olFolderInbox)
$SubFolders = $olxEmailFolder.Folders | Where-Object -FilterScript {
$_.Name -match 'Tasks'
}
$TargetFolder = $olxEmailFolder.Folders.Item('Completed')
$SubFolders.Items |
ForEach-Object -Process {
$psitem.HTMLBody | Set-Content C:\test\email.htm
$psitem.Move($TargetFolder)
}