使用CDO来发送邮件可参见http://expert.csdn.net/Expert/topic/1524/1524195.xml?temp=.9986688中我的发言,测试环境与你的环境相同。

解决方案 »

  1.   

    conf.Fields[CdoConfiguration.cdoSendUserName].Value="hydnoahark";  
           conf.Fields[CdoConfiguration.cdoSendPassword].Value="xxx";  
    这个一定要吗?
      

  2.   

    这是当你需要认证时必须的,为你的邮箱用户名和密码,现在大多数的邮箱都要求认证
    注:163.com邮箱有一定的问题(它在网页上要求认证,但用程序发送时证实不需认证),其它的邮箱发送都很正常。
      

  3.   

    而且引用不了CDO
    using CDO???
      

  4.   

    SmtpMail.SmtpServer="10.172.100.100";
    这里的地址是SMTP邮件服务器的地址
    如果你可以使用OUTLOOK发信
    你可以在邮件帐户->属性->服务器->发送邮件中找到可用的SMTP服务器地址.
    如果你已经钩选"我的服务器要求验证"选项
    你需要给出username和password.
      

  5.   

    我不能直接用outlook发信,要用outlook,就要先
    把账号的服务器改为127。0。0。1及对应的端口比如251
    ,然后在httpport里面用一个251端口映射10.172.100,100这类的外面服务器。

    CDO引用出来了,还是
    System.Runtime.InteropServices.COMException (0x80040213): 与服务器的传输连接失败。
      

  6.   

    请问 sumanden(心头慌,打中张)在局域网内你怎么上网的?这个
    email默认和IE浏览器设置相同吗?
    真的搞不惦
      

  7.   

    你用的是SOCK代理吧,,,你代码里的SMTP地址设成127.0.0.1试试
      

  8.   

    我用httpport映射smtp.163.net:25到我的127.0.0.1:2525
    然后把代码里的smtp地址改成127.0.0.1:2525还是不行
      

  9.   

    conf.Fields[CdoConfiguration.cdoSMTPServer].Value="127.0.0.1";  
    conf.Fields[CdoConfiguration.cdoSMTPServerPort].Value=2525;
    这样就可以了,可是改成
    conf.Fields[CdoConfiguration.cdoSMTPServer].Value="smtp.163.net";  
    conf.Fields[CdoConfiguration.cdoSMTPServerPort].Value=25;又不行。明知道应该可以阿。