社区
网络及通讯开发
帖子详情
请问如何用IdSMTP 发送附件
zjlxl
2004-03-30 07:33:21
我要用IdSMTP的验证功能,但是它如何发送附件?
NMSMTP 可以发送附件,但不知道如何进行验证(大多数)
谢谢各位
...全文
229
4
打赏
收藏
请问如何用IdSMTP 发送附件
我要用IdSMTP的验证功能,但是它如何发送附件? NMSMTP 可以发送附件,但不知道如何进行验证(大多数) 谢谢各位
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
joinboy211
2004-06-09
打赏
举报
回复
关注
rzh
2004-05-14
打赏
举报
回复
int intIndex;
//IdMsgSend do
//{begin
IdMsgSend->Body->Assign(Memo1->Lines);
IdMsgSend->From->Text = Edit_EmailAddress->Text;
IdMsgSend->Recipients->EMailAddresses = edtTo->Text; //{ To: header }
IdMsgSend->Subject = edtSubject->Text; //{ Subject: header }
IdMsgSend->Priority = TIdMessagePriority(cboPriority->ItemIndex);// { Message Priority }
IdMsgSend->CCList->EMailAddresses = edtCC->Text;// {CC}
IdMsgSend->BccList->EMailAddresses = edtBCC->Text; //{BBC}
if (chkReturnReciept->Checked)
{//{We set the recipient to the From E-Mail address }
IdMsgSend->ReceiptRecipient->Text = IdMsgSend->From->Text;
}
else
{// {indicate that there is no receipt recipiant}
IdMsgSend->ReceiptRecipient->Text = "";
}
//end;}
int SmtpAuthType=cboAuthType->ItemIndex;
switch (SmtpAuthType)
{
// {authentication settings}
case 0:
SMTP->AuthenticationType = atNone;
break;
case 1:
SMTP->AuthenticationType = atLogin; //{Simple Login}
break;
};
SMTP->UserId = Edit_UserId->Text;
SMTP->Password = Edit_Password->Text;
// {General setup}
SMTP->Host = Edit_SMTPHost->Text;
SMTP->Port = StrToInt(Edit_SMTPPort->Text.Trim());
// {now we send the message}
SMTP->Connect();
try
{
SMTP->Send(IdMsgSend);
}
catch(...)
{
}
SMTP->Disconnect();
cuiyu616ok
2004-04-01
打赏
举报
回复
void __fastcall Tfrm_send::tbEditHeadClick(TObject *Sender)
{
if (Edit2->Text=="")
{
Application->MessageBox("请输入收件人地址!","提示",MB_OK+MB_ICONASTERISK);
return;
}
if (mail_address==""||mail_smtp==""||mail_accounts==""||mail_pass=="")
{
Application->MessageBox("请先进行邮箱帐号设置!","提示",MB_OK+MB_ICONASTERISK);
return;
}
try
{
IdMessage1->Body->Assign(Memo1->Lines); //内容
IdMessage1->Subject=Edit1->Text; //标题
// IdMessage1->From->Address="yu.hermit@sina.com"; //发件人地址
IdMessage1->From->Address=mail_address; //发件人地址
// IdMessage1->From->Name="yuyu6906"; //发件人
IdMessage1->From->Name=mail_user; //发件人
IdMessage1->Recipients->Clear();
IdMessage1->Recipients->Add();
IdMessage1->Recipients->Items[0]->Address=Edit2->Text;//收件人
IdMessage1->Recipients->Items[0]->Name="";
IdMessage1->CCList->EMailAddresses = Edit4->Text;// 抄送
// IdMessage1->BccList->EMailAddresses = cBcc; //暗抄
if (Edit3->Items->Count>0) //发送附件
{
for(int i=0;i<Edit3->Items->Count;i++)
{
IdMessage1->MessageParts->Add();
new TIdAttachment(IdMessage1->MessageParts,Edit3->Items->Strings[i]);
}
}
// IdSMTP1->Host="smtp.sina.com.cn";
IdSMTP1->Host=mail_smtp;
// IdSMTP1->Username="yu.hermit"; //邮箱帐号
IdSMTP1->Username=mail_accounts; //邮箱帐号
// IdSMTP1->Password="";
IdSMTP1->Password=mail_pass;
Animate1->Visible=true;
Animate1->Active=true;
IdSMTP1->Connect(0);
IdSMTP1->Send(IdMessage1);
IdSMTP1->Disconnect();
Application->MessageBox("发送成功!","提示",MB_OK+MB_ICONASTERISK);
Edit1->Text="";
Edit2->Text="";
Edit4->Text="";
Memo1->Lines->Clear();
Memo1->Lines->Add("您好:");
Memo1->Lines->Add("");
Memo1->Lines->Add("");
Memo1->Lines->Add("");
Memo1->Lines->Add(" 致");
Memo1->Lines->Add("礼!");
Memo1->Lines->Add(" "+Date());
Edit3->Items->Clear();
Edit2->SetFocus();
Animate1->Visible=false;
Animate1->Active=false;
}
catch(...)
{
IdSMTP1->Disconnect();
Application->MessageBox("发送失败!\n请确认您已经连接到互联网上!","提示",MB_OK+MB_ICONASTERISK);
// ShowMessage("发送失败!\n请确认您已经连接到互联网上");
Animate1->Visible=false;
Animate1->Active=false;
}
}
jevin8011
2004-03-31
打赏
举报
回复
关注
Delphi 邮件
发送
示例 含源码文件.rar
一个简单的Delphi7.0 邮件
发送
示例 含源码文件,将窗口中的邮件主题、收件人、邮件标题、邮件地址等信息填写完毕后,单击按钮即可
发送
邮件,基于
SMTP
发邮件的例子。部分代码段先睹为快: Clear; Subject := Edit2.Text;//邮件主题 From.Text := Edit4.Text;//发件人 Recipients.EMailAddresses := Edit3.Text;//收件人 Body.Assign(Memo1.Lines);//邮件内容 if Edit7.Text = '' then//添加
附件
T
Id
Attachment.Create(
Id
Message1.MessageParts,Edit7.Text);
Id
SMTP
1.AuthenticationType := atLogin;//进行身份检验
Id
SMTP
1.Username := Edit5.Text;//用户名
Id
SMTP
1.Password := Edit6.Text;//密码 try
Id
SMTP
1.Connect();//连接
Id
SMTP
1.Send(
Id
Message1);//
发送
Id
SMTP
1.Disconnect;//断开 Application.MessageBox('邮件
发送
成功!', '提示', MB_OK MB_ICONINFORMATION); except Application.MessageBox('邮件
发送
失败!', '提示', MB_OK MB_ICONINFORMATION); end;
indy10 ssl
发送
邮件 dll
用Indy10中的T
Id
SMTP
发送
邮件,按以下方法可以实现SSL安全连接: 1 把
附件
文件解压缩后的两个dll放到程序文件夹下 2 增加一个T
Id
SSLIOHandlerSocketOpenSSL控件 3 两个控件的关键属性设置如下: object
Id
SMTP
1: T
Id
SMTP
IOHandler =
Id
SSLIOHandlerSocketOpenSSL1 Host = '
smtp
.qq.com' Port = 465 UseTLS = utUseImplicitTLS end object
Id
SSLIOHandlerSocketOpenSSL1: T
Id
SSLIOHandlerSocketOpenSSL Destination = '
smtp
.qq.com:465' Host = '
smtp
.qq.com' Port = 465 end 以上方法,用Delphi6+Indy10.5.5测试通过。同样用此方法,可以用T
Id
POP3实现接收邮件。 注意,网上查到的相关说明大都是针对Indy9的,不适用于Indy10。
[Delphi]用
ID
SMTP
發送郵件(正文和
附件
)
最近公司的一个系统,需要通过邮件
发送
excel,原本用的控件是TNM
SMTP
,结果发现邮件的
附件
大小有限制,超过一定的大小到收件人那就变成乱码,于是用
ID
SMTP
替代,发现可以解决这个问题。 1.添加两个控件 T
Id
SMTP
和T
Id
Message 2.代码 Type
SMTP
: T
Id
SMTP
; MSG: T
Id
Message; procedure S
Delphi7中使用Indy9的
Id
Smtp
发送
email时subject过长会出现乱码的解决办法
procedure T
Id
MessageClient.SendHeader(AMsg: T
Id
Message); var LHeaders: T
Id
HeaderList; begin LHeaders := AMsg.GenerateHeader; //// -- 这里是一处bug,将导致含有中文字的header长度超过45即被截断,且影响正文中
附件
的解读 ////...
在做mes系统时,利用D7
Id
Message&
Id
SMTP
发送
邮件,从盒子上学习了不少的东西,自己整理了一下,想share给新手,学习参考!
在做mes系统时,利用D7
Id
Message&
Id
SMTP
发送
邮件,由于电脑中病毒,程序出异常,后调试ok,实现效果,初次接触D7时,从盒子上学习了不少的东西,自己整理了一下,想share给新手,学习参考 !unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Contr
网络及通讯开发
1,317
社区成员
8,874
社区内容
发帖
与我相关
我的任务
网络及通讯开发
C++ Builder 网络及通讯开发
复制链接
扫一扫
分享
社区描述
C++ Builder 网络及通讯开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章