Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > VC++ - отослание письма с аттачем


Автор: WebDenis 12.1.2003, 10:04
Здравствуйте!

 А можно ли с VC++ как то отослать письмо, с программы??? Проще
 говоря можно ли написать такую прогу, которая отошлет письмо,
 желательно с аттачем (с файлом) ???

 Такую прогу можно сделать в консольном режиме? С поддержкой MFC???

--
С Уважением, Денис.
[email protected]

Автор: Baa 13.1.2003, 10:03
Сделать можно все...
Было бы желание найти ответ самому...
Код

#include <atlsmtpconnection.h>
...
STDMETHODIMP CBaaMail::SendMail(BSTR bstrSender, BSTR bstrSenderName, BSTR bstrRecipient, BSTR bstrSubject, BSTR bstrText, BSTR bstrServer)
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());

CW2A pszSender     (bstrSender);
CW2A pszSenderName (bstrSenderName);
CW2A pszRecipient  (bstrRecipient);
CW2A pszSubject    (bstrSubject);
CW2A pszText       (bstrText);
CW2A pszServer     (bstrServer);

CMimeMessage msg;
msg.SetSender    (pszSender);
msg.SetSenderName(pszSenderName);
msg.AddRecipient (pszRecipient);
msg.SetSubject   (pszSubject);
msg.AddText      (pszText);
msg.SetPriority  (static_cast<ATL_MIME_PRIORITY>(1));

CSMTPConnection* connection = new CSMTPConnection ();

LPCTSTR lpctError;

if (!connection->Connect(pszServer))
{
lpctError = A2T("Не могу образовать соединение с сервером.");
MyReportEvent (&lpctError, SMTP_CONNECT_ERROR);

} else  

if (!connection->SendMessage(msg))
{
lpctError = A2T(pszRecipient);
MyReportEvent (&lpctError, SMTP_SEND_ERROR);
}
delete connection;

return S_OK;
}

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)