使用PowerShell在Outlook中复制项目

时间:2017-09-17 20:34:10

标签: powershell outlook

我正在尝试复制来自" Inbox"到"已发送物品\ TEMP"在Outlook中。到目前为止,我能够根据主题行获取所需的消息,但之后我尝试复制它们但没有成功。我哪里错了?谢谢!请注意,当我写一个写主机来检索我正在寻找的项目时,它没有任何问题,所以我能够检索主题为" Test"的电子邮件,但不要复制它。

错误讯息:

  

无法找到"复制"参数计数:" 1"

代码:

$outlook = New-Object -comobject outlook.application; 

$mapi = $outlook.GetNamespace('MAPI').GetDefaultFolder(6); 

$mapi2 = $outlook.GetNamespace('MAPI').GetDefaultFolder(5); 
$subFolders2 = $mapi.Folders | ? {$_.FolderPath.EndsWith('TEMP')};

$mapi.Items | ForEach-Object {If ($_.Subject -Like '*TEst*'){$_.Copy($subFolders2)}$_.Save()}

1 个答案:

答案 0 :(得分:1)

MailItem.Copy不接受任何参数。它返回MailItem对象的一个​​实例;然后,您可以调用MailItem.Move并将指针传递到目标文件夹。