メールをテキストファイルとして保存する

メールをテキストファイルとして保存する

ではYahoo!メールを受信してテキストファイルやCSVファイルとして保存するアプリを作成しました。今回は他のメールも受信できるようにします。

Gmailに対応させる

まずはGmailに挑戦。まずはメールアカウントにログインしてPOPを有効にする必要があります。そのためには

あとはGetMails()メソッドを書き換えて実行すればうまくいきそうです。

メソッドの内容は以下のページの内容とほとんど同じです。string server = “pop.gmail.com”; の部分だけ変えています。

メールをテキストファイルとして保存する

ところがカンタンにできると思っていたらそうはいきませんでした。

失敗するのでなぜだろうと調べていたら「アクセスをブロックした」というメールが送られてきたのです。

安全性の低いアプリ(自作だからそうなるよね)はそのままだとブロックの対象になるのです。

安全性の低いアプリと Google アカウント

上記の設定を変更すればアクセスは可能になります。

さくらインターネットの場合

さくらのサポート情報

上記コードの以下の部分だけ修正すれば対応できます。

エックスサーバーの場合

メールソフトの設定 | レンタルサーバー【エックスサーバー】

ということでGmailは設定を変更する必要がありましたが、それ以外はPOP/IMAPサーバー名を変更すればメールの受信が可能になります。

GUIを少し変更します。

メールサーバーもテキストボックスから設定できるようにします。アカウント名とパスワードは●で表示して他人から見られないようにします。

[メールを取得]をクリックするとメールボックスにあるメールを取得し、リストボックスにその一覧を表示させます。リストボックスのアイテムをクリックするとメールの件名、本文、受信日時が表示されるようにします。

それから設定と取得したメールの内容も保存したり読み出しができるようにします。

ところで毎回毎回、ログインのために必要な情報を入力するのは面倒です。この設定を保存しておきたいのですが、パスワードをそのままファイルに保存するのはよくありません。