2015-07-09 9 views
0

В настоящее время у меня есть почтовая система с использованием сервера обмена Microsoft (OWA). Я пытаюсь аутентифицировать пользователя и отправлять электронное письмо с использованием чистого кода Visual Basic.VB Аутентификация пользователя в Outlook Web App

Однако я пытался использовать библиотеку под названием Aspose; Я понятия не имею, нахожусь ли я на правильном пути. Я не могу заставить его работать, и я не уверен (поскольку это почтовый сервер компании), будь то сервер или его код.

В настоящее время у меня есть,

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
     ' Create instance of ExchangeClient class by giving credentials 
     Dim client As Aspose.Email.Exchange.ExchangeClient = New Aspose.Email.Exchange.ExchangeClient("https://MAILSERVER.com/username/", "username", "password", "https://MAILSERVER.com/") 

     ' Create instance of type MailMessage 
     Dim msg As Aspose.Email.Mail.MailMessage = New Aspose.Email.Mail.MailMessage() 
     msg.From = "[email protected]" 
     msg.To = "[email protected]" 
     msg.Subject = "test" 
     msg.HtmlBody = "test" 

     ' Send the message 
     Try 
      client.Send(msg) 
      Console.WriteLine("made it") 
     Catch ex As Exception 
      Console.WriteLine("failed") 
     End Try 
    End Sub 

я явно изменил имя пользователя, пароль и поля имя сервера общего характера, но с (то, что я думаю, что это правильные учетные данные) выход всегда failed.

Может ли кто-нибудь помочь мне, пожалуйста?

ответ

0

Вот что я использую:

Public Shared Function SendEMail(MailMessage As System.Net.Mail.MailMessage) As String 
 
\t ErrorMess = "" 
 
\t ' Default the from address, just in case is was left out. 
 
\t If MailMessage.From.Address = "" Then 
 
\t  MailMessage.From = New Net.Mail.MailAddress("[email protected]") 
 
\t End If 
 
\t ' Check for at least one address 
 
\t If MailMessage.To.Count = 0 AndAlso MailMessage.CC.Count = 0 AndAlso MailMessage.Bcc.Count = 0 Then 
 
\t  ErrorMess = "No Addresses Specified" 
 
\t  Return ErrorMess 
 
\t End If 
 
\t ' Create a SMTP connedction to the exchange 2010 load balancer. 
 
     Dim SMTPClient As New System.Net.Mail.SmtpClient("MAILSERVER.com") 
 
\t Try 
 
\t  Dim ValidUserCredential As New System.Net.NetworkCredential 
 
\t  ValidUserCredential.Domain = "MAILSERVER.com" 
 
\t  ValidUserCredential.UserName = My.Resources.EmailUserName 
 
\t  ValidUserCredential.Password = My.Resources.EmailPassword 
 

 
\t  SMTPClient.UseDefaultCredentials = False 
 
\t  SMTPClient.Credentials = ValidUserCredential 
 
\t  SMTPClient.Send(MailMessage) 
 
\t  Return "Mail Sent" 
 
\t Catch ex As Exception 
 
      ErrorMess = ex.Message & " " & ex.InnerException.ToString 
 
\t  Return ErrorMess 
 
\t End Try 
 
    End Function

0

Класс ExchangeClient используется для подключения к серверу Exchange, используя протокол WebDav и используется с Exchange Server 2003 и 2007. Для OWA, вам необходимо использовать интерфейс IEWSClient, как показано в следующем примере кода. У него есть тестовая учетная запись Office365, которую вы можете использовать для отправки тестового письма (тестовая учетная запись предназначена исключительно для целей тестирования и не является собственностью Aspose. Я просто создал ее для оказания вам помощи в тестировании функциональности). Пожалуйста, попробуйте, и если у вас возникнут какие-либо проблемы, вы можете поделиться им на Aspose.Email forum для дальнейшей помощи.

' Create instance of IEWSClient class by giving credentials 
Dim client As IEWSClient = EWSClient.GetEWSClient("https://outlook.office365.com/ews/exchange.asmx", "[email protected]", "Aspose1234", "") 
' Create instance of type MailMessage 
Dim msg As New MailMessage() 
msg.From = "[email protected]" 
msg.[To] = "[email protected]" 
msg.Subject = "Sending message from exchange server" 
msg.IsBodyHtml = True 
msg.HtmlBody = "<h3>sending message from exchange server</h3>" 

' Send the message 
client.Send(msg) 

Я работаю с Aspose в качестве разработчика-евангелиста.

Смежные вопросы