高手快来看,我用indy控件的smtp写的程序发信,对方收不到信(不是服务器需认证的问题) (100分)

N

netwan

Unregistered / Unconfirmed
GUEST, unregistred user!
我用delphi6带的demo->mailclient发邮件,对方收不到信,收信人为X@163.com
delphi6,没打补丁,win2000k adv
 
地址写错了吧,怎么会收不到.
 
不是的,地址绝对没有错,用outlook发,马上就收到了,我还试了别用的“特快专递”式的代码
,也不行。。。不知道是啥原因。
 
我给你作了个例子,你看看
http://www.tommstudio.com/testmail.rar
 
Thank www,测试未通过。
======================================
from cnprint@21cn.com smtphost smtp.21cn.com
to netwan@163.com port 25
subject 主题:测试 username cnprint
cc password y******
bc
priority Highest
receiptrecipient checked
这是一个测试程序.不是垃圾邮件.
======================================================================
完了按 发送 提示 “OK”,但就是没有收到邮件
怀疑,自己编的软件发送邮件,被服务器认为是垃圾邮件。
是否,smtp server对发邮件的软件也要认证。
是否有一个列表
foxmail
outlook
...
如果发邮件软件不在此列表即被认为是垃圾邮件?
 
我明天回家研究一下,等我呀。

我记得以前有人问过相关的问题,好像是21CN服务器的问题。
 
等得脚都抽筋了,还是没有人帮我解决这个问题,谁能提供一个indy写的发邮件的例子,如果
能够用我上面的设置发得通的话,我决定加200分给他!
 
给几点建议:
1、发件人不要用xx@21cn.com之类的格式, 用xx@hotmail.com之类的,或自己想一个域名,有可能163不收21cn的信
2、SMTPClient的AuthenticationType设置为aNone, 即不需要认证, Username和password不需要
3、Indy会在邮件中加一个头:
X-Library: Indy 9.0.11
有些邮件系统会认为这是垃圾邮件,因为有太多人用Indy做垃圾邮件发送器,将这个头删除
 
IdMsgSend.From.Text:=发件人地址;
IdMsgSend.ReplyTo.EMailAddresses:=发件人地址;

否则,会被当作垃圾邮件抛掉
 
接受答案了.
 
顶部