LoginSignup
11
16

More than 5 years have passed since last update.

PowerShell を利用して Office 365 からメールを送信する

Last updated at Posted at 2017-04-15

PowerShell を利用して Office 365 からメールを送信する

ブログからの転載です。

以前 Ruby を使って Gmail 経由でメール送信 というブログを書きましたが、今度は Windows で定期実行される処理(PowerShell)からレポートメールを送る必要があったのでメモ。

環境

  • Windows 10 Pro
  • PowerShell 5.1

サンプルコード

自分のメールアドレス(差出人)が miyamiya@example.com 、宛先のメールアドレスが misono@example.jp としてサンプルコードを書いてみる。ここでは miyamiya@example.com が Office 365 のアカウントとする。


# Office 365 の認証情報
$o365User = 'miyamiya@example.com';
$o365Pass = Read-Host -Prompt "Enter the password for ${o365User}(Office365)" -AsSecureString
# 差出人
$from    = 'miyamiya@example.com';
# 宛先
$to      = 'misono@example.jp';
# メールのタイトルと本文
$subject = 'メールのタイトル';
$body    = 'メールの本文';

# MailMessage インスタンス作成
$msg = New-Object System.Net.Mail.MailMessage($from, $to, $subject, $body);

# Office 365 の SMTP サーバーを設定して SmtpClient インスタンスを作成
$SMTPClient = New-Object Net.Mail.SmtpClient("smtp.office365.com", 587) ;

# SSL を True に設定
$SMTPClient.EnableSsl = $true;

# Office 365 への認証
$SMTPClient.Credentials = New-Object System.Net.NetworkCredential($o365User, $o365Pass);

# メール送信
$SMTPClient.send($msg);

参考

11
16
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
16