我正在使用powershell send-mail命令发送邮件。一切正常。但是我看不到我在 “已发送邮件” 中发送的邮件。如果我手动发送邮件,我可以看到它,但是我不明白为什么如果我使用send-mail命令发送邮件,为什么看不到它。
谢谢
答案 0 :(得分:0)
我有一个创建Outlook“草稿”的功能。我这样做是为了在点击“发送”之前可以查看电子邮件。这可能对您不起作用;也许您想在末尾添加一个send命令。但是您描述要执行的操作可能需要在执行命令的系统上有可用的Outlook。
它将检查您是否首先设置了邮件配置文件,但否则它不是非常可靠。
Function Compose-Email {
Param ([String]$recipients, [string]$subject, [string]$body)
$reg="HKCU:\Software\Microsoft\Office\16.0\Outlook\Profiles"
$child=(Get-ChildItem -Path $reg).name
if (!((Get-ChildItem -Path $reg).name)) {
Write-Error "No Mail Profile found! Cannot compose Draft."
}
else {
$olFolderDrafts = 16
$ol = New-Object -comObject Outlook.Application
$ns = $ol.GetNameSpace("MAPI")
# call the save method to save the email in the drafts folder
$mail = $ol.CreateItem(0)
$Mail.Recipients.Add($recipients)
$Mail.Subject = $subject
$Mail.Body = $body
$Mail.save()
$mail.display()
}
}