主题:接上贴
//---------------------------------------------------------------------------
void __fastcall TSendForm::mnuSettingClick(TObject *Sender)
{
SettingForm->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TSendForm::mnuExitClick(TObject *Sender)
{
NMSMTP1->Abort();
Close();
}
//---------------------------------------------------------------------------
void __fastcall TSendForm::SBtnSendClick(TObject *Sender)
{
/*if (NMSMTP1->Connected)
Memo5->Lines->Add("已经连接至:"+IntToStr(zflag3)+"*"+IntToStr(zflag2));
else
{
NMSMTP1->Host = Edit3->Text;
NMSMTP1->UserID = Edit4->Text;
NMSMTP1->Connect();
Memo5->Lines->Add("send:"+IntToStr(zflag_limit)+"*"+IntToStr(zflag3)+"*"+IntToStr(zflag2));
}
if (NMSMTP1->Connected)
{
NMSMTP1->PostMessage->FromAddress = Edit2->Text;
NMSMTP1->PostMessage->FromName = Edit1->Text;
//if语句处理邮件地址列表第一行作为本次发送邮件的接收人
if(Memo2->Lines->Strings[0]!="") {
Edit6->Text=Memo2->Lines->Strings[0];
Memo2->Lines->Delete(0);
//又一个IF语句处理检测EMAIL
if(Edit8->Text!="") Memo2->Lines->Add(Edit8->Text);
}
NMSMTP1->PostMessage->ToAddress->Text =Edit6->Text;
NMSMTP1->PostMessage->ToBlindCarbonCopy->Text = Memo2->Text;
NMSMTP1->PostMessage->Body->Text = Memo1->Text;
*/
try
{
// 设置POP3邮件服务器
NMSMTP1->Host = SettingForm->txtSMTPHost->Text ;
// 设置 SMTP Port 25
NMSMTP1->Port = StrToInt(SettingForm->txtSMTPPort->Text);
// 设置邮件服务器 Login
NMSMTP1->UserID = SettingForm->txtSMTPUserID->Text ;
// 尝试连接邮件服务器
NMSMTP1->Connect() ;
// E-Mail From Address
NMSMTP1->PostMessage->FromAddress = SettingForm->txtFromAddress->Text ;
// E-Mail From Name
NMSMTP1->PostMessage->FromName =SettingForm->txtFromName->Text;
// E-Mail To Address
NMSMTP1->PostMessage->ToAddress->Add(txtTo->Text) ;
// E-Mail CC Address
NMSMTP1->PostMessage->ToCarbonCopy->Add(txtCC->Text) ;
// E-Mail BCC Address
NMSMTP1->PostMessage->ToBlindCarbonCopy->Add(txtBCC->Text) ;
// E-Mail Subject
NMSMTP1->PostMessage->Subject = txtSubject->Text ;
// E-Mail Body (邮件正文)
NMSMTP1->PostMessage->Body->Assign(txtBody->Lines) ;
// E-Mail Attachment (附件)
NMSMTP1->PostMessage->Attachments->AddStrings(lstAttach->Items);
// E-Mail To Address
if (RadioButton1->Checked==true)
{
NMSMTP1->PostMessage->ToAddress->Add(txtTo->Text);
NMSMTP1->SendMail();
}
if (RadioButton2->Checked==true)
{
if (!ADODataSet1->Active)
ADODataSet1->Open();
ADODataSet1->First(); //循环读取邮件地址并发送实现群发
while(!ADODataSet1->Eof)
{
NMSMTP1->PostMessage->ToAddress->Add(ADODataSet1->FieldByName("DX邮件地址")->AsString);
ADODataSet1->Next();
}
ShowMessage("发送完成!");
}
// 发送 E-Mail Header 和 Body 部分
NMSMTP1->SendMail();
}
__finally
{
//关闭邮件服务器连接
NMSMTP1->Disconnect() ;
}
}
void __fastcall TSendForm::mnuSettingClick(TObject *Sender)
{
SettingForm->ShowModal();
}
//---------------------------------------------------------------------------
void __fastcall TSendForm::mnuExitClick(TObject *Sender)
{
NMSMTP1->Abort();
Close();
}
//---------------------------------------------------------------------------
void __fastcall TSendForm::SBtnSendClick(TObject *Sender)
{
/*if (NMSMTP1->Connected)
Memo5->Lines->Add("已经连接至:"+IntToStr(zflag3)+"*"+IntToStr(zflag2));
else
{
NMSMTP1->Host = Edit3->Text;
NMSMTP1->UserID = Edit4->Text;
NMSMTP1->Connect();
Memo5->Lines->Add("send:"+IntToStr(zflag_limit)+"*"+IntToStr(zflag3)+"*"+IntToStr(zflag2));
}
if (NMSMTP1->Connected)
{
NMSMTP1->PostMessage->FromAddress = Edit2->Text;
NMSMTP1->PostMessage->FromName = Edit1->Text;
//if语句处理邮件地址列表第一行作为本次发送邮件的接收人
if(Memo2->Lines->Strings[0]!="") {
Edit6->Text=Memo2->Lines->Strings[0];
Memo2->Lines->Delete(0);
//又一个IF语句处理检测EMAIL
if(Edit8->Text!="") Memo2->Lines->Add(Edit8->Text);
}
NMSMTP1->PostMessage->ToAddress->Text =Edit6->Text;
NMSMTP1->PostMessage->ToBlindCarbonCopy->Text = Memo2->Text;
NMSMTP1->PostMessage->Body->Text = Memo1->Text;
*/
try
{
// 设置POP3邮件服务器
NMSMTP1->Host = SettingForm->txtSMTPHost->Text ;
// 设置 SMTP Port 25
NMSMTP1->Port = StrToInt(SettingForm->txtSMTPPort->Text);
// 设置邮件服务器 Login
NMSMTP1->UserID = SettingForm->txtSMTPUserID->Text ;
// 尝试连接邮件服务器
NMSMTP1->Connect() ;
// E-Mail From Address
NMSMTP1->PostMessage->FromAddress = SettingForm->txtFromAddress->Text ;
// E-Mail From Name
NMSMTP1->PostMessage->FromName =SettingForm->txtFromName->Text;
// E-Mail To Address
NMSMTP1->PostMessage->ToAddress->Add(txtTo->Text) ;
// E-Mail CC Address
NMSMTP1->PostMessage->ToCarbonCopy->Add(txtCC->Text) ;
// E-Mail BCC Address
NMSMTP1->PostMessage->ToBlindCarbonCopy->Add(txtBCC->Text) ;
// E-Mail Subject
NMSMTP1->PostMessage->Subject = txtSubject->Text ;
// E-Mail Body (邮件正文)
NMSMTP1->PostMessage->Body->Assign(txtBody->Lines) ;
// E-Mail Attachment (附件)
NMSMTP1->PostMessage->Attachments->AddStrings(lstAttach->Items);
// E-Mail To Address
if (RadioButton1->Checked==true)
{
NMSMTP1->PostMessage->ToAddress->Add(txtTo->Text);
NMSMTP1->SendMail();
}
if (RadioButton2->Checked==true)
{
if (!ADODataSet1->Active)
ADODataSet1->Open();
ADODataSet1->First(); //循环读取邮件地址并发送实现群发
while(!ADODataSet1->Eof)
{
NMSMTP1->PostMessage->ToAddress->Add(ADODataSet1->FieldByName("DX邮件地址")->AsString);
ADODataSet1->Next();
}
ShowMessage("发送完成!");
}
// 发送 E-Mail Header 和 Body 部分
NMSMTP1->SendMail();
}
__finally
{
//关闭邮件服务器连接
NMSMTP1->Disconnect() ;
}
}