PB.Ex Mail (Windows)

Anwendungen, Tools, Userlibs und anderes nützliches.
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: PB.Ex Mail (Windows)

Beitrag von RSBasic »

PB.Ex Mail 1.0.5.0 wurde veröffentlicht.

Changelog:
  • Hinzugefügt: CountMailAttachmentsEx()
  • Hinzugefügt: ExamineMailAttachmentsEx()
  • Hinzugefügt: NextMailEntryAttachmentsEx()
  • Hinzugefügt: MailEntryAttachmentsFileNameEx()
  • Hinzugefügt: SaveMailEntryAttachmentsEx()
  • Hinzugefügt: FinishMailAttachmentsEx()
  • Hinzugefügt: GetMailAttachmentsEx()
  • Hinzugefügt: SetMailAttachmentsEx()
  • Geändert: SendMailEx(): Anhänge können jetzt hinzugefügt werden.
  • Geändert: CreateMailEx(): Anhänge können jetzt hinzugefügt werden.
  • Geändert: SendMailFileEx(): Anhänge werden jetzt berücksichtigt.
  • Geändert: LoadMailEx(): Anhänge werden jetzt berücksichtigt.
  • Geändert: OutputError$ muss vor dem Übergeben mit 128 Zeichen reserviert werden. Maximale Länge der Rückgabe beträgt 128 Zeichen einschließlich des NULL-Zeichens.
  • Geändert: OutputError$: Dieser Parameter ist jetzt optional und kann 0 sein.
  • Optimiert: POP3
  • Bugfixes
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: PB.Ex Mail (Windows)

Beitrag von RSBasic »

Ich wollte jetzt folgenden Text:
@ErrorOutput$: Falls ein Fehler auftritt, wird die Fehlermeldung in die String-Variable gespeichert.
durch folgenden ersetzen:
@ErrorOutput$: Falls ein Fehler auftrat, dann wird die Fehlermeldung in die String-Variable gespeichert. Diese String-Variable muss vor dem Übergeben mit 128 Zeichen reserviert werden. Maximale Länge der Rückgabe beträgt 128 Zeichen einschließlich des NULL-Zeichens. Wenn bei einem Fehler keine Fehlerbeschreibung zurückgegeben werden soll, dann kann stattdessen 0 übergeben werden.
Damit es jedem klar ist, aber beim Aktualisieren meines Startbeitrages erschien folgende Meldung:
Ihr Beitrag enthält 71511 Zeichen. Es sind maximal 60000 Zeichen erlaubt.
Aufgrund der vielen Funktionen, die ich bisher umgesetzt habe (die größte PB.Ex-Bibliothek von allen), reicht die maximale Länge des Beitrages für die Hilfebeschreibung nicht mehr aus.
Dann muss ich wohl stattdessen eine chm oder so erstellen.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: PB.Ex Mail (Windows)

Beitrag von RSBasic »

PB.Ex Mail 1.0.6.0 wurde veröffentlicht.

Changelog:
  • Hinzugefügt: MailEntryAttributeEx(): Damit kann ermittelt werden, ob die E-Mail gelesen wurde.
  • Hinzugefügt: SetMailAttributeEx(): Damit kann man eine E-Mail als gelesen oder ungelesen markieren.
  • Hinzugefügt: GetMailAttributeEx(): Damit kann ermittelt werden, ob die E-Mail gelesen wurde.
@Morty
Anhänge und Ungelesen-/Gelesen-Flag kannst du nun ermitteln und hinzufügen/setzen.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Morty
Beiträge: 268
Registriert: 22.10.2004 07:20
Wohnort: Erfurt
Kontaktdaten:

Re: PB.Ex Mail (Windows)

Beitrag von Morty »

Hi.

Vielen Dank für Deine Engagement und die zahlreichen Updates. Leider ist aber irgendwie bei den Standard Funktionen der Wurm drin.

ExamineMailEx - beendet einfach irgendwann (beliebig) die Auflistung.
In Postfach 1 habe ich laut CountMailEx: 178 Mails. Diese lasse ich mir auflisten, das Programm endet aber nach der 19. Email - ohne Fehler - ohne Hinweis in der Schleife.

In Postfach 2 habe ich augenscheinlich zirka 10 Mails. Hier gibt mit ExamineMailEx nur die erste Mail wieder. Dann ist wieder Schluss.

Aber: Lasse ich mir nach der While NextMailEntryEx(1, @ErrorOutput$) // Wend Schleife nochmal den Fehler ausgeben, bekomme ich ein "Das Objekt mit Nullwert muss einen Wert haben."

Daher bin ich noch nicht dazu gekommen, die neuen Funktionen zu testen.

PB: 5.40 LTS (x86) - also die 32 Bit Variante

Gruß,
- Morty
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: PB.Ex Mail (Windows)

Beitrag von RSBasic »

Hi,

danke für das Testen.
Hast du IMAP oder POP3 verwendet?
Zum Testen hast du wahrscheinlich den Beispielcode im ersten Beitrag verwendet oder?
Ich schaue es mir heute Abend an bezüglich der Fehlermeldung. Liegt wahrscheinlich daran, dass die Schleife vorzeitig abgebrochen wird und du nicht alle E-Mails ermitteln konntest.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Morty
Beiträge: 268
Registriert: 22.10.2004 07:20
Wohnort: Erfurt
Kontaktdaten:

Re: PB.Ex Mail (Windows)

Beitrag von Morty »

Ja, den Beispielcode, ganz leicht modifiziert. Alles über IMAP.

Code: Alles auswählen

If OpenMailEx(1, #PBEx_Mail_Protocol_IMAP, "imap.woauchimmer.de", 993, "psst@geheim.de", "istGeheim", 1, @ErrorOutput$)
  
  Debug "OpenMailEx: OK"
  
  If ExamineMailEx(1, @ErrorOutput$)
    Debug "Mails: "
    Debug CountMailEx(1, "", @ErrorOutput$)
    c.i = 0
    While NextMailEntryEx(1, @ErrorOutput$)
      MailEntrySubjectEx(1, @Output$, @ErrorOutput$)
      Debug "Subject: " + Output$
      MailEntryFromEx(1, @Output$, @ErrorOutput$)
      Debug "From: " + Output$
      MailEntryToEx(1, @Output$, @ErrorOutput$)
      Debug "To: " + Output$
      Debug "Date: " + FormatDate("%dd.%mm.%yyyy %hh:%ii:%ss", MailEntryDateEx(1, @ErrorOutput$))
      c.i + 1
      Debug Str(c.i) + " : " + MailIDEx(1, @ErrorOutput$)
   
      
      Debug "--------------------------------------------------"
      Debug ErrorOutput$    ;<----- BLEIBT IMMER LEER
    Wend
    Debug ErrorOutput$    ;<----- HIER WIRD DANN DER FEHLER AUSGEGEBEN
  EndIf
 
  CloseMailEx(1, @ErrorOutput$)
Else
  Debug ErrorOutput$
EndIf
Mach Dir keinen Stress, das Problem rennt nicht weg.

Gruß,
- Morty
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: PB.Ex Mail (Windows)

Beitrag von RSBasic »

Problem bei Morty behoben. Er testet weiter.

PB.Ex Mail 1.0.7.0 wurde veröffentlicht.

Changelog:
  • Bugfix: NextMailEntryEx(): Wenn das Datumsfeld NULL war, schlug es fehl.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: PB.Ex Mail (Windows)

Beitrag von RSBasic »

PB.Ex Mail 1.0.8.0 wurde veröffentlicht.

Changelog:
  • Geändert: ExamineMailEx(): Neuer Parameter zum Festlegen der Reihenfolge zum Ermitteln wurde hinzugefügt. Wenn SortByNew = 0, dann wird die erste E-Mail zuerst ermittelt. Wenn SortByNew = 1, dann wird die neuste E-Mail zuerst ermittelt.
  • Geändert: ExamineMailEx(): Neuer Parameter zum Ermitteln von E-Mails eines bestimmten Flags (alle, nur gelesene, nur ungelesene) wurde hinzugefügt.
  • Geändert: ExamineMailEx(): Neuer Parameter zum Festlegen, ob nur die Header-Daten oder alle Daten ermittelt werden, wurde hinzugefügt.
@Morty
Ich habe all deine Funktionsvorschläge umgesetzt.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
Morty
Beiträge: 268
Registriert: 22.10.2004 07:20
Wohnort: Erfurt
Kontaktdaten:

Re: PB.Ex Mail (Windows)

Beitrag von Morty »

Wow, vielen Dank :allright:

Zwei Dinge sind mir beim Testen aufgefallen:

1. CountMailEx
Der Befehl liefert eine falsche Anzahl an E-Mails zurück, wenn man ExamineMailEx mit den neuen Flags einschränkt. Ich sage ihm zum Beispiel, nur neue Mails (Unseen) abrufen - und CountMailEx gibt mir trotzdem die komplette Anzahl der E-Mails zurück.
Wenn das "by Design" so sein soll, ist das auch weniger tragisch, da While NextMailEntryEx die Sache ja richtig macht. Aber wäre schon schön, vorab einfach zu wissen, wie viele Mails denn überhaupt da sind.

2. #PBEx_Mail_FetchType_OnlyHeaderData - CountMailAttachmentsEx - fehlende Anhänge-Informationen
Funktioniert super, und ist auch recht schnell, weil man eben nicht die ganze Mail abruft :allright: Leider fehlt aber bei E-Mails mit Anhängen genau die Information, wie viele Anhänge die Mail hat. Also ExmineMailEx -> CountMailAttachmentsEx liefert immer 0.

Danke und Gruß,
- Morty
Benutzeravatar
RSBasic
Admin
Beiträge: 8022
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Re: PB.Ex Mail (Windows)

Beitrag von RSBasic »

Morty hat geschrieben:1. CountMailEx
Der Befehl liefert eine falsche Anzahl an E-Mails zurück, wenn man ExamineMailEx mit den neuen Flags einschränkt. Ich sage ihm zum Beispiel, nur neue Mails (Unseen) abrufen - und CountMailEx gibt mir trotzdem die komplette Anzahl der E-Mails zurück.
Wenn das "by Design" so sein soll, ist das auch weniger tragisch, da While NextMailEntryEx die Sache ja richtig macht. Aber wäre schon schön, vorab einfach zu wissen, wie viele Mails denn überhaupt da sind.
CountMailEx() ist normalerweise unahängig von ExamineMailEx(), aber ich kann da gerne auch Parameter hinzufügen, um die jeweilige Anzahl zu ermitteln.
Morty hat geschrieben:2. #PBEx_Mail_FetchType_OnlyHeaderData - CountMailAttachmentsEx - fehlende Anhänge-Informationen
Funktioniert super, und ist auch recht schnell, weil man eben nicht die ganze Mail abruft :allright: Leider fehlt aber bei E-Mails mit Anhängen genau die Information, wie viele Anhänge die Mail hat. Also ExmineMailEx -> CountMailAttachmentsEx liefert immer 0.
CountMailAttachmentsEx() basiert auf ExamineMailEx():
PB.Ex Hilfe hat geschrieben:Beschreibung: Ermittelt, wie viele Anhänge in der aktuellen E-Mail existieren. Diese Funktion ist nur innerhalb der ExamineMailEx-Schleife gültig.
Ich muss mal schauen, wie ich das am besten löse.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Antworten