10

中程度の信頼で実行されるアプリからメールを送信する必要があります。完全な信頼の下で正常に機能する現在の電子メール送信コードは、中程度の信頼の下でSecurityExceptionをスローします

[SecurityException: Request for the permission of type 'System.Net.Mail.SmtpPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed.]

machine.configと関連ファイルを調べると、SMTPアクセスがConnectに制限されていることがわかります。

<SecurityClass Name="SmtpPermission" Description="System.Net.Mail.SmtpPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>

<IPermission class="SmtpPermission" version="1" Access="Connect"/>

MSDNによると、Connectはポート25でのみリクエストを許可します。ただし、Gmailサーバーはポート587で動作します。回避策はありますか?提案?

4

4 に答える 4

4

Gmail also Accepts Port 25 ; you just give Port 25; its Working For Me.,

于 2009-07-15T10:12:47.663 に答える
1

ポート 465 を試しましたか。

http://support.google.com/mail/bin/answer.py?hl=ja&answer=13287

Web サービスを作成し、アプリから Web サービスにメールを送信することもできます。次に、完全信頼で Web サービスを実行します。

于 2012-05-07T19:37:56.783 に答える
1

ではmedium trust、はい、ポート 25 で「立ち往生」しています。カスタム構成ファイルを作成するために (Web ホストを参照している) にアクセスできる/アクセスできる場合:

<IPermission class="SmtpPermission" version="1" Unrestricted="true" />

参考文献:

于 2012-05-13T19:51:54.700 に答える
1

多くの場合、Web ホストは、送信メールに独自の SMTP サーバーを使用することを望んでいます。それがあなたの特定のシナリオで問題を引き起こすかどうかはわかりませんが、そうでない場合は、おそらくホストに連絡して、外部サーバーを使用しようとする代わりに、SMTP サーバーが何であるかを尋ねる必要があります.

于 2012-05-14T17:48:41.683 に答える