2016-12-11 15 views
0

私たちは、1つの電子メールアカウントでOutlookに電子メールを送信するPowerShellの自動化機能を備えていますが、送信者電子メールアドレスを別のOutlookアカウントに設定できる方法を探しています私たちにはアクセス権があります。Powershellは、別の電子メールとしてOutlookを使用して電子メールを送信します

私はここでグーグルとラウンドを見て、それをやり方を見つけることができないようだ。

ここでは、使用しているコードを示します。

$Outlook = New-Object -comObject Outlook.Application 
$Mail = $Outlook.CreateItem(0) 
start-sleep 5 
$Mail.subject = "" 
$mail. 
$Mail.To = "" 
$Mail.Cc = "" 
$Mail.Body = "Test" 
$Mail.Display() 
$Mail.Send() 

答えて

1

次のOutlook機能を使用してメールを送信してください。あなたは実際にそこに同じことをしています。あなたが得ているエラーはありますか?とにかく、次のいずれかを使用してください: 関数内のすべてのコメントを参考にしてください。

Function Global:Send-Email { 
[cmdletbinding()] 
Param (
[Parameter(Mandatory=$False,Position=0)] 
[String]$Address = "[email protected]", 
[Parameter(Mandatory=$False,Position=1)] 
[String]$Subject = "Mail Subject", 
[Parameter(Mandatory=$False,Position=2)] 
[String]$Body = "MailBody" 
    ) 
Begin { 
Clear-Host 
# Add-Type -assembly "Microsoft.Office.Interop.Outlook" 
    } 
Process { 
# Create an instance Microsoft Outlook 
$Outlook = New-Object -ComObject Outlook.Application 
$Mail = $Outlook.CreateItem(0) 
$Mail.To = "$Address" 
$Mail.Subject = $Subject 
$Mail.Body =$Body 
# $Mail.HTMLBody = "HTML BODY" 
# $File = "D:\CP\timetable.pdf" 
# $Mail.Attachments.Add($File) 
$Mail.Send() 
     } # End of Process section 
End { 
# Section to prevent error message in Outlook 
$Outlook.Quit() 
[System.Runtime.Interopservices.Marshal]::ReleaseComObject($Outlook) 
$Outlook = $null 
    } # End of End section! 
} # End of function 

# Example of using this function 
Send-Email #-Address [email protected] 

あなたが誰かの代理から電子メールを送信したい場合は、あなたが誰かの代理からメールを送信する権限を持っている必要があり、コネクタやユーザーからの匿名のメールを有効にする必要があります。その場合、あなたは参照としてGmailのからメールを送信するために

$ mail.From = ""

一つサンプル例として、1以上のオブジェクトを追加することができます。

$From = "[email protected]" 
$To = "[email protected]" 
$Cc = "[email protected]" 
$Attachment = "C:\temp\Some random file.txt" 
$Subject = "Email Subject" 
$Body = "Insert body text here" 
$SMTPServer = "smtp.gmail.com" 
$SMTPPort = "587" 
Send-MailMessage -From $From -to $To -Cc $Cc -Subject $Subject ` 
-Body $Body -SmtpServer $SMTPServer -port $SMTPPort -UseSsl ` 
-Credential (Get-Credential) -Attachments $Attachment 

...それがお役に立てば幸い
関連する問題