Einzelnen Beitrag anzeigen

Benutzerbild von dataspider
dataspider

Registriert seit: 9. Nov 2003
Ort: 04539 Groitzsch
1.351 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Mail mit Inline Images und Indy - keine Bildanzeige Smartphone

  Alt 4. Feb 2016, 10:57
Es scheint jetzt zu funktionieren.

Nachdem mir aufgefallen ist, dass Content-Disposition hier auch den Dateinamen enthält, habe ich die Mailheader der Inline - Images vor dem Senden noch mal manipuliert:


Delphi-Quellcode:
procedure TSMTPMail.CheckMail(AMail: TIdMessage);
Var
  I: Integer;
  APart: TIdMessagePart;
  AFileName: string;
  s: string;
begin
  AMail.MessageParts.CountParts;
  for I := 0 to AMail.MessageParts.Count - 1 do
  begin
    APart := AMail.MessageParts[I];
    if (APart.ContentDisposition = 'inline') then
    begin
      s := APart.Headers.Values['Content-ID'];
      if s <> 'then
      begin
        AFileName := Copy(s, 2, Length(s) - 2); // ohne <>
        APart.Headers.Values['Content-Disposition'] := 'inline; filename="' +
          AFileName + '"';
      end;
    end;
  end;
end;
Damit anstatt nur 'inline' 'inline; filename="image001.jpg"' steht.

Jetzt werden die Bilder auch unter Android und Blackberry OS angezeigt.

Vielleicht wird es in Indy ja mal geändert.

Frank
Frank Reim
  Mit Zitat antworten Zitat