LotusScriptエージェントでは、MIMEクラスを使用してMIMEで複数部分メールを作成します。それは動作し、メールは正しく送信されます。LotusScriptを使用して拡張文字(アクセント付き)を含む添付ファイルを含むMIMEメールを作成する方法
名前にアクセント記号付きのファイルが正しく転送されないという大きな問題があります。内容は正しいが、名前は正しくない。私は100の方法で試しましたが、それは不可能であるか、何か完全に間違っています。私はノートに手動でメールを作成し、それが動作する同じファイルを送信する場合
Set Me.mc = Me.mr.createChildEntity()
Set Me.mh = Me.mc.CreateHeader("Content-Disposition")
Call Me.mh.SetHeaderVal(disposition + {; filename="} & attName & {";charset="iso-8859-1"})
Set Me.mh = Me.mc.CreateHeader("Content-ID")
Call Me.mh.SetHeaderVal(|<| & attName & |>|)
Set stream = Me.session.CreateStream
If stream.Open(attFile) Then
Call Me.mc.SetContentFromBytes(stream, strContentType & {; charset="iso-8859-1"; name="} & attName & {"}, ENC_IDENTITY_BINARY)
Call stream.Close
End If
が、ファイルの名前は、コード化されています
はここ(の一部)私のコードです。これを取り除くにはどうすればいいですか?
更新: 私はattNameをエンコードするために、以下の機能を追加しました:
Function URLEncode(s As String, cset As String) As String
Dim v As Variant
v= Evaluate(|@ReplaceSubstring(@URLEncode("| + cset + |";"| + s + |"); "%"; "=")|)
URLEncode= "=?" + cset + "?Q?" + v(0) + "?="
End Function
それは、@関数URLENCODEとURLDecodeが指数関数的に速くLotusScriptの同等物を書くよりであることを言及する価値があるので、これは間違いなく行くための方法です評価1の場合です。 –