Senden Sie E-Mail mit Anhang über die E-Mail-client-Anwendung
Muss ich meine lokal installiert, thick-client-Anwendung (Qt /C++) erstellen Sie eine bereit-zu-sein-gesendet E-Mail-Nachricht auf dem client-Rechner:
- Diese Nachricht muss enthalten den Inhalt von einer relativ kleinen (15K - 200K) Binär-Datei.
- Viele meiner Benutzer werden getrennt an der Zeit, die diese Nachricht generiert wurde, so ist es möglich, die E-Mail muss sitzen im Postausgang, bis zu einem späteren Zeitpunkt.
- Diese Anwendung läuft auf Windows, Mac OS X und verschiedene Linux-Distributionen (die offizielle Unterstützung für Ubuntu/Debian und Fedora), und es gibt keine Anforderung, dass bestimmte E-Mail-clients installiert werden müssen.
Habe ich bereits versucht:
- Eröffnung eines
mailto:
link mitQDesktopServices::openUrl()
mit derattach
(oderattachment
) parameter. Aber diese Parameter sind nicht offiziell Teil des Protokolls, und einige clients (vor allem Outlook) ignorieren. - Codierung die Datei mit Base64 und das hinzufügen von es als Teil der
body
parameter einermailto:
link. Aber die Länge dermailto
link ist abgeschnitten von einigen E-Mail-clients (wieder, vor allem Outlook), so wird dies nicht funktionieren.
Google Picasa, erreicht dies (zumindest unter Windows; noch nicht geprüft anderen OS), wenn Sie senden Bilder aus, die innerhalb der Anwendung. Es wird eine Nachricht erstellt, die mit den Anlagen und den pre-text gefüllt. Sie können dann Bearbeiten Sie die Nachricht und senden an Ihrer Bequemlichkeit. Irgendwelche Ideen, wie Sie dies tun?
InformationsquelleAutor Dave Mateer | 2011-01-20
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Könnte man erstellen Sie ein .eml-Datei und öffnen Sie Sie, das sollte Ihnen den Effekt, den Sie möchten, solange es irgendeine E-Mail-client eingetragen in das system, um Dateien mit dieser Erweiterung. Ich bin sicher, dies ist nicht so universell ist, wie die
mailto:
System, aber wennmailto:
funktioniert nicht für Sie, ich glaube, das könnte die zweite beste option, um zu versuchen.Vom http://www.coolutils.com/Formats/EML
Seite Hinweis
Wenn ich auf "E-mail" in Picasa bekommen ich den dialog wo ich auswählen kann, welches Programm (Thunderbird oder Google Mail) ich will senden E-Mail mit. Dies bedeutet, dass Picasa kennt bestimmte E-Mail-client verwendet wird, um E-Mail senden, und verwenden Sie können benutzerdefinierte Methode, die speziell zu ausgewählten E-Mail-client, um E-Mail senden. Dies ist natürlich nur Spekulation, aber könnte es sein, dass Picasa macht die Benutzer zu wählen, E-Mail-client, weil es keine generische Möglichkeit, das zu tun, was Sie Fragen stellen.
Ich glaube nicht, dass Sie den richtigen Ansatz ; die Verwendung von MAPI /C++. Ich habe dies mehrmals getan, sowohl in Outlook /Thunderbird mit MAPI/C++ . Sie können wählen, die Standard-Mail-client durch Abfragen der Registrierung, ich denke, das ist, was alle Anwendungen.
Siehe auch den link hier http://lists.trolltech.com/qt-interest/2006-02/thread00861-0.html
Vor einiger Zeit habe ich zu schreiben begann, eine kleine Bibliothek für die Eröffnung des 'Standard-Mail-client' in eine Plattform-unabhängige Art und Weise. Es kann noch immer müssen einige arbeiten, aber Sie können es als Basis nutzen, wenn Sie wollen: https://github.com/picaschaf/qt-email