//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Mainfrm_Unit.h"
#include "IdAttachmentFile.hpp"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "IdBaseComponent"
#pragma link "IdComponent"
#pragma link "IdExplicitTLSClientServerBase"
#pragma link "IdMessageClient"
#pragma link "IdSMTP"
#pragma link "IdSMTPBase"
#pragma link "IdTCPClient"
#pragma link "IdTCPConnection"
#pragma link "IdIOHandler"
#pragma link "IdIOHandlerSocket"
#pragma link "IdIOHandlerStack"
#pragma link "IdSSL"
#pragma link "IdSSLOpenSSL"
#pragma link "IdMessage"
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::btn1Click(TObject *Sender)
{
//
IdMessage1->CharSet = "gb2312";
IdMessage1->Recipients->EMailAddresses = edtDest->Text; //邮件接收者的信箱
IdMessage1->From->Text = edtSource->Text; //邮件发送者的信箱
IdMessage1->Subject = edtTitle->Text; //邮件的标题
IdMessage1->Body->Add(mmoMsg->Text);//邮件内容
//IdMessage1->CCList->EMailAddresses = "gzxsg@126.com"; //邮件的抄送地址
IdMessage1->MessageParts->Clear();
IdMessage1->MessageParts->Add();
UnicodeString AttFile = edtAttchment->Text;//"d:\\单页属性表.dotx";//附件文件名
TIdAttachmentFile *idAtta = new TIdAttachmentFile(IdMessage1->MessageParts,AttFile);
IdSMTP1->Host = edtServer->Text;
IdSMTP1->Port = edtServerPort->Text.ToIntDef(25);
//IdSMTP1->AuthenticationType = atLogin;
IdSMTP1->AuthType = satDefault;
IdSMTP1->Username = edtUser->Text;
IdSMTP1->Password = edtPassword->Text;
try
{
IdSMTP1->Connect();
IdSMTP1->Authenticate();
IdSMTP1->Send(IdMessage1);
Application->MessageBox(L"发送完成!",L"邮件系统",MB_ICONINFORMATION);
}
catch(Exception &e)
{
Application->MessageBox(e.Message.c_str(),L"邮件系统",MB_OK+MB_ICONWARNING);
}
IdSMTP1->Disconnect();
// IdMessage1->Recipients->EMailAddresses = "8368382@qq.com"; //邮件接收者的信箱
// IdMessage1->From->Text = "gzxsg@126.com"; //邮件发送者的信箱
// IdMessage1->Subject = "测试发送电子邮件"; //邮件的标题
// IdMessage1->Body->Add("利用C++Builder中的IdSMTP和IdMessage控件发送电子邮件");//邮件内容
// IdMessage1->CCList->EMailAddresses = "8368382@126.com"; //邮件的抄送地址
// IdMessage1->MessageParts->Clear();
// IdMessage1->MessageParts->Add();
// //AnsiString AttFile=" d:\\a.txt";//附件文件名
// //TIdAttachmentFile *idAtta=new TIdAttachmentFile(IdMessage1->MessageParts,AttFile);
// IdSMTP1->Host = "smtp.126.com";
// IdSMTP1->Port = 25;
// //IdSMTP1->AuthenticationType = atLogin;
// IdSMTP1->AuthType = satDefault;
// IdSMTP1->Username = "gzxsg";
// IdSMTP1->Password = "79780812";
// IdSMTP1->Connect();
// IdSMTP1->Authenticate();
// IdSMTP1->Send(IdMessage1);
// IdSMTP1->Disconnect();
// IdSMTP1->Host = "smtp.126.com";
// IdSMTP1->Port = 25;
// IdSMTP1->IOHandler = m_IdSSLIOHandlerSocketOpenSSL;
// IdSMTP1->UseTLS = utNoTLSSupport;
//
//
// IdSMTP1->Username = L"gzxsg";
// IdSMTP1->Password = L"79780812" ;
// IdSMTP1->AuthType = satDefault;
// IdSMTP1->Authenticate();
//
//
// IdMessage1->ContentType = "text/html";
// IdMessage1->Subject = "TEST"; // 邮件标题,只要是汉字, 就会报错 RangeCheck error,英没问题. C++ BUILDER 2010自带的indy
//
// IdMessage1->ReceiptRecipient->Address = L"8368382@qq.com";
// if (!IdSMTP1->Connected())
// {
// try
// {
//
// IdSMTP1->Connect();
// }catch(...)
// {
// Application->MessageBox(L"连接邮件服务器失败!", L"提示", MB_OK + MB_ICONINFORMATION);
// return;
// }
// }
// if (IdSMTP1->Connected())
// {
// try
// {
// IdSMTP1->Send(IdMessage1);
// }
// catch(...)
// {
// Application->MessageBox(L"发送邮件失败!", L"提示", MB_OK + MB_ICONWARNING);
// return;
// }
// }
//
// Application->MessageBox(L"邮件发送成功!", L"提示", MB_OK + MB_ICONINFORMATION);
// int recnum, k; AnsiString addr;
// IdSMTP1->Host = ComboBoxaddr->Text.Trim ();//设定SMTP服务器地址和端口号
// IdSMTP1->Port =25;
// if(CheckBox_AUTH->Checked ==true) //判断并设置SMTP服务器是否需要认证
// {
// IdSMTP1->Authentication Type = at Login;
// IdSMTP1->UserId = Edit name->Text. Trim ();
// IdSMTP1->Password=MaskEdit_pass->Text. Trim ();
// }
//
// IdMessage1->Content Type = "text/html"; //根据用户填写的信息创建邮件
// IdMessage1->Subject =Edit3->Text.Trim ();
// ADOTable1->First(); //循环读取邮件地址并发送实现群发
// Recnum= ADOTable1->Record Count;
// for (k=0;k<=recnum-1; k++)
// {
// Addr=Trim (ADOTable1->Field Byname ("Email")->AsString);
// IdMessage1->Recipients->Email Addresses =addr;
// if (!IdSMTP1->Connected())
// {
// try
// {
// IdSMTP1->Connect ();
// }
// }
// catch (Exception %26amp;e)
// {
// Application->Message Box(e.Message, "连接SMTP服务器失败", MB_ICONWARNING);
// }
// if (IdSMTP1->Connected ())
// {
// try
// {
// IdSMTP1->Send (IdMessage1);
// }
// catch (Exception %26amp;e)
// {
// Application->Message Box(e.Message, "发送失败", MB_ICONWARNING); }
// }
// ADOTable1->Next ();}
// Application->Message Box ("发送完成!","邮件系统",MB_OK);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender)
{
//
}
//---------------------------------------------------------------------------
没有合适的资源?快使用搜索试试~ 我知道了~
C++Builder2010发邮件例子
共9个文件
~1~:2个
cpp:2个
res:1个
5星 · 超过95%的资源 需积分: 10 8 下载量 86 浏览量
2013-06-23
21:44:45
上传
评论
收藏 10KB RAR 举报
温馨提示
C++Builder2010发邮件例子,用了TIdMessage和TIdSMTP控件,源码测试通过!
资源推荐
资源详情
资源评论
收起资源包目录
SendEmail.rar (9个子文件)
SendEmail
SendEmail.res 5KB
Mainfrm_Unit.h 2KB
Debug
__history
SendEmail.cpp.~1~ 873B
Mainfrm_Unit.dfm.~1~ 4KB
Mainfrm_Unit.cpp 6KB
SendEmail.cbproj.local 1KB
SendEmail.cbproj 9KB
Mainfrm_Unit.dfm 4KB
SendEmail.cpp 877B
共 9 条
- 1
资源评论
- 上帝之剑2015-06-20好,正是我所需要的,美得很
ahaozi
- 粉丝: 4
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功