首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法通过SMTP从VB6程序发送邮件

无法通过SMTP从VB6程序发送邮件
EN

Stack Overflow用户
提问于 2015-04-24 09:34:35
回答 1查看 1.7K关注 0票数 0

我有一个遗留的VB6代码库,我想扩展它以包括对通过外部SMTP服务器(smtp.live.com)发送邮件的支持。

我用CDO发送邮件。我的机器运行Windows 7。不幸的是,在发送邮件时,我收到了一条“传输未能连接到服务器”的错误消息。下面是密码。

VB6

代码语言:javascript
运行
复制
Dim oNewMessage As CDO.Message
Dim iConf As New CDO.Configuration
Dim oFlds As ADODB.Fields
Dim strbody As String


On Error GoTo errSMPT
    iConf.Load cdoDefaults
    Set oFlds = iConf.Fields
    oFlds(cdoSendUsingMethod) = cdoSendUsingPort
    oFlds(cdoSMTPServer) = "smtp.live.com"
    oFlds(cdoSMTPServerPort) = 587
    oFlds(cdoSMTPConnectionTimeout) = 30
    oFlds(cdoSMTPUseSSL) = True
    oFlds(cdoSMTPAuthenticate) = cdoBasic
    oFlds(cdoSendUserName) = "xxxxxx@hotmail.com"
    oFlds(cdoSendPassword) = "mypassword"
    oFlds.Update

    strbody = "Sample message " & Time

    Set oNewMessage = New CDO.Message
    Set oNewMessage.Configuration = iConf

    With oNewMessage
        .To = txtTo.Text
        .From = txtFrom.Text
        .Subject = "subject"
        .TextBody = strbody
        .Send
    End With
    Exit Sub

errSMPT:
    MsgBox Err.Description

我不认为这个问题与防火墙或帐户安全问题有关,因为下面的C#代码没有任何问题。

C#

代码语言:javascript
运行
复制
using (MailMessage message = new MailMessage(txtFrom.Text, txtTo.Text, txtSubject.Text, txtText.Text))
                {
                    SmtpClient mailClient = new SmtpClient("smtp.live.com", 587);

                    mailClient.Credentials = new System.Net.NetworkCredential("xxxxxx@hotmail.com", "mypassword");
                    mailClient.EnableSsl = true;
                    mailClient.Send(message);
                    MessageBox.Show("Message successfully sent!!!");                    
                }

任何帮助都是非常感谢的!

谢谢

//Peter

EN

回答 1

Stack Overflow用户

发布于 2015-04-24 15:12:09

我想你的问题是:

代码语言:javascript
运行
复制
oFlds(cdoSMTPUseSSL) = True

这应该是一个整数,而不是布尔值。当VB6将true和int转换为-1时,值为-1。我建议你把这句话改为:

代码语言:javascript
运行
复制
oFlds(cdoSMTPUseSSL) = 1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29843877

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档