Unicodeをサポートしていない古いデバイスと通信する必要がある場合、このブログ記事はあなたのためのものです。4D v17 R5では、レガシーエンコーディング(日本語はISO-2022-JP、西ヨーロッパはISO-8859-1)でメールを送ることができますので、読み進めてください。
この SMTP New transporterコマンドは新しいパラメータを受け付けるので、ヘッダーまたはボディで使用するエンコードの種類を指定することができます。例えば、日本語のメールを送るときにISO-2022-JPのエンコードを使いたい場合は、次のように書けばよい。
$smtp
$smtp:=New object
$smtp .host:="smtp.yoursmtp.com"
...
// Define the type of encoding to use in your body parts
$smtp .bodyCharset:=mail mode ISO2022JP// Define the type of encoding to use in your mail header
headerCharset :=mail mode ISO2022JP
$smtpTransporter :=SMTP New transporter($smtp)
$email .from:="アリス <alice@mail.com>"
$email .to:="八郎 <hachiro@mail.com>"
$email .subject:="メールの送信"
$email .textBody:="4D v17 R4 以降、新しい方法でeメールの作成と送信ができるようになりました。"
$smtpTransporter .
send($email)
4Dは、メールをMIMEに変換する際にISO-2022-JP charsetを使用します。
MIME-Version: 1.0
Date:Wed, 13 Mar 2019 15:32:16 GMT
Message-ID: <843E4861CC54404F8597E65974A4832D>
Sender: =?ISO-2022-JP?Q?=1B$B%"%j%9=1B=28B?= <alice@mail.com>
From: =?ISO-2022-JP?Q?=1B$B%"%j%9=1B=28B?= <alice@mail.com>
To: =?ISO-2022-JP?Q?=1B$BH=2CO=3A=1B=28B?= <hachiro@mail.com>
Subject: =?ISO-2022-JP?Q?=1B$B%a!<%k$NAw?.=1B(B?) =
Content-Type: text/plain; charset="ISO-2022-JP"
Content-Transfer-Encoding:7bit
4D v17 R4 $B0J9_!"?7$7$J}K!$G(Be$B%a!<%k$N:n@.$HAw?.$,$G$-$k$h$&$K$J$j$^$7$?!#(B)
詳細はdocセンターで確認できます。