Мне нужно мое локально установленное приложение с толстым клиентом (Qt/С++) для создания готового к отправке сообщения электронной почты на клиентской машине:
- Это сообщение должно содержать содержимое относительно небольшого (15K - 200K) двоичного файла.
- Многие из моих пользователей будут отключены в момент создания этого сообщения, поэтому возможно, что электронное письмо должно будет находиться в папке "Исходящие" до более позднего времени.
- Это приложение будет работать в Windows, Mac OS X и различных дистрибутивах Linux (официальная поддержка Ubuntu/Debian и Fedora), и нет необходимости устанавливать определенные почтовые клиенты.
Я уже пробовал:
- Открытие ссылки
mailto:
с помощьюQDesktopServices::openUrl()
с параметромattach
(илиattachment
). Но эти параметры официально не являются частью протокола, и некоторые клиенты (особенно Outlook) игнорируют их. - Кодирование файла с использованием Base64 и добавление его как части параметра
body
ссылкиmailto:
. Но длина ссылкиmailto
усекается некоторыми почтовыми клиентами (опять же, в частности Outlook), поэтому это не сработает.
Google Picasa достигает этого (по крайней мере, в Windows, не проверял другие ОС) при отправке изображений из приложения. Он создает сообщение с вложениями и некоторым предварительно заполненным текстом. Затем вы можете отредактировать сообщение и отправить его в удобное для вас время. Любые идеи, как они это делают?