近来想写一个邮件收发的程序。从网上找了好几个源程序,编译后没一个能发送成功。
总是说与服务联接失败。
  所有的程序中在发邮件时都只要发件人信箱,不用发件人密码。
  那位好心人给我介绍一个能用的源代码啊。我自己研究一下。  谢谢大家。
    我的信箱[email protected]

解决方案 »

  1.   

    不过发出信件后还是收不到。
      邮件服务器:smtp.163.com
        应该没有填错吧
      163.com我也试过了。
      不知问题出在哪?
      你用过吗???
      

  2.   

    往这些需要认证的服务器发送匿名邮件需要通过内网转发功能。与服务器的对话也不是简单的SMTP协议。
      

  3.   

    [转]
    匿名邮件从何而来?   目前电子邮件的发送和接收是通过邮件服务器(mail sever)来进行的,大多数的邮件服务器在发送邮件时使用SMTP(Simple Mail Transfer Protocol)简单邮件传输协议来传送邮件,而在接收时则多是使用POP3(Post Office Protocol version 3)通讯协议来接收邮件的。虽然在使用电子邮件时有帐号和密码,其实在使用SMTP传输协议来发送邮件时,服务器是没有安全检查的,也就是发送邮件是不需要密码验证的,只有接收邮件时需要密码。对于这点如果你是使用Outlook Express收发邮件的话,你会深有体会。(不过现在已经有些ISP开始注意到这点了,发信也需要密码检测)正是利用电子邮件的这个特点,我们才可以利用一些工具(如Telnet)来发送匿名邮件。   另外也可以使用邮件转递系统来发送匿名电子邮件,这里就涉及到一个“拟真匿名”和真正的匿名邮件转递系统。“拟真匿名”邮件转递系统是利用一些免费的保密邮件转递系统提供的帐号来委托系统的管理员或者操作员来传送你想要发送的匿名邮件,在发送的时候管理员会自动隐藏发件人的信息,因此收件人无法知道邮件是何人发来的,但是邮件转递系统的管理员或是操作员是知道你的IP、Email地址等信息的,从这个角度来看,这种发送匿名邮件的方式并不是真真正正匿名的。真正的匿名邮件应该是除了发件人本身之外,无人知道发件人的信息,就连系统的管理员也不例外。   说了这么多,下面我们就介绍两种发匿名邮件的方法,一种是利用Telnet,另一种就是利用现有的邮件转递系统。  使用Telnet发匿名电子邮件   使用Telnet发送电子邮件有以下6个步骤:  1. 选择一个你想要发出这封邮件的邮件服务器(Mail Server),这个服务器要支持SMTP协议,可以选择如:SMTP.***.net等,另外以TCP 25端口登录服务器。   2. 使用SMTP通讯协议中的“HELO”指令,输入假的邮件服务器名称,用以捏造一个发件邮件主机。   3. 使用SMTP通讯协议中的“MAIL FROM”指令,输入匿名的电子邮件地址,捏造一个假的发件人电子邮箱地址。   4. 使用SMTP通讯协议中的“RCPT TO”指令,输入收件人的邮件地址,他(她)收到的就是你所发送的匿名电子邮件。   5. 使用SMTP通讯协议中的“DATA”指令,输入邮件的内容,利用Subject指令可以指定邮件的主题。   6. 发送完毕,以QUIT指令退出。当然要添加附件还需要做BASE64编码等等的.
      

  4.   

    可以通过NsLookup 查询DNS,找到相关的邮件服务器,不是一般的smtp.xxx.net什么的.
      

  5.   

    Top  
     
     回复人: jlum99(闲人) ( ) 信誉:102  2005-03-18 09:58:00  得分: 0  
     
     
       看看我在这个帖子里写的.应该有帮助
    http://community.csdn.net/Expert/topic/3844/3844551.xml?temp=.2866938基本原理就是使用邮件交换服务器的邮件转发功能.看了以后,用telnet都可以试试发匿名邮件.
      
     
    Top  
     
     回复人: jlum99(闲人) ( ) 信誉:102  2005-03-18 10:45:00  得分: 0  
     
     
       在你的IE浏览器地址栏里写telnet:mx.mail.163.com 回车
    下面就是用发送一次匿名邮件的记录.这些过程完全可以用程序实现.220 Coremail SMTP(Anti Spam) System (163com[20050206])
    HELO 163.com   //注意这里的域,一定要同你要发送的邮件地址的域一样
    250 mx12
    MAIL FROM:[email protected] //注意邮件地址不能同邮件服务器域一至,服务器要做邮件地址有效性检查.
    250 Ok
    RCPT TO:[email protected]  //这里的邮件地址也要有效!因为同样服务器要做检查.
    250 Ok
    DATA
    354 End data with <CR><LF>.<CR><LF>
    QUIT  
     
    Top  
     
    这是我在另一个帖子的回复,你照着做,一定能成的。注意我标注的注意事项
      

  6.   

    我在IE里面输入 telnet:mx.mail.163.com 后,出现登录窗体可是登录不上去啊!
    试了好几次都不行。
      

  7.   

    sorry .........telnet:mx.mail.163.com:25  后面的是端口号,不好意思......
      

  8.   

    还是不行啊。
    用tenlet方法可是可以。按着你说的步骤也都能成功。可最后还是收不到邮件。
    为什么啊。
    我就把收件箱改成我的了其他的都没变还是收不到。
      

  9.   

    ......那是我没讲清楚,<CR><LF>.<CR><LF> DATA数据结尾要使用这个符号,在telnet上无法输入的,在程序里可以.
      

  10.   

    收邮件的在网上搜POP3协议.按照协议做就可以了.中间过程无非是处理些等待啊,信号处理啊,错误处理.等等,原理大致相同.要做邮件收发,至少还要个BASE64编解码模块.上面我说的只是匿名邮件的发送.SMTP邮件发送还要看相关的SMTP握手,身份验证相关协议.
      

  11.   

    http://www.smartmaildemo.com看看我的吧,如果的确感兴趣,可以整理后,发给您