![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
![](http://oshiete.xgoo.jp/images/v2/common/profile/M/noimageicon_setting_08.png?e8efa67)
下記のページを参考にVCにてメール送信処理を作成しています。
猫でもわかる...
http://www.kumei.ne.jp/c_lang/sdk3/sdk_229.htm
ただ送信するためには認証が必要なのですね。
OEで受信しないと送信に成功しませんでした。
調べたところ
POP before SMTP、SMTP AUTHといった認証方法が
あるのはわかったのですが(今回のケースはPOP before SMTP、今後はSMTP AUTHが主流になりそう)
メール送信処理を作成するにあたり、認証は
どの様に実現すべきなのでしょうか?
POP before SMTPに関しては送信前に一回受信すればよいというのはわかります。(それでも処理の関係上、受信メールをサーバーに残す必要があったりと単純に受信するだけではだめなので不明点も多いですが)
さらに、今後普及しそうなAUTHに関してはここの過去ログも参考にさせていただきましたが恥ずかしながら???です。
ご存知の方、よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
POP before SMTPの場合、認証は「POPサーバーに接続してログインする」のみで充分です。
つまり、POPサーバーにユーザーアカウントとパスワードを送ったら何もせずにPOPサーバーとのコネクトを切断し、続けてSMTPサーバーに接続すれば良いです。
VCではないですが、他のC++コンパイラで作ったメール送受信ソフトは、この手順で動いています。
なお、POPサーバーとのプロトコル仕様を良く読めば判りますが「受信メールをサーバーに残す必要」がある場合は、何もしなければ良いのです。
POPでは「ユーザー名を送る」「パスワードを送る」「リストを取る」「メールヘッダーを読む」「ヘッダーを含め、メールを読む」「メールをサーバーから消す」と言う動作は、すべて別々のコマンドで行います。
ですので、OEなどの「受信メールをサーバーに残す」と言う設定は「メールをサーバーから消すコマンドを送らない」と言う事をしているだけなのです。読んだら勝手に消える訳ではありません。
POPのコマンドの「USER」「PASS」「LIST」「TOP」「RETR」「DELE」「QUIT」辺りを調べてみれば判ります。
なお、SMTP AUTHは、自作ではなかなか大変だと思います。
EHLOを発行してAUTHが有効か、有効なら使えると返されたメカニズムをサポートしているか、サーバーから「チャレンジ」が送られていたなら「レスポンス」も付加する、など、実装しないといけない物が沢山あります。
ご回答ありがとうございます。
おっしゃる様にPOPにログインだけしてすぐ切れば
送信できる様になりました。ログイン時に受信件数が
戻りますが、まったくメールや処理に影響はなかったです。ありがとうございました。
SMTP AUTHはやはり大変ですね。実装は断念してしまいそうです。
ただPOP before SMTPはSMTP AUTHが普及するまでの”つなぎ”とのことでなんとかしたいのですが...
また何かあればよろしくお願いいたします。
No.2
- 回答日時:
p165 電子メールプロトコル David Wood著
オライリー・ジャパン
に書いてあります。
これを読まれたらいいのでは。
私は、この 教えてgoo で聞いて、
から、この本を買って読んでいます。
メーラーを作るには
とっても役に立っています。
No.1
- 回答日時:
試してみていないのでわからないのですが、
POPの認証さえ通れば、
しばらくの間SMTPが許可されるというのが基本動作だと思いますので、
ちゃんとした受信処理までしなくても、
たとえばLISTでタイトルを得るだけでも問題ないのでは
ないでしょうか?
POP before SMTPに対応したメーラの通信を
Etherealかなにかで見てみれば理解が早いと思います。
SMTP AUTHに関してはRFC2554あたりを読んで見るのが
手っ取り早いかと思います。
ご指摘の様に
POP3にログオンするだけでOKでした。
以降は送信することが可能でした。
AUTHはやはり難しいです。
ありがとうございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
サンダーバードを複数のPCで...
-
windows liveメールの受信が遅い
-
windosメール
-
2台のパソコンでoutlook expre...
-
サーバーの中身は見られますか?
-
他人のアドレスでメールってで...
-
ワードやエクセルに貼り付けたU...
-
社内ネットワークの1台だけ接...
-
メール送信でのみ、エラーが出ます
-
事務所ビルのOAコンセントの...
-
Notesが使えない
-
ftpコマンドのput,mputの上書き...
-
LAN上のEXCELファイルを開くと...
-
マイクラ統合版Windows7できま...
-
サーバー用HDDは本当に長持...
-
インターフェースサーバーとは...
-
サービスIPって何ですか?
-
エックスサーバーでhttpd.conf...
-
ネットワーク上のRPSってなんな...
-
スマホのサーバー?について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Becky!ver2 メールの受信に凄く...
-
サンダーバードを複数のPCで...
-
重複メールが自動削除される?
-
2台のパソコンでoutlook expre...
-
IMAPがオフラインでも読める理...
-
サーバーの中身は見られますか?
-
windows liveメールの受信が遅い
-
「サーバーにメッセージのコピ...
-
教えて下さい!
-
更新通知ソフトのGmailでの受信...
-
so-netのメール
-
過去のメールを再受信する方法...
-
auメールの「サーバーから削除...
-
メール送信処理作成について
-
秀丸メールの振り分け設定変更...
-
Outlook受信メールの取りこぼし
-
サーバーの容量を使用している...
-
一つのアドレスを複数の端末で...
-
Windows10標準メールアプリでYa...
-
thunderbird で突然受信ができ...
おすすめ情報