先日から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、ほんの少ししか触っていませんが、お手軽で使い勝手が良く、かなり便利だと思います。

![[PowerShell]MailKitを使ってメールを送信する方法](https://www.ka-net.org/blog/wp-content/uploads/eyecatch-PowerShell-120x120.png)

















この記事へのコメントはありません。