4D Internet Commands v14

SMTP_Charset

ホーム

 
4D Internet Commands v14
SMTP_Charset

SMTP_Charset 


 

SMTP_Charset ( encodeHeaders ; bodyCharset ) -> 戻り値 
引数   説明
encodeHeaders  整数 in -1 = 現在の設定を使用, 0 = 管理しない, 1 = ISO-8859-1またはISO-2022-JPの場合、指定された文字セットを使用して変換、拡張文字をエンコード
bodyCharset  整数 in -1 = 現在の設定を使用, 0 = 管理しない, 1= ISO-8859-1またはISO-2022-JPの場合、指定された文字セットを使用して変換
戻り値  整数 in エラーコード

説明   

SMTP_Charset コマンドは、SMTP_QuickSendSMTP_Send コマンドでメッセージを送信する際に、拡張文字を含むメッセージをサポートするために自動で変換処理が行われるよう設定します。このコマンドが呼び出されないか引数に0が渡されると、バージョン 6.7以降の4D Internet Commandsはバージョン6.5.xと同様に動作します。

SMTP_Charset コマンドは、まずメッセージヘッダとボディの変換にSMTP_SetPrefsbodyType 引数を適用するかを指定し、次に拡張文字を含むヘッダをRFC#1342で定義された“=?ISO-8859-1?Q?Test=E9?= …”のシンタックスでエンコードするかを指定します。このコマンドはインタープロセススコープを持っていて、このコマンド実行後はすべての4Dプロセスで SMTP_QuickSendSMTP_Sendを使用して送信されるメッセージに影響します。

このコマンドは件名やメールアドレスに拡張文字が含まれる場合に有効です (たとえば“=?ISO-8859-1?Q?Test=E9?= <test@n.net >”のようなアドレスのエンコーディング)。

メッセージヘッダに基づきエンコーディング (Subjectヘッダを除き常にBase64に設定され、SMTP_SetPrefsbodyType 引数値に基づく) は以下のように管理されます:

  • Subject, Comment (“非構造化ヘッダ”): 拡張文字を含む場合、文字列全体がエンコードされる。
  • From, To, CC, Bcc, Sender, ReplyTo, InReplyTo (“構造化ヘッダ”):
    • 山括弧 (“<”, “>”) に挟まれたテキストはメールアドレスとして認識され、エンコードされません。
    • SPC < > ( ) @ , ; : " / ? . = などの特別文字や区切り文字はエンコードされません。
    • 特別文字や区切り文字に挟まれた文字列は、拡張文字が含まれていればエンコードされます。
    • アドレスの例:
      someone@somewhereはエンコードされません
      Michele <michele@somewhere>, Micheleのみエンコードされます
encodeHeadersは、メッセージ送信時のヘッダの変換処理の方法とエンコーディングを指定する引数です。デフォルト値は0です。
  • -1:    現在の設定を使用
  • 0:    管理しない
  • 1:   
    • SMTP_SetPrefsbodyType 引数が文字コードISO-8859-1またはISO-2022-JPに設定されている場合、ヘッダはその文字セットを使用して変換されます。
    • そうでない場合、指定されている文字セットにかかわらず、ヘッダに拡張文字が含まれていれば、以下のシンタックスで変換されます (RFC#1342参照) : “=?? Base64 Encoding?Test=E9?= …”
    • 例外: Subjectヘッダは必要に応じて、SMTP_SetPrefs コマンドのbodyType に指定されたエンコード方法でエンコードされます。
Note: “X_…”で始まる拡張ヘッダはUS ASCIIのみで記述しなければなりません。

bodyCharsetは、メッセージ送信時にメッセージボディの変換に使用する文字セットを指定する引数です。デフォルト値は0です。
  • -1: 現在の設定を使用
  • 0: 管理しない
  • 1: SMTP_SetPrefsbodyType 引数が文字コードISO-8859-1またはISO-2022-JPに設定されている場合、メッセージボディはその文字セットを使用して変換されます。

例題  

この例題では、件名とボディがISO-8859-1文字セットを使用して変換され、件名はRFC 1342シンタックスでエンコードされます:

 SMTP_SetPrefs(1;1;0)
 $err:=SMTP_Charset(1;1)
 $err:=SMTP_QuickSend("mymail.com";"myaddress";"destination";"the Euro €";"the Euro symbol is €")

 
プロパティ 

プロダクト: 4D Internet Commands
テーマ: IC メール送信
番号: 88892

 
履歴 

変更: 4D Internet Commands 6.8.1

 
参照 

POP3_Charset
SMTP_SetPrefs

 
ARTICLE USAGE

4D Internet Commands ( 4D Internet Commands v11.4)
4D Internet Commands ( 4D v13.2)
4D Internet Commands ( 4D Internet Commands v12.1)
4D Internet Commands ( 4D Internet Commands v14 R2)
4D Internet Commands ( 4D Internet Commands v14)
4D Internet Commands ( 4D Internet Commands v14 R3)
4D Internet Commands ( 4D Internet Commands v14 R4)