使用indy9不能发送邮件的兄弟注意了,这里有解决方法!(10分)

  • 主题发起人 主题发起人 lzf1010
  • 开始时间 开始时间
我试试看吧~~
 
我自己先查查吧,因为我发现用foxmail发邮件也是同样的错误,可能是我的邮件服务器或我的设置有问题.
 
按我的方法修改后还是不行吗?你是用什么邮箱?
 
真的感谢lzf1010,为这件事我折腾了好几天了,也没弄好,上大富翁看看,果然有结果,哈哈!我用的是delphi6,他没有IdMessageCoderMIME.pas单元,怎么办呀?
 
lzf1010我收到的邮件内容有的是html格式,怎么办?你怎样收正文呀?
 
如果 charset=text/html
建议使用HTML Component进行解析,从http://www.pbear.com/下载
 
那个html转网页显示的控件有没有中文帮助阿?小弟不太会用:(
 
我用indy9发邮件怎么没有问题呢,你们说的是指哪几个门户网站的邮件服务器不行,我也想看看是不是我的也存在问题
 
lzf1010:
我已照你的方法修改了,163.com可以成功发往163.com,但不能发往其他邮箱,如21cn.com、sina.com等,出现‘requested action not taken:smtp13‘ 错误,如何解决?
 
非常感谢楼主提供宝贵信息。
 
xdel:
我测试了一下,好像没有出现你说的错误
 
lzf1010:
有时行,有时不行,不知何解?
 
不錯。。
 
鎴戞渶杩戠敤ipsmtp鍙戠粰鍥藉?瀹㈡埛鐨勯偖浠舵湁浜涗細鏈夌┖鐧?杩欐槸涓轰粈涔?
鍝?綅澶т緺鐭ラ亾,缁欎釜鎻愮ず,璋㈣阿
 
lzf1010:
用indy9 demo 自带的MailClient 发送邮件,在MailClient中接收,发现只能接收主题等,不能接收'Body',(带附件的除外),大家有无这种情况,如何解决?
 
不错不错 问题已经解决 十分感谢
 
发送也没问题了,但是出现了新的问题,就是不能重复发送,也就是当发送一次后,修改一下内容(比如主题、信件内容、或者收件人之类的)之后再点击发送按钮,就出错了
出错信息是:
Access violation at address 0046BC81 in module
程序主体如下:
IdMessage1.Clear;
IdMessage1.Body.Assign(Contents.Lines); //Text
IdMessage1.From.Text := SenderAddress.Text; //Address
IdMessage1.Recipients.EMailAddresses := ReceiverAddress.Text;
IdMessage1.Subject := Title.Text;
//IdMessage1.ContentType := 'Text';

IdSMTP1.AuthenticationType := atLogin;
IdSMTP1.Username := SenderName.Text;
IdSMTP1.Password := Password.Text;
IdSMTP1.Host := HostName.Text;
IdSMTP1.Port := 25;

try
try
StatusBar1.SimpleText := 'Connecting...';
StatusBar1.Update;
IdSMTP1.Connect;
except
MessageBox(0, '连接服务器失败', nil, MB_OK or MB_ICONERROR);
StatusBar1.SimpleText := 'Connect Failed';
StatusBar1.Update;
Exit;
end;
StatusBar1.SimpleText := 'Connected';
StatusBar1.Update;
try
StatusBar1.SimpleText := 'Sending...';
StatusBar1.Update;
IdSMTP1.Send(IdMessage1);
StatusBar1.SimpleText := 'Send Successed';
StatusBar1.Update;
MessageBox(0, '邮件已经发送成功', nil, MB_OK or MB_ICONINFORMATION);
except
StatusBar1.SimpleText := 'Send Failed';
StatusBar1.Update;
MessageBox(0, '邮件发送失败', nil, MB_OK or MB_ICONERROR);
end;
finally
IdMessage1.Free;
IdSmtp1.Free;
end;
请高手赐教啊
 
我用的是delphi6,他没有IdMessageCoderMIME.pas单元,怎么办呀?
我改了IdMessageClient.pas单元的MultiPartBoundary, MultiPartAlternativeBoundary,MultiPartRelatedBoundary三个常量结果不可以,但是按楼主说的改Delphi7的就可以了,请问delphi6的怎么办,可不可以卸载delphi 6的indy装上delphi 7的indy????,那又如何卸载delphi 6的indy???
 
indy9不是有for D6的吗?安装包里有说明如何删除旧版INDY的方法,你按照上面说的就可以了
 
To:lzf1010,你好,我找不indy9的组件,你能否传一份给我,对了,我不会删除旧版indy,你能否告之,谢谢了,你可以去http://www.delphibbs.com/delphibbs/dispq.asp?lid=3448531拿份
 
后退
顶部