D2010 で Indy ティブロンの最新のスナップショットを使用します。次のような非常に単純なプロジェクト:
var
stream: TFileStream; (s is TidSMTP and m is TidMessage)
begin
s.Connect;
Stream := TFileStream.Create('c:\Test.zip', fmOpenRead or fmShareExclusive);
try
with TIdAttachmentMemory.Create(m.MessageParts, Stream) do
begin
ContentType := 'application/x-zip-compressed';
Name := ExtractFilePath('C:\'); //'
FileName := 'Test.zip';
end;
finally
FreeAndNil(Stream);
end;
s.Send(m);
s.Disconnect();
end;
Outlook、The bat!、OE、yahoo などではすべて問題なく動作しますが、Thunderbird では添付ファイルが表示されません。Thunderbird でメッセージのソースを見ると、添付ファイルがあります。Indy から送信されたメッセージと他のクライアントから送信されたメッセージの唯一の違いは、Indy メッセージの順序が次のとおりであることです。
Content-Type: multipart/mixed; boundary="Z\=_7oeC98yIhktvxiwiDTVyhv9R9gwkwT1"
MIME-Version: 1.0
他のクライアントには次の順序があります。
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="Z\=_7oeC98yIhktvxiwiDTVyhv9R9gwkwT1"
それが問題の原因であるかどうかはわかりませんが、そうである場合: これは Thunderbird のバグですか、それともメッセージのヘッダーを「奇形」にする indy の問題ですか? この順番は問題ないですか?とにかくそれは問題ですか?