2009-04-14 3 views
1

私がメールを送信するには、このコードを持っている:WinXPでIIS 5.1を使用してメールを送信するには?

public bool SendMail(MailMessage message) 
{ 
    message.From = new MailAddress(AppProperties.FromMailAddress, AppProperties.FromDisplayName); 
    SmtpClient smtp = new SmtpClient { EnableSsl = AppProperties.EnableSsl }; 
    try 
    { 
     smtp.Send(message); 
     return true; 
    } 
    catch (Exception) 
    { 
     return false; 
    } 
} 

これではlocalhostでIIS 5.1を使用してメールを送信するためにweb.configファイル(の回答により示唆されるように)設定されている:何

<system.net> 
    <mailSettings> 
     <smtp deliveryMethod="Network"> 
     <network host="localhost" 
       userName="" 
       password="" 
       defaultCredentials="false" 
       port="25" /> 
     </smtp> 
    </mailSettings> 
    </system.net> 

をWindows XPでIIS 5.1でメールを送信する必要がありますか?それをすることは可能ですか?あなたが言うように、私は例外なく、私は目的地でそれを受け取っていないので、私ははいと思います。ユーザーとパスワードを入力する必要がありますか?

+0

このコードを実行するとどうなりますか? – JoshJordan

+0

は何も送信しません。 IISでアカウントなどを作成する必要がありますか? – eKek0

+0

それは何もしないという意味ですか?それが偽を返すことを意味しますか?その場合は、例外の詳細をお知らせください。 – JoshJordan

答えて

3

の一部であり、あなたは最初のSMTPサーバ(Windowsコンポーネント> IIS> SMTP Service)をインストールする必要がありますリレーを有効にするように構成します。

IIS>デフォルトのSMTPサーバー>のプロパティ アクセス>認証

アクセスコントロール>匿名アクセス -

中継の制限>リレーをチェック>を選択 - 以下のリストに含まれるコンピュータのみを>> 127.0.0.1

を追加します。
1

もちろん、SSLを使用する必要はありません。設定ファイルでは、あなたのポートはおそらく25になります。ユーザ名/パスワードが必要な場合とそうでない場合がありますが、もちろんあなたのホスト名は変更されます。

また、IISと一緒にSMTPコンポーネントをインストールすることを確認してください。

0

はいあなたはこのようにそれを送ることができます:D(しかし、私はあなたがポート25を使用する必要があると思う)SMTPクラスは、.NET

関連する問題