Global クラスで Application_Error を使用して 404 を処理しています。
404 がキャッチされたら、それをログに記録する目的でメールを送信します。これを行うには、静的メソッドを呼び出してエラーを書き込みます。
ErrorHandler.WriteError(Exception ex)
System.Net.Mailクラスを初期化するために、このメソッド内でEmailHandlerの新しいインスタンスを作成します。私のEmailHandlerオブジェクト内に私はプライベートメンバーを持っています
private MailMessage m_mail = null;
EmailHandlerクラスのコンストラクターで、メールを作成するために新しいMailMesageインスタンスを作成します。
public EmailHandler()
{
m_mail = new MailMessage();
}
この時点で、次のエラーが表示されます。
System.Security.Cryptography.CryptographicException
"The handle is invalid."
これは、リクエストが特定のファイル ( www.mysite.com/random-incorrect-image.jpgなど) に対してのみ行われる場合にのみ発生することを指摘する必要があります。
www.mysite.com/random-incorrect-page.aspxのようなページをリクエストしているときには発生しません