Tmail2000研究--Demo不能发送Email的Bug

今天研究了一下TMail2000,发现他的Demo发送Email根本就行了.

开始发现每次[Save fields to header]时老是在mToNames列表中多了一个空的Item,发送email返回的消息也是Bad address xxxx

后来跟踪发现

function TSMTP2000.SendMessageTo(const From, Dests: String): Boolean;

这个方法里,它不会理会Dests的Item是否为空

    for Loop := 0 to sDests.Count-1 do
    begin
      FSocketTalk.Talk('RCPT TO: <'+sDests[Loop]+'>'#13#10, #13#10, stRcpt);
      FSocketTalk.WaitServer;

 

后来我加了一句

    for Loop := 0 to sDests.Count-1 do
    begin
      if sDests[Loop]='' then Continue;  // add by mofen
     

      FSocketTalk.Talk('RCPT TO: <'+sDests[Loop]+'>'#13#10, #13#10, stRcpt);
      FSocketTalk.WaitServer;

      ......

一切正常.看来Tmail2000不是收费的还是做得不够细致.呵呵.

今天只研究了他的发送Email的功能,对于接收Email的功能还没有做研究.

上一篇:批量建立EXCHANGE邮件帐号建立三部曲


下一篇:tomcat6.0 /7.0安装版内存溢出设置