先日からMailKitを使ってメール送信を行うPowerShellのコードについて記事を書いてきました。
今度はメール送信ではなく、受信側の処理を試してみたいと思います。
#DLL読み込み [void][System.Reflection.Assembly]::LoadFile("C:\System\MailKit\MailKit.dll") [void][System.Reflection.Assembly]::LoadFile("C:\System\MailKit\MimeKit.dll") #必要に応じて変更 $userID = "xxxx@xxxxxxxxxx.onmicrosoft.com" $userPassword = "(パスワード)" $mailServer = "outlook.office365.com" $mailPort = 995 #メールサーバー設定 $client = New-Object MailKit.Net.Pop3.Pop3Client $client.Connect($mailServer, $mailPort, [MailKit.Security.SecureSocketOptions]::SslOnConnect) $client.Authenticate($userID, $userPassword) #メールの件名出力 for($i=0; $i -lt $client.Count; $i++){ $msg = $client.GetMessage($i) [System.Console]::WriteLine("{0}, {1}", $i, $msg.Subject) } #DeleteMessageメソッドでメールを削除することも可能 #$client.DeleteMessage($client.Count - 1) $client.Disconnect($true)
Office 365のメール受信サーバーにPOPで接続して、サーバー内にあるメールの件名を一覧表示するコードです。
上記コードではメールの件名しか取得していませんが、宛先や本文など、その他のプロパティも簡単に取得することができます。
MailKit、ほんの少ししか触っていませんが、お手軽で使い勝手が良く、かなり便利だと思います。
この記事へのコメントはありません。