如何在PowerShell for Outlook中自动接受确认 我有来自Outlook的电子邮件导出附件的脚本 - 请参阅下一步 它可以在一台PC上正常工作,但在另一台PC上有问题: Outlook提供消息并希望回答:
Permit Denny Help
如果我手动点击Permit或Denny,它可以正常工作。我想自动化它。 你能给我一些建议如何在PowerShell中做到这一点吗? 我试图将Outlook设置为不发送此消息,但我没有成功。 我的剧本:
# <-- Script --------->
# script works with outlook Inbox folder
# check if email have attachments with ".txt" and save those attachments to $filepath
# path for exported files - attachments
$filepath = "d:\Exported_files\"
# create object outlook
$o = New-Object -comobject outlook.application
$n = $o.GetNamespace("MAPI")
# $f - folder „dorucena posta“ 6 - Inbox
$f = $n.GetDefaultFolder(6) # 6 - Inbox
# select newest 10 emails, from it olny this one with attachments
$f.Items| select -last 10| Where {$_.Attachments}| foreach {
# process only unreaded mail
if($_.unread -eq $True) {
# processed mail set as read, not to process this mail again next day
$_.unread = $False
$SenderName = $_.SenderName
Write-Host "Email from: ", $SenderName
# process all attachments
$_.attachments|foreach {
$a = $_.filename
If ($a.Contains(".txt")) {
Write-Host $SenderName," ", $a
# copy *.txt attachments to folder $filepath
$_.saveasfile((Join-Path $filepath "$a"))
}
}
}
}
Write-Host "Finish"
# <------ End Script ---------------------------------->
答案 0 :(得分:0)
如果在本地系统上找不到最新的Anti-Virus产品,则最新版本的Outlook会显示安全提示。
如果您仅限于PowerShell且无法使用C ++或Delphi来使用扩展MAPI,则Redemption是另一种选择。
答案 1 :(得分:0)
我发现安全提示是在线生成的 “$ SenderName = $ _。SenderName” 真的,我不需要使用SenderName,我删除了这一行。 现在脚本工作正常,没有任何消息。