- PR -

ASP.NETの添付メール送信時のBCCのアドレスが実在しないとき、ローカルに作成した添付ファイルの削除につい

1
投稿者投稿内容
にょ
会議室デビュー日: 2002/11/21
投稿数: 1
投稿日時: 2002-11-21 00:28
はじめまして。ASP.NETを使用してまだ間もない木下と申します
今回、Web上でローカルにファイルを作成してそのファイルをメールに添付送信後作成した
ローカルファイルを削除するというプログラムを作成するというプログラムを組んで
みましたが、NUnitでテスト&Webフォーム上で実行テストをしたところ
ローカルに一時的に作成したファイルが正常に削除できない状態がでてしまいました。
ブラウザを落とす・(NUnitでのテストではNUnitを終了する)作業後にファイルが削除される
という解放タイミングがおかしいのかよくわかりません。

作業は
ファイル作成
送信
作成したファイルの削除

なんですが…
くわしい方、ご存知でしたらお返事をおねがいします。

下記ソース
Dim objMessage As New MailMessage()
Dim objSmtp As SmtpMail
Dim objAttachment As MailAttachment
Dim fname As String = "C:\Test.txt"

Try
objMessage.To = "正しいアドレス"
objMessage.From = "送信者アドレス"
objMessage.Bcc = "存在しないアドレス"
objMessage.Subject = "サブジェクト"
objMessage.Body = "メイン"
objMessage.BodyEncoding = Text.Encoding.Default

'添付ファイル作成
Dim objSw As StreamWriter

'ファイル存在チェック
If File.Exists(fname) = True Then
Exit Function
End If

objSw = New StreamWriter(fname)
objSw.WriteLine("Test")
'後始末
If IsNothing(objSw) = False Then
objSw.Close()
objSw = Nothing
End If

'添付ファイルの指定(UUEncodeでエンコードされる)
objAttachment = New System.Web.Mail.MailAttachment(fname, MailEncoding.Base64)

objMessage.Attachments.Add(objAttachment)

objSmtp.SmtpServer = cstrSMTP
'送信
objSmtp.Send(objMessage)

Catch
End Try
If File.Exists(fname) = True Then
File.Delete(fname)
End If
objMessage = Nothing
objSmtp = Nothing
objAttachment = Nothing
fname = Nothing
1

スキルアップ/キャリアアップ(JOB@IT)