0

IIS7を使用して、asp.netのC#を介して電子メールを送信しています。しかし、私はエラーを修正できませんでした。

このパスにメッセージを送ることすらできません

C:\ inetpub \ mailroot \ Queue

これは私が使用した中で最も単純なコードです

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);

注:このパスを手動で作成したのは間違いではありませんか?または自動的に作成する必要がありますか?

助けてください!

4

2 に答える 2

0

おそらく、欠落しているのは SmtpCredentials でしょうか? 以前の講演者が言ったように、SmtpServer は実際には localhost であり、マシン上に smtpserver があることを意味しますか?

動作しているプログラムからいくつかの電子メールを送信するために 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);
    }
}
于 2012-08-03T12:18:11.317 に答える
0

パスを手動で作成した場合、SMTP サービスはマシンにインストールされません (サードパーティの SMTP サーバーではなく、これを使用することを前提としています)。

これは、サービスのリストを調べることで確認できます (Simple Mail Transport で始まると思います...)。

于 2012-08-03T03:21:47.430 に答える