2012-08-03 3 views
0

IIS7과 함께 asp.net에서 C#을 통해 전자 메일을 보내고 있습니다. 하지만 오류를 해결할 수 없습니다.로컬 SMTP 서버를 통해 전자 메일을 보낼 수 없습니다.

난이 경로에

C를 메시지를 보낼 수 없습니다 : \을 Inetpub \ 메일 루트 \ 큐

이 내가

MailMessage m = new MailMessage(); 
    m.From = TextBox1.Text; 
    m.To = TextBox2.Text; 
    m.Subject = TextBox3.Text; 
    m.Body = TextBox4.Text; 
    SmtpMail.SmtpServer = "localhost"; //your real server goes here 
    SmtpMail.Send(m); 

메모를 사용한 간단한 코드입니다 : 내가 수동으로 만든 이 길은 틀리지 않은가? 또는 자동으로 만들어야합니까?

Please HELP!

+1

로컬 호스트에 smtp 서버가 있습니까 –

+1

표시 할 코드에 경로가 전혀 사용되지 않습니다. SMTP는 네트워크 프로토콜입니다. 코드가'localhost'의 TCP 포트 25에 연결하려고 시도하고 있습니다. (기본적으로, @ COLD TOLD가 말한 것.) – tripleee

답변

0

수동으로 경로를 만든 경우 SMTP 서비스가 컴퓨터에 설치되어 있지 않습니다 (타사 SMTP 서버가 아닌 사용하려는 경우).

서비스 목록을 보면이 사실을 확인할 수 있습니다 (단순 메일 전송으로 시작한다고 생각합니다).

+0

그럼 어떻게해야합니까? Windows 기능에서 SMTP 가상 서버를 사용할 수 없습니다. 제 3 자 SMTP를 다운로드했습니다. http://www.softstack.com/freesmtp.html 다음 단계는 무엇입니까 ?? –

+0

"localhost"를 ISP의 메일 서버로 변경하십시오. 이를 작동시킬 수 있다면 자신의 SMTP 서버를 로컬로 실제로 실행해야하는지 또는 원하는지를 생각할 수 있습니다. (나는 당신이하지 않을 것을 당부합니다.) – tripleee

0

아마도 SmtpCredentials가 누락 되었습니까? 그리고 이전의 speekers가 smtpServer가 정말로 localhost라고 말하면서, 당신은 당신의 컴퓨터에 smtpserver가 있다는 것을 의미합니까?

나는 작동하고있는 나의 프로그램에서 som 전자 우편을 보내기 위하여 SMTP 우편물을 만들었다, 아마 당신은 이것에서 당신을 도울 수있는 무언가를 찾아 낼 수 있는가?

이렇게 보입니다.

public class Email 
{ 
    public Email(string recieverAdress) 
    { 
     mail = new MailMessage(senderAdress, recieverAdress); 
    } 

    private readonly MailMessage mail; 
    private readonly SmtpClient smtpClient = new SmtpClient("smtp.domain.com", port); 
    private readonly NetworkCredential credential = new NetworkCredential("username", "password"); 

    public void SendMail(string subject, string textInBody) 
    { 
     mail.Subject = DateTime.Now + " " + subject; 
     mail.Body = textInBody; 
     smtpClient.Credentials = credential; 
     smtpClient.Send(mail); 
    } 
} 
관련 문제