Drag&Drop von e-Mails aus Thunderbird?

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
Kukulkan
Beiträge: 1066
Registriert: 09.09.2004 07:07
Wohnort: Süddeutschland
Kontaktdaten:

Drag&Drop von e-Mails aus Thunderbird?

Beitrag von Kukulkan »

Hallo,

ich versuche, e-Mails aus Thunderbird in meine Anwendung zu ziehen. Ich bekomme eine Reaktion auf Files (also Cursor verändert sich), aber dann keinen #PB_Event_GadgetDrop Event. Das Beispiel aus der Hilfe funktioniert in dem Fall auch nicht.

Ich kann aber Dateien vom Thunderbird auf den Desktop oder Dateiexplorer ziehen. Das geht dann und die Mail wird als EML Datei gespeichert. Normale Dateien kann ich bei mir auch wieder per Drop bekommen. Was muss ich tun, um das direkt aus dem Thunderbird zu schaffen?

Grüße,

Kukulkan
Benutzeravatar
dige
Beiträge: 1235
Registriert: 08.09.2004 08:53

Re: Drag&Drop von e-Mails aus Thunderbird?

Beitrag von dige »

bin gerade zu faul zu suchen, vermute aber das es das gleiche problem darstellt wie ein drag'n drop aus outlook. dafür habe ich hier oder im englischen forum eine lösung gesehen..
"Papa, ich laufe schneller - dann ist es nicht so weit."
Benutzeravatar
Kukulkan
Beiträge: 1066
Registriert: 09.09.2004 07:07
Wohnort: Süddeutschland
Kontaktdaten:

Re: Drag&Drop von e-Mails aus Thunderbird?

Beitrag von Kukulkan »

Hallo,

das hab ich auch gefunden, aber das geht bei TB leider nicht. Ich bekomme den Namen oder auch den Betreff der Mail, aber nie den Inhalt :-(

Interessant: Windows kann das und speichert eine *.eml Datei. Aber mein Dateimanager kann es schon nicht mehr. Viele andere Programme (zB ZIP) können es auch nicht.

Kukulkan
Benutzeravatar
KatSeiko
Beiträge: 367
Registriert: 19.07.2008 07:47

Re: Drag&Drop von e-Mails aus Thunderbird?

Beitrag von KatSeiko »

Ich denke, dass da tiefer in den Eingeweiden von Windows zu suchen ist. Outlook und Outlook Express dürften das als erstes gekonnt haben, Thunderbird hat es irgendwo mal aufgesammelt, aber wie genau, das kann ich leider nicht sagen. Hat sich mal jemand den "Auswurf" von Outlook und Thunderbird vielleicht auch hexadezimal angesehen? Ich kann mir vorstellen, dass der gesamte Text der eMail da per Text rübergeschoben wird..
Win7 Ultimate x64, PureBasic 5.11

There is no substitute..
BildBildBild
Benutzeravatar
Sicro
Beiträge: 963
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Drag&Drop von e-Mails aus Thunderbird?

Beitrag von Sicro »

KatSeiko hat geschrieben:Ich kann mir vorstellen, dass der gesamte Text der eMail da per Text rübergeschoben wird..
...nicht nur der Text, sondern eine fertige Datei im EML-Format.

Ich habe das "Droppen" mal mit dem Thunderbird (5.0) und PureBasic (32-Bit, 4.51) erfolgreich mit folgendem Code ausprobiert:

Code: Alles auswählen

OpenWindow(0,1,1,500,500,"test")
EnableWindowDrop(0,#PB_Drop_Files,#PB_Drag_Copy)

Repeat
  e = WaitWindowEvent()
  
  If e = #PB_Event_WindowDrop
    Debug EventDropFiles()
    ; Debug-Ausgabe: C:\Users\ALEXAN~1\AppData\Local\Temp\Meine eMail.eml
  EndIf
Until e = #PB_Event_CloseWindow
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Benutzeravatar
dige
Beiträge: 1235
Registriert: 08.09.2004 08:53

Re: Drag&Drop von e-Mails aus Thunderbird?

Beitrag von dige »

Es wird tatsächlich vom TB eine Datei im Temp-Verzeichnis angelegt,
die man dann nur noch kopieren brauch. Ist ja easy!
@Sicro: Danke für den Tipp!

Vielleicht ein Bug? Interessanterweise geht es genau mit der Infomail
zu diesem Topic nicht:
Topic reply notification - "Drag&Drop von e-Mails aus Thunderbird?"

Der Text für den Dateinamen wird beim & Zeichen abgeschnitten..

Code: Alles auswählen

OpenWindow(0,1,1,500,500,"test")
EnableWindowDrop(0,#PB_Drop_Files,#PB_Drag_Copy)

Repeat
  e = WaitWindowEvent()
 
  If e = #PB_Event_WindowDrop
    file.s = EventDropFiles()
    
    Debug file
    Debug CountString(file, Chr(10))
    
    If FileSize(file) > 0
      If ReadFile(0, file)
        While Not Eof(0)
          Debug ReadString(0)
        Wend
        CloseFile(0)
      EndIf
    EndIf
    
    
    For n = 1 To CountString(file, Chr(10))
      Debug Str(n) + ". " + StringField(file, n, Chr(10))
    Next
  EndIf
Until e = #PB_Event_CloseWindow
"Papa, ich laufe schneller - dann ist es nicht so weit."
Benutzeravatar
Sicro
Beiträge: 963
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Drag&Drop von e-Mails aus Thunderbird?

Beitrag von Sicro »

dige hat geschrieben:Vielleicht ein Bug? Interessanterweise geht es genau mit der Infomail
zu diesem Topic nicht:
Topic reply notification - "Drag&Drop von e-Mails aus Thunderbird?"

Der Text für den Dateinamen wird beim & Zeichen abgeschnitten..
Zieht man die eMail auf den Desktop wird ebenfalls abgeschnitten, von daher kann man ein Bug seitens PureBasic schon mal ausschließen.
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Benutzeravatar
Kukulkan
Beiträge: 1066
Registriert: 09.09.2004 07:07
Wohnort: Süddeutschland
Kontaktdaten:

Re: Drag&Drop von e-Mails aus Thunderbird?

Beitrag von Kukulkan »

Hallo,

also ich weiß ja nicht, aber bei mir geht da absolut gar nichts. Der Event wird nicht mal ausgelöst. Ich nutze Thunderbird 3.1.11 unter Windows XP SP3. Das selbe mit TB 3.0.x unter Windows Vista.

Ist das der neue TB5, der da anders reagiert??? Mit 3.x geht es auf jeden Fall nicht.

Kukulkan
Benutzeravatar
alter Mann
Beiträge: 201
Registriert: 29.08.2008 09:13
Wohnort: hinterm Mond

Re: Drag&Drop von e-Mails aus Thunderbird?

Beitrag von alter Mann »

dige hat geschrieben:Der Text für den Dateinamen wird beim & Zeichen abgeschnitten..
wikipedia hat geschrieben: Problematisch sind außerdem Dateinamen, die das eigentlich erlaubte &-Zeichen enthalten, das von der DOS-Umgebung unter Windows jedoch als Trennzeichen einzeiliger Befehlsketten verwendet wird, so dass alles auf das &-Zeichen Folgende als eine weitere DOS-Befehlszeile interpretiert wird. In der Konsequenz gibt die Windows-„Eingabeaufforderung“ daher in diesem Fall eine Fehlermeldung aus, dass sie einen Befehl nicht finden oder ausführen konnte, dessen Name der Rest des eingegebenen Dateinamens nach dem &-Zeichen ist, ganz zu schweigen davon, dass die fragliche Datei selbst natürlich auch nicht geöffnet oder bearbeitet werden konnte.
Win11 64Bit / PB 6.0
Benutzeravatar
Sicro
Beiträge: 963
Registriert: 11.08.2005 19:08
Kontaktdaten:

Re: Drag&Drop von e-Mails aus Thunderbird?

Beitrag von Sicro »

Kukulkan hat geschrieben:also ich weiß ja nicht, aber bei mir geht da absolut gar nichts. Der Event wird nicht mal ausgelöst. Ich nutze Thunderbird 3.1.11 unter Windows XP SP3. Das selbe mit TB 3.0.x unter Windows Vista.

Ist das der neue TB5, der da anders reagiert??? Mit 3.x geht es auf jeden Fall nicht.
Habe mir gerade mal den Thunderbird 3.0 heruntergeladen und den Code an diesem angewendet. Wie du sagst habe ich auch keinen Event beim "Droppen" erhalten. Der Thunderbird 5 verwendet also eine andere Drag&Drop-Technik.

Von dige ist vermutlich dieser Thread aus dem englischem Forum gemeint:
http://www.purebasic.fr/english/viewtop ... 4&start=15
Der letzte Code aus dem Thread zeigt schon mal den Betreff der eMail von Thunderbird 3.0 an.

Wieso steigst du nicht einfach auf die neue Thunderbird-Version um? Wurden sicherlich viele Fehler behoben, wobei sicherlich auch einige die Sicherheit betreffen. Zudem ist das Programm ja kostenlos. Was steht also noch im Weg die neue Version zu verwenden?
Bild
Warum OpenSource eine Lizenz haben sollte :: PB-CodeArchiv-Rebirth :: Pleasant-Dark (Syntax-Farbschema) :: RegEx-Engine (kompiliert RegExes zu NFA/DFA)
Manjaro Xfce x64 (Hauptsystem) :: Windows 10 Home (VirtualBox) :: Neueste PureBasic-Version
Antworten