2014-09-01 2 views
0

안녕 나는 Rebex의 SMTP SendDirect를 사용하여 이메일을 보내려고 그리고 난이 오류 :Rebex.Net.Smtp.SendDirect 530 오류

SendEmail: Rebex.Net.SmtpException: Client was not authenticated (530). 
at Rebex.Net.Smtp.WCB(String A, String B) 
at Rebex.Net.Smtp.ADB(String A, String[] B, String C, Stream D, TransferEncoding E) 
at Rebex.Net.Smtp.GDB(MimeMessage A, Stream B, MailAddress C, MailAddressCollection D) 
at Rebex.Net.Smtp.SendDirect(MimeMessage message) 
at Rebex.Net.Smtp.SendDirect(MailMessage message) 

내 코드 : 보낸 사람의 그

Dim myMail As New Rebex.Mail.MailMessage 

Try 
    myMail.From = "[email protected]" 
    myMail.Subject = "Test" 
    myMail.BodyText = "Blah blah" 
    myMail.To = "[email protected]" 
    myMail.Attachments.Add(New Rebex.Mail.Attachment(filePath)) 
    myMail.Priority = Rebex.Mail.MailPriority.Normal 

    Smtp.SendDirect(myMail) 


    Catch ex As Rebex.Mail.MailException 

    Catch ex As System.Exception 

    Finally 

    End Try 

공지 사항 수신자가 동일한 전자 메일 주소입니다. 회사는 Exchange 서버를 사용합니다.
수신자의 전자 메일 주소로 gmail 주소를 입력하면 코드가 올바르게 작동합니다.
내가 뭘 잘못하고있는거야?

답변

1

Smtp.SendDirect 메서드는받는 사람의 실제 SMTP 서버에 전자 메일을 배달하는 데 사용됩니다. 받는 사람의 SMTP 서버에 직접 전자 메일을 보내려고 할 때 "클라이언트가 인증되지 않았습니다."라는 오류 메시지가 나타나면 회사의 Exchange 서버가 Exchange 서버에 대한 인증없이 사용자의 전자 메일을받지 못하도록 구성되었음을 알 수 있습니다. SMTP 서버에 직접 연결되는 "[email protected]"으로 전자 메일을 보내려면 '이상한'사람을 효과적으로 허용하지 않기 때문에 이것은 SMTP 서버의 이상한 행동입니다. 따라서 문제는 아마도 Exchange 서버 구성에 있습니다.

수신자를 Gmail 주소로 변경하면 Rebex Secure Mail Smtp.SendDirect 메소드가 Gmail SMTP 서버에 직접 연결되어 동작이 실제로 다를 수 있습니다.

동일한 주소 ("[email protected]")에서 이메일을 보내려는 경우 (귀하의 경우) 서버 인증이 필요하면 Exchange 서버에서 작동하는 다음 코드를 시도하십시오. 사용자의 자격증 명이 있습니다.

Dim smtp As New Smtp() 
    smtp.Connect("myCompany.com") 
    smtp.Login("myname", "password") 

    Dim myMail As New Rebex.Mail.MailMessage 

    myMail.From = "[email protected]" 
    myMail.Subject = "Test" 
    myMail.BodyText = "Blah blah" 
    myMail.To = "[email protected]" 
    myMail.Attachments.Add(New Rebex.Mail.Attachment(filePath)) 
    myMail.Priority = Rebex.Mail.MailPriority.Normal 

    smtp.Send(myMail) 
    smtp.Disconnect() 
관련 문제