System.net.networkcredential错误的重载签名

时间:2014-08-01 08:37:53

标签: .net vb.net email smtp networkcredentials

我正在遇到一个关闭的问题,我不知道它的设置是否正确,或者新NetworkCredential的签名是否存在重大问题。

首先,我有一个应用程序,我在.NET框架2中编写,通过smtp发送电子邮件。发送它使用活动目录凭据的电子邮件以通过服务器进行身份验证。我只是设置如下:

smtp.Credentials = New Net.NetworkCredential(domain & "\" & username, password)

这个工作正常,直到我更新了应用程序以在.NET框架4中运行,我遇到了错误:"邮箱不可用,服务器响应是5.7.1,客户端没有权限发送,因为这。发件人"

我环顾四周,发现由于某些原因,这在.NET framework 4中无法正常工作,并使用指定域的重载。

我第一次尝试:

smtp.Credentials = New Net.NetworkCredential(username, password, domain)
即使所有信息都正确,

也会出现同样的错误。我的同事在使用不同的应用程序时遇到了同样的问题,并且运气或错误发现:

smtp.Credentials = New Net.NetworkCredential(username, domain, password)

正常工作,将验证并发送电子邮件。现在上面的签名违反了所有文档,因此我决定调查并发现以下内容:

Dim NetCred As NetworkCredential = New NetworkCredential()
With NetCred
    .Username = username
    .Domain = domain
    .Password = password
End With

以上失败的错误信息与之前相同(5.7.1)

Dim NetCred As NetworkCredential = New NetworkCredential()
With NetCred
    .Username = username
    .Domain = password
    .Password = domain
End With

以上成功发送电子邮件并正确验证。

任何人都可以想到这可能发生的任何原因吗?我正在运行一个最新版本的visual studio 2010,其中安装了所有.net框架版本并且是最新的。

感谢您的帮助。

0 个答案:

没有答案