SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine(コードジン) DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

特集記事

Indy 10とSynapseを利用したSMTP機能の実装

SMTP認証、SMTP over SSL/TLSの実装と日本語文字コード処理

まとめ

 最新のIndyやSynapseといったフリーのコンポーネントやライブラリで、SMTP認証やSMTP over SSL/TLSの実現が容易に行えることが分かりました。これらの機能はモバイル環境や無線LANからのメール送信などに必須の機能であり、こうした用途に用いられるアプリケーションの構築に便利なツールだと思います。

 一方、インターネットメールで日本語文字コードを使うためにはコンポーネントやライブラリ任せではなく、実際にどのような処理が行われているのか、細心の注意を払わなければならないことも分かりました。現在、国内で使われている多くのメーラーは文字化けを防ぐ手立てを有しており、日本語8bit文字処理や、誤った文字コード変換を行ったヘッダでも文字化けせずにデコードすることが可能です。

 従って、MIMEのEncodeを行わずとも、あるいは本文を7bitのISO-2022-JPに変換しなくても、送信したメールが文字化けして読めないことはないのかもしれません。しかし、LAN内限定ならば問題は無くとも、インターネットで使う以上、ルールを守りRFCに準拠すべきでしょう。つまり、インターネットの通信機能に利用されるコンポーネントやライブラリには、容易、かつルール違反でない、RFC準拠を実現できる環境の提供が望まれます。その意味で、Indy 10は日本語文字コード変換処理を別に行う必要があるという点では不完全なコンポーネントと言えるかも知れませんが、Synapseのように自動的にすべてQ encodeを行うことが正解であるとも言い切れないのも事実です。

 繰り返しになりますが、インターネットメールで日本語文字コードを使うためにはコンポーネントやライブラリ任せではなく、実際にどのような処理が行われているのか細心の注意を払い、可能な限りトラブルの種をとり除くことが必要です。

 本稿で実験検証した内容がメール送信機能の実装に際して、より安定した動作や環境に適した機能を引き出すことの一助になれば幸いです。

参考資料

  1. Indy Docs (Indy version 10.1.5)
  2. Ararat Synapse Web archive of E-mail list conference
  3. Delphi de Indy Install
  4. インターネットメールの注意点

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
特集記事連載記事一覧

もっと読む

この記事の著者

紺野 道広(コンノ ミチヒロ)

テクノスタリオン・インク取締役社長。日本大学歯学部兼任講師。流通・物流に伴う電子データ処理の効率化や、日々データベースに蓄積される業務データのデータマイニング、顧客心理や地域性といった非数値データを融合したデータ分析や解析を中心に、様々なアプリケーションソフトウェアも開発しています。 

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/400 2007/12/10 13:51

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー