使用Powershell将其他电子邮件设置为默认电子邮件

时间:2018-07-19 14:26:54

标签: powershell outlook

我正在创建一个脚本,该脚本将在用户的电子邮件帐户中查找以查找电子邮件,然后从电子邮件中下载附件。

这将自动选择写入时用户的默认电子邮件帐户。但是,我要在Outlook中使用第二个电子邮件帐户代替。

是否可以更改它搜索的电子邮件帐户?

$outlook = New-Object -comobject outlook.application
$namespace = $outlook.GetNamespace("MAPI")

#Below: 6 is the default for inbox, so this saves the user from having to select the inbox folder. Change if emails w/ attatchements are going to a different folder. 
$folder = $namespace.GetDefaultFolder(6)
$filepath = "C:\Users\Documents\PowerShell"

$folder.Items | foreach {
    $_.attachments | foreach {
        $filename = $_.filename
        If ($filename.Contains("example1.xls")) {
            $_.saveasfile((Join-Path $filepath $filename))
            Rename-Item -LiteralPath '.\example1.xls' -NewName "Server.xls"
        }

        If ($filename.Contains("example2.xls")) {
            $_.saveasfile((Join-Path $filepath $filename))
            Rename-Item -LiteralPath '.\example2.xls' -NewName "Workstation.xls"
        }
    }
}

1 个答案:

答案 0 :(得分:0)

不是使用$namespace.GetDefaultFolder(6),而是从Namespace.Stores集合中找到适当的Store对象,然后调用Store.GetDefaultFolder

如果另一个邮箱不在Namespace.Stores集合中,请呼叫Namespace.CreateRecipient / Namespace.GetSharedDefaultFolder