IdSMTP,I Kill you! (100分)

J

jingtao

Unregistered / Unconfirmed
GUEST, unregistred user!
D6
procedure TForm1.Button1Click(Sender: TObject);
begin
if IdSMTP1.Connected then IdSMTP1.Disconnect;
IdSMTP1.Host:='smtp.21cn.com';
IdSMTP1.UserId:='lovejingtao';
IdSMTP1.Password:='***********************';
IdSMTP1.AuthenticationType:=atLogin;
try
IdSMTP1.Connect;
except
Showmessage('Connect Error');
Exit;
end;

IdMessage1.Body.Clear;
IdMessage1.Body.Add('test');
IdMessage1.From.Text:='lovejingtao@21cn.com';
IdMessage1.Recipients.EMailAddresses:='lovejingtao@21cn.com';//收件人
IdMessage1.Subject:='主题';

try
IdSMTP1.Send(IdMessage1);
finally
IdSMTP1.Disconnect;
Showmessage('ok');
end;

下面方法已经试验过.
找到IDMessage.pas,再其中搜索Values['X-Library'] ,把它所在的行注释掉,就可以了
然后保存,重新编译控件包,或者重新安装控件,要么把这个单元加入工程也可以

没有任何邮件......
 
不明白你在说什么? 我一直用这个倥件,没有任何问题
 
就是说
我用上面的代码根本发不出任何信件啊
你试验过21CN的信箱吗?
 
过程如下
Resolving hostname smtp.21cn.com.
Connecting to 202.104.32.230.
Connected.
Encoding text
Disconnecting from 202.104.32.230.
Not connected.
 
idSmtp没有UserID属性,是UserName,不知道D6是否有
还有就是,看看DEMO,D7下是没问题的,21cn的我也试过。
 
D6下是UserID属性,没有UserName.
我试了一下D6的DEMO
可以发送.
代码也差不多
为什么我上面的不行呢?哪里写错了?
 
是连接失败还是发送失败?
注意idsmtp.Port是25
 
21cn的好象有问题
我用 outlook就不能通过验证身份
你用sohu的看看
 
21cn接收的时候连foxmail都不行,但是发送可以,我用D7的indy写的可以
 
原来楼主想自恭啊,呵呵,兄弟们谁有刀啊,借他一把...
 
问题解决了
呵呵
原来就是IdMessage1的BODY那里
散分~
 
[:D],水平高你可以修改indy啊,有源代码在那里哦,你还可以修改以后卖啊!
 
来自:pnljh, 时间:2003-3-11 15:24:00, ID:1672437
21cn接收的时候连foxmail都不行,但是发送可以,我用D7的indy写的可以

不是那个原因的,是因为后来申请的不支持POP3而已.


来自:爱元元的哥哥, 时间:2003-3-11 15:32:00, ID:1672470
[:D],水平高你可以修改indy啊,有源代码在那里哦,你还可以修改以后卖啊!

indy里面的确存在BUG. 除了之前那个BUG,现在这个也是BUG.
呵呵,我现在这个6万元的项目就是卖的啊.所以,也算是粘了Indy的光啦~


 
顶部