MSG_Extract freezing 4D

Hello !

I have a problem with internet command MSG_Extract :
I have a routine that download emails and extract attachements, when those attachements are heavy it’s freezes all 4D interface while this routine is manage by a specific worker process
(I also tried with standard process and it’s didn’tchange anything)

Does anyone has a clue ?

Best regards
Anatole

https://github.com/miyako/4d-plugin-gmime

I found the solution to my problem 5 minutes ago (Internet command plugin wasn’t up to date…).
I still might consider this pluggin :wink: Thank you !

Ich habe es gerade mal nachgebaut mit einer Minimal-Mail mit einem Anhang und einem Inline-Bild:

[]21233630;“Your comment here…”[/]

Wenn man den Quelltext “TestMail.eml” aus dem Anhang
http://forums.4d.com/4DBB_Main/x_User/2905285/files/21233647.zip
mit MSG_Extract(…;1;…) aufruft, werden beide Bilder und der HTML-Text abgespeichert.

Ruft man hingegen MSG_Extract(…;0;…) auf, dann werden zwei Dateien im Raw-Format abgespeichert:
Die erste Datei enthält beide Texte (Text und HTML) und dazu das Inline-Bild.
Die zweite Datei enthält den echten Anhang.

Also zwei völlig verschiedene Konzepte.

https://github.com/miyako/4d-plugin-gmime

Wenn Sie den Anhang weglassen, erhalten Sie mit MSG_Extract (…;0;…) und MSG_Extract (…;1;…) das gleiche Ergebnis (bis auf die Dekodierung des Base64).
MSG_Extract (…;0;…) scheint nur eine Ebene tief zu extrahieren, MSG_Extract (…;1;…) dagegen mehrere. Ich frage mich, ob dies so gewollt ist oder nicht.
Wir verwenden in unserem E-Mail-Client zur Anzeige von Mails noch Teile aus der E-Mail-Komponente von Herrn Maul. Und die kommt durch diesen Unterschied ins Schleudern.
Bei Gelegenheit werde ich versuchen, ob es funktioniert wenn ich MSG_Extract rekursiv aufrufe bis nur noch eine Datei übrig bleibt…

Danke für die Mühe,
Peter Grün

Sehr interessantes Plugin - Danke für den Hinweis.

Lieber wäre mir zwar eine Implementierung rein in 4D, aber da der Source-Code verfügbar ist wäre es ein gangbarer Weg.

Nochmals Danke für den Hinweis
Peter Grün