TNMSMTP.SendMailを行う場合のエンコード変更について。


うめ  2002-09-26 20:08:14  No: 1601

はじめまして。
TNMSMTP.SendMailを使ってメールを送信したのですが、受信側(outlook express)では「西ヨーロッパ言語」として判断してしまうために文字化けします。そのため、メールを開いたあといちいちエンコードを「日本語」に変更しなくてはなりません。
最初からエンコードを「日本語」として認識させるためにはどうしらたよいでしょうか。


にしの  2002-09-26 21:09:20  No: 1602

未確認ですが、C++Builderと同じものと思います。
http://www.borland.co.jp/qanda/cbuilder/c0005109.html
これでどうでしょう。


うめ  2002-09-26 22:32:42  No: 1603

SendStartイベント時に
NMSMTP1.FinalHeader.Values['Content-Type'] := 'text/plain; charset="ISO-2022-JP"';
の一文を入れたのですが、"text/plain; charset=us-ascii"として送信されてしまうようです。


にしの  2002-09-26 23:39:08  No: 1604

バージョンは何ですか?
Delphi5のTNMSMTPには、Charsetプロパティがあり、iso-2022-jpを入れればちゃんと機能します。
ただし、本文は自前でJISに変換しないとだめです。


うめ  2002-09-27 00:12:58  No: 1605

Delphi6を使っています。
最初、オブジェクトインスペクタのCharsetプロパティにiso-2022-jpと入れて送信しました。しかしうまくいかなかったので、教えていただいたように、NMSMTP1.FinalHeader.Values['Content-Type'] := 'text/plain; charset="ISO-2022-JP"';
の1文をSetStartイベント時に加え送信したのですが、やっぱりcharset=us-asciiになってしまいます。


※返信する前に利用規約をご確認ください。








  このエントリーをはてなブックマークに追加