Когда я запускаю следующий скрипт powershell для отправки электронного письма:
$Outlook = New-Object -ComObject Outlook.Application
$file = Get-ChildItem -Path "H:\TP65655\IDX CVA\UAT" -Include *.idx -Recurse | Where {$_.CreationTime -gt (Get-Date).AddDays(-1)}
$atts = $file.fullname
$Mail = $Outlook.CreateItem(0)
$Mail.To = "email@domain.com"
$Mail.Subject = "Testing E-mail Automation"
$Mail.Body = "UAT TEST"
Try
{
$Mail.Attachments.Add($atts)
$Mail.Send()
Write-Host "Mail Sent Successfully"
Read-Host -Prompt "Press Enter to exit"
}
Catch
{
Write-Host "File Not Attached Successfully, Please Try Again"
Read-Host -Prompt "Press Enter to exit"
Exit
}
В Outlook появляется следующее:
Можно ли каким-либо образом удалить это, не меняя программный доступ в Центре управления безопасностью на «Никогда», поскольку это рабочий стол организации, и этот вариант невозможен.
Решение проблемы
Вы получаете стандартный запрос безопасности в Outlook. Ваши варианты:
- Используйте компонент Outlook Security Manager, который позволяет динамически отключать такие предупреждения во время выполнения.
- Используйте низкоуровневый API, на котором основан Outlook — расширенный MAPI. Он не выдает предупреждения безопасности или всплывающие окна. Или просто рассмотрите возможность использования любой оболочки для низкоуровневого API, такой как Redemption.
- Разработайте надстройку COM, которая имеет доступ к доверенному
Application
объекту. Надстройки COM не вызывают такие запросы безопасности. - Разверните параметры безопасности через GPO.
- Установите любой антивирус с последними обновлениями.
Вы можете найти полезным предупреждение «Программа пытается отправить сообщение электронной почты от вашего имени» в статье Outlook в MSDN.
Комментариев нет:
Отправить комментарий