Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: dataspider am 15.09.08 - 18:27:19

Titel: Anhänge mit CreateMIMEEntity in Body einbetten
Beitrag von: dataspider am 15.09.08 - 18:27:19
Hallo,

ich habe jetzt erfolgreich den Mailversand mit Delphi über OLE von Richtext auf MIME umgestellt.
Leider sind die angehängten Dateinen nicht so schön im Body eigebettet wie mit:

RichItem.EmbedObject(EMBED_ATTACHMENT...

Ich habe auch versucht, RichTextItem und MIMEEntity zu mischen. Das macht er aber nicht.

Mit dieser Routine werden Anhänge zur Mail hinzugefügt:
Code
...
Var
  MimeEntity: IMIMEEntity;
  MimeSTream: INotesStream;
  MimeHeader: IMIMEHeader;
  MimeChild: IMIMEEntity;
  AHeader: IMIMEHeader;
...
procedure AttacheFile(FileName: string);
Var
  AShortName: string;
begin
  AShortName := ExtractFileName(FileName);
  MimeSTream.Open(FileName, 'binary');
  MimeChild := MimeEntity.CreateChildEntity(nil);
  AHeader := MimeChild.CreateHeader('Content-Disposition');
  AHeader.SetHeaderValAndParams('attachment; filename=' + AShortName);
  AHeader := MimeChild.CreateHeader('Content-Id');
  AHeader.SetHeaderVal(AShortName);
  MimeChild.SetContentFromBytes(MimeSTream, 'application/pdf', ENC_QUOTED_PRINTABLE);
end;
Wie kann ich jetzt einen Link auf den Anhang in den Mailtext einfügen?

Danke, Frank
Titel: Re: Anhänge mit CreateMIMEEntity in Body einbetten
Beitrag von: m3 am 15.09.08 - 21:39:26
Wozu willst Du einen Link auf den Anhang einfügen? Der User sieht den Anhang eh, wenn er die Mail aufmacht und kann dann drauf klicken.
Titel: Re: Anhänge mit CreateMIMEEntity in Body einbetten
Beitrag von: dataspider am 16.09.08 - 10:19:27
Wozu willst Du einen Link auf den Anhang einfügen? Der User sieht den Anhang eh, wenn er die Mail aufmacht und kann dann drauf klicken.
Hi,

das ist richtig. Ich habe auch gestern nicht Alles testen können.
Ich habe den Unterschied nur beim Lesen der Mail Online (Strato WebMail) gesehen.
Da wurde bisher am Ende des Textes ein Link zum Dokument erzeugt. Damit konnte ich dieses öffnen oder herunterladen.
Dieser Link am Ende des Textes ist nicht mehr da. Ich habe es auch nicht geschafft, die Datei im Browser zu öffnen.
Wenn ich die Mail dann mit Outlook abhole, kann ich den Anhang öffnen.
Ich habe nur Angst, dass Benutzer von Online Mail Accounts auch Probleme haben könnten.

Danke an dieser Stelle für deine Antwort.

[EDIT]Ich denke, es hat was mit der Encodierung zu tun. So ist base64 wohl für Binärdateien vorgesehen und nicht quoted printable[/EDIT]
Titel: Re: Anhänge mit CreateMIMEEntity in Body einbetten
Beitrag von: m3 am 16.09.08 - 15:12:54
[EDIT]Ich denke, es hat was mit der Encodierung zu tun. So ist base64 wohl für Binärdateien vorgesehen und nicht quoted printable[/EDIT]
LOL. Ja, das wäre vorteilhaft. ;)
Titel: Re: Anhänge mit CreateMIMEEntity in Body einbetten
Beitrag von: dataspider am 22.09.08 - 18:33:35
Hi,

ich habe das Problem gelöst.
Ich habe nur im Parent - Teil anstatt multipart/mixed multipart/related als Content-Type angegeben.

Damit funktioniert es :)

Frank