关于NMSMTP控件的疑问.(300分)

  • 主题发起人 主题发起人 cAkk
  • 开始时间 开始时间
C

cAkk

Unregistered / Unconfirmed
GUEST, unregistred user!
以大富翁为例,如果我注册的时候填写邮件地址为:
cakk@webstock.com.cn
应该就可以收到订阅的问题邮件,而不用指定我pop3服务器的host地址.

当我用NMSMTP实现时,我发现NMSMTP控件有几个属性需要赋值:
nmsmtp1.host
nmsmtp1.postmessage.toaddress
请问host该怎么填呢? 我想,别的类似的程序(比如大富翁),是直接把邮件地址
的右边部分webstock.com.cn作为我的pops服务器的host吧? 但是实际上我的
pop3的host应该是mail.webstock.com.cn,请问我改怎样填写host属性呢?
 
以cakk@webstock.com.cn为例子,
smtp服务器一般是:
webstock.com.cn
smtp.webstock.com.cn
freemail.webstock.com.cn
mail.webstock.com.cn

等这几种,如果一定要在程序中得到,可以先用socket按顺序来连接对应的25端口,
如果能够连接得通,发HELO给它,如果响应OK,一般就是可用的smtp端口了。

但是服务器在发送邮件时,寻找地址是用dns解析的方式,快多了。
 
host就是你的smtp服务器呀。
比如:用263的就是smtp.263.net

要注意的是有的smtp服务器只限于local user使用。
比如263,你必须是263的注册拥护.
smtp有一项userID属性
 
其实SMTP服务器也可以不使用你邮箱的SMTP服务器,

你可以尝试寻找较近的一个本地SMTP也可以的
 
你们没明白我的意思,我是要从
cakk@webstock.com.cn
这个地址得到cakk这个用户的pop3的服务器host,不是要smtp.

哦用NMSMTP控件当然是要知道对方pop3的服务器乐.
问题是我怎么知道应该是:
webstock.com.cn
mail.webstock.com.cn
pop3.webstock.com.cn
....
....
中的哪一个? 总不能一个一个瞎猜把?????
 
nmsmtp1.host
填的是你想使用的smpt服务器的地址,例如263.net,sina.com.cn
nmsmtp1.postmessage.toaddress
填的是你的邮件将发送到的地址,例如cakk@webstock.com.cn

 
最好的办法还是一个一个地轮流用socket:110来连接。连接得通,
用指定的用户名来登陆,然后从返回信息和刚才连接的信息足可以判断它是否提供pop3服务。
如果提供用户名可口令更好了,就可以用这个口令来登陆,如果通过验证,
那肯定正确了。
 
terry_lzs: 您怎么还没明白,我的问题是怎样从 cakk@webstock.com.cn
这个email地址得到mail.webstock.com.cn这个hostname???????

我不知道网上那些email通知是怎么做的? 难道都是从
mail......
pop.....
pop3.....
.....
一个一个猜出来的?????????????
 
哈哈,这个问题我也想知道的!
我替你解释一下:

怎样知道一个邮件服务器的HOST?
如:freemail.263.net的HOST是smtp.263.net
而freemail.sohu.com的HOST应该如何附值?
需要知道的是一个规律或有什么约定!
 
To cAkk:

其实真没明白的是您老,Internet的体系结构根本就是这样,
你只需要知道对方的E-mail地址,就可以把信发出去,
(也就是只需要把nmsmtp1.postmessage.toaddress写正确)
如何把信送到对方的主机上,是SMTP Server/POP Server及相应协议来完成的,
根本不是发信人需要关心的(你也管不了 :-))。

NMSMTP控件的Host就是你本地的SMTP Server,
比如你说的大富翁,如果使用NMSMTP发信的话,那么
host填的就是smtp.ecnu.edu.cn之类的地址,
绝不是根据你cAkk的地址去找出什么mail.webstock.com.cn填上。
 
温柔一刀:
厉害!一言中的

》NMSMTP控件的Host就是你本地的SMTP Server,
也可以是其他一些没有限制(163。net,263。net就是有限制的)
的速度较快的smtp


 
如果我用gcqmail@sohu.com的帐号发送一封邮件到gcqmail@sina.com可以用
smtp.263.net吗?好象不可以!那我又如何知道sohu.com的host?
 
cAkk,好久不见,可好?
我觉得,你的意思有点象那些特快专递软件了,根据别人的Email地址,
直接联接它的POP3服务器(一般也是SMTP服务器),把信塞进去,而不
是一般的SMTP发信服务了。
 
to gcq:

否,你所说的不行是因为263根据邮件发送者地址或者ip进行判断,
不符合条件者不予relay,因此通不过,只要你把邮件源地址改为
...@263.net,自然可以通过,此时同样用的是smtp.263.net,
且发送给了gcqmail@sina.com,整个过程与suho毫无关系,
并且也不需要知道sina.com的服务器。

你们对internet太没信心了吧:-),用了这么长时间e-mail,
还对人家有怀疑 :-)

to DreamTiger:

如果是你说的这样,当然可以理解了,但就象你说的,这也
不是一般的SMTP发信服务了,与NMSMTP风马牛啊!
实在想研究,去看SMTP/POP server的源代码就应该可以了。
 
To 温柔一刀:
就是我说的,跟NMSMTP也有关啊。那些特快专递程序,其实就是把SMTP服
务器(nmsmtp1.host)写成对方的EMail 服务器,这样,只要发送出去了,
对方也就收到了,省却了中途耽搁和丢失的可能。其实原理跟一般的SMTP
发信是一样的,只是处理方法不一样罢了。当然,也许是我前面表达的不
清楚,不应该用“把信塞进去”这个词,搞得象跟SMTP发信无关似的。
 
to DreamTiger:

你说的有一点道理,但实际上不是这么回事,我没注意过“特快专递程序”,
但即使有,也绝不是你说的“其实就是把SMTP服务器(nmsmtp1.host)写成对方的EMail 服务器”。
你可以试验一下,我的e-mail有一个是tender-edge@263.net,照你的说法,你通过
smtp.263.net给我发信就可以了,实现了“特快专递”。可是只要你的发信人地址
不是xxx@263.net,照样会relay denied,根本不管你发给谁。

换句话说,SMTP的Relay工作绝不等同于在SMTP客户端
“把SMTP服务器(nmsmtp1.host)写成对方的EMail”,
是有其他处理的。
 
温柔一刀:
你说的这个问题解决也很容易,把发信人写成tender-edge@263.net,
但回信地址写成我的,发信没问题了吧,呵呵。你也可以回信了。至于谁
给你的信,看了信总应该知道了吧。
 
to DreamTiger:

你说的越来越离谱了,这种解决问题的方法有什么用?
难道你说的“特快专递程序”就是这么解决问题的吗?
难道internet的网站给客户发送邮件的功能都是这么实现的吗?
你自己也不相信吧,至少根本没必要吧!

技术问题是技术问题,不要在非技术的细节问题上抬杠,
我倒是很想知道SMTP Server的 Relay功能如何实现,
以前一直想看看,就是没时间,以后有时间看了再说吧。
如果你早就知道或者什么时候研究明白了,在这里发布一下吧,
这样我们才能共同提高。

除此之外,拜托你不要纠缠了,看看cAkk的原题吧,他说
“我想,别的类似的程序(比如大富翁),是直接把邮件地址
的右边部分webstock.com.cn作为我的pops服务器的host吧? ”
显然是没理解SMTP的Relay功能,不是你说的那种意思。
 
to 温柔一刀
我可以把gcqmail@sohu.com改为gcqmail@263.net(假设gcqmail@263.net不存在!!)吗?
这样能发出邮件吗??????
愿听指教!!!!!千万别嫌烦啊!:)
 
后退
顶部