ページ: 1
問題:
メール本文中の本文中に「.」ドットのみの行があった場合、受信側でそれ以降のデータを受信出来ない。
メール本文中の行頭に「.」ドットが合った場合、「.」ドットが削除される。
メール本文中の行頭の「.」ドットは、「..」にする必要があるが、
「.NET Framework 2.0/3.0/3.5/4.0」の環境下では、「.」ドットがエスケープされない。
「.NET Framework 4.5」では、改善されエスケープされる。
この問題は、「.NET FrameworkのAlternateViewクラス」で本文を追加した場合に起こります。
MailMakerPop+は、送信処理に「.NET FrameworkのAlternateViewクラス」を利用しています。
解決策:
■解決策[1]
.NET Framework 4.0の場合、行頭の「.」ピリオドを2つ「..」にする。
iill_SMTP_setBody_Add( "plain" ; Substitute ( simpleExample_send::body_text ; "¶." ; "¶.." ) )
iill_SMTP_setBody_Add( "html" ; Substitute ( simpleExample_send::body_html ; "¶." ; "¶.." ) )
■解決策[2]
送信処理を行うPCを.NET Framework 4.5にする。
この場合、スクリプトの書き換えは、不要です。
■解決策[3]
.NET Framework 4.0|4.5 混在の場合、
iill_SMTP_setBody_Add( "plain" ; Substitute ( simpleExample_send::body_text ; "¶." ; "¶ ." ) )
iill_SMTP_setBody_Add( "html" ; Substitute ( simpleExample_send::body_html ; "¶." ; "¶ ." ) )
※但し、この方法の場合、行頭にピリオドがあった場合、受信側で「スペース+ピリオド」になってしまいます。
オフライン
ページ: 1
[ 0.015 秒でページを生成, 9 クエリーを実行 - 使用メモリー: 1.54 MiB (ピーク: 1.66 MiB) ]