1

我已经完成了所有的答案......这是我的情况

  1. 我需要 C# 代码使用 ibm lotus 帐户发送电子邮件(有用户名和密码)
  2. 我们的应用程序发送电子邮件的服务器已获得授权
  3. 没有防火墙阻止
  4. 服务器上未安装 IBM Lotus 客户端。所以不能使用 interop.domino.dll
  5. 暴露了 SMTP 服务。我有 IP 地址和端口。无法远程登录并对其进行测试,因为服务器没有远程登录,并且他们不允许我们启用它

  6. 当我运行下面的代码时,我得到连接主动拒绝异常。

是否有任何工作代码示例.. 或者我在这里遗漏了什么.. 任何故障排除提示将不胜感激。

尝试 { MailMessage message = new MailMessage(); message.From = new MailAddress(from.Text);

            message.To.Add(new MailAddress(to.Text));
            //message.To.Add(new MailAddress("recipient2@foo.bar.com"));
            //message.To.Add(new MailAddress("recipient3@foo.bar.com"));

            //message.CC.Add(new MailAddress("carboncopy@foo.bar.com"));
            message.Subject = "Test email from cogniti";
            message.Body = "Test email from Cogniti";

            SmtpClient client = new SmtpClient();

            client.Port = Convert.ToInt32(port.Text);
            client.Host = smtp.Text;
            client.Credentials = new System.Net.NetworkCredential(username.Text, passwordBox1.Password);
            //client.UseDefaultCredentials = true;

            if (ssl.Text.Equals("1"))
                client.EnableSsl = true;
            else
                if (ssl.Text.Equals("2"))
                    client.EnableSsl = false;
                else
                    client.EnableSsl = false;


            client.UseDefaultCredentials = false;
            client.Send(message);

            MessageBox.Show("Message Sent to: " + to.Text);
        }
        catch (Exception e3)
        {
            MessageBox.Show(e3.Message);
            MessageBox.Show(e3.InnerException.ToString());
            MessageBox.Show(e3.Source);
            MessageBox.Show(e3.StackTrace);
        }
4

1 回答 1

0

你试过移动吗

client.UseDefaultCredentials = false;

client.Credentials = new System.Net.NetworkCredential(...

显然,如果在您实际设置客户端凭据之前未设置 UseDefaultCredentials 属性,则不会发送 AUTH 命令。

于 2011-02-27T17:53:43.060 回答