Emails per MAPISendMail verschicken

  • Hallo,
    ich habe folgenden Anwendungsfall: es sollen aus einem Programm heraus emails an beliebig viele Adressen gesendet werden. Es sollen wahlweise die Verfassen-Dialog des Mailclients (in diesem Fall Thunderbird) geöffnet werden oder nicht. Hier bin ich auf zwei Probleme gestoßen:
    1. Das Programm läuft nach dem Öffnen des Verfassendialogs weiter (anders als z.B. Outlook) und liefert als Returncode immer unmittelbar success zurück, so dass die Anwendung nicht reagieren kann, wenn der Benutzer die Mail gar nicht absendet.
    2. Wenn die Mails versendet werden sollen ohne dass der Verfassendialog geöffnet werden soll, dann kommt die Meldung "Senden der Nachricht fehlgeschlagen. Bitte überprüfen Sie Ihre Konteneinstellungen und wiederholen Sie den Vorgang". Der Returncode ist in diesem Fall ein allgemeiner Mapifehler (Code 2). Ich hab keine Einstellungen gefunden, die das irgendwie beeinflussen würden. Outlook meldet in diesem Fall, dass eine andere Anwendung eine Mail versenden will und fragt nach, ob man das zulassen möchte.
    Kann ich das Verhalten in diesen beiden Punkten irgendwie beeinflussen, so dass Thunderbird sich hier kompatibel zu Outlook verhält?


    Vielen Dank schon mal.

  • Hallo,
    ich frage nochmal nach.
    Hat wirklich niemand je ein ähnliches Problem gehabt?
    VG

  • Hallo,
    das Problem, ist, dass du nicht schreibst, um welches Programm es sich handelt (vielleicht kann ja einer der Helfer das dann nachvollziehen). Ich hab z.B. überhaupt kein Programm, mit dem ich das machen könnte.
    Darum kann ich auch nicht verstehen warum welches Programm nicht weiterlaufen sollte und was ein Returncode ist.


    Außerdem hast du folgendes vergessen:


    Wichtiger Hinweis:
    Bitte geben Sie an, welche Thunderbird-Version (1.0.* / 1.5.0.* / 2.0.0.*) und welches Betriebssystem Sie einsetzen - so kann man Ihnen besser Hilfe leisten.


    Gerade mit Mapi gab es nämlich in der Version .22 einen Bug.


    Kann eine Frage hier im Forum nicht beantwortet werden, dann meldet sich auch niemand.


    Gruß

    Konversationen ohne vorherige Anforderung werden ignoriert..
    Windows 10, 64-bit, immer die aktuelle Thunderbird-Version und ältere Testversionen. Testprofile vorhanden.
    Testkonten bei den meisten größeren Mailanbietern wie GMX, Web.de usw

  • Hallo,
    sorry dass ich jetzt erst schreibe. Es handelt sich um Spezialsoftware, die man nicht an jeder Ecke findet. Grundsätzlich sollten aber alle Programme, die per MAPISendMail emails versenden, ähnliche Effekte haben.
    Ich benutze die Thunderbirdversion 2.00.23 und Windows XP (tritt aber ebenso unter Vista auf).
    Nun zur Antwort:
    Problem 1: ein Returncode ist der Code, mit dem z.B. ein aufgerufenes Programm (oder in diesem Fall die Funktion MAPISendMail) antwortet. Dieser sagt ob die Aktion erfolgreich durchgeführt wurde oder ob ein Fehler aufgetreten ist. Das erste geschilderte Problem liegt also darin, dass die Funktion MAPISendMail sofort zum aufrufenden Prozess zurückkehrt (wobei der Returncode sagt, dass die Mail erfolgreich verschickt wurde), obwohl die Mail im Thunderbird vom Benutzer noch gar nicht losgeschickt wurde. Warum ist das wichtig: das aufrufende Programm müsste anhand des Codes erkennen können ob die email tatsächlich verschickt wurde oder nicht und davon abhängig unterschiedliche Aktionen ausführen.
    Problem 2: die hier geschilderte Meldung kommt vermutlich berechtigterweise aus Sicherheitsgründen, damit nicht beliebige Applikationen beliebig viele Mails verschicken können, ohne dass der Benutzer es merkt. Das hat durchaus seine Berechtigung. Allerdings kann das ganze ja auch gewollt sein und für diesen Fall sollte man das Verhalten von Thunderbird irgendwie anpassen können. Das genau war meine Frage.


    VG