- PR -

VB.netでメールを送信したのはよいのですが・・・

投稿者投稿内容
もぐたんく
会議室デビュー日: 2003/12/11
投稿数: 4
投稿日時: 2003-12-11 14:13
初めまして、自分はヘタレPGのもぐたんくといいます。
今日は、VB.netを使ってメールを送信したときに発生した現象について皆様のお力をお借りしたいと思い質問致します。

開発環境
  使用OS:Win2000 SP4
  使用アプリケーション:Visual Studio .net 2003

VB.netでメールを送信するプログラムを作成する為、参照元記事URLのページを元にコードを記述しました。
メールの送信はうまくできたのですが、添付ファイルを設定して送信した場合、指定した添付ファイルとは別に、「untitled」というファイルが勝手に作成される事が判明しました。
この「untitled」ファイルは拡張子がなく、エディタで開いても文字の羅列が並んでいるだけの状態でした。
自分はメーラーはAlmailを使用していてこの現象が発生したのですが、Outlook Expressを使用している同僚のマシンでは再現しませんでした。
また、gooのフリーメールでも実験してみたところ、こちらも再現しませんでした。
この「untitled」というファイルは何が原因で作成されるのか、本やネットを使って調べたのですが、この現象について記述しているところがありませんでした。
この現象が発生する原因や対処法、他に添付しているファイルやメールに影響がないのか、ご存知の方がいらっしゃいましたら、是非解説をお願いします。

以下はコードです。
尚、System.Web.dllを参照の追加で追加する事が前提です。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
System.Web.Mail.SmtpMail.SmtpServer = smtpサーバーを指定します。

Dim message As New System.Web.Mail.MailMessage
message.From = 送信者のアドレスです。
message.To = 受信者のアドレスです。
message.Subject = "VB.netからメールを送るサンプル"
message.BodyEncoding = System.Text.Encoding.GetEncoding("ISO-2022-JP")
message.BodyFormat = Web.Mail.MailFormat.Text
message.Body = "このメールはVB.netから送信しています。"

Dim attachment As New System.Web.Mail.MailAttachment("C:\logo_header.gif")
message.Attachments.Add(attachment)

System.Web.Mail.SmtpMail.Send(message)

MsgBox("メール送りました")
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
皆様のお手を煩わせてしまって誠に申し訳ありませんが、宜しくお願いいたします。
<|_ _|>
KeroKero
常連さん
会議室デビュー日: 2003/11/06
投稿数: 26
投稿日時: 2003-12-12 09:23
引用:
メールの送信はうまくできたのですが、添付ファイルを設定して送信した場合、指定した添付ファイルとは別に、「untitled」というファイルが勝手に作成される事が判明しました。
この「untitled」ファイルは拡張子がなく、エディタで開いても文字の羅列が並んでいるだけの状態でした。
自分はメーラーはAlmailを使用していてこの現象が発生したのですが、Outlook Expressを使用している同僚のマシンでは再現しませんでした。


どうして作成されるのかはわかりませんが,何が添付されているかはAL-MailのFAQに記載されてます。
http://www.almail.com/faq32attach.html#attach-02

「application/ms-tnef」で検索すると出てきますが,OutlookとOutlook Expressで使われるリッチテキストに関する情報だそうです。

[ メッセージ編集済み 編集者: KeroKero 編集日時 2003-12-12 09:26 ]
もぐたんく
会議室デビュー日: 2003/12/11
投稿数: 4
投稿日時: 2003-12-12 12:57
KeroKero様、どうもありがとうございました。<|_ _|>

ひょっとすると、VB.netを使ってメールを送るときは送信先がOutlookを使ってる事が前提なのかもしれませんね。

お忙しい中お返事いただきまして誠にありがとうございました。
もぐたんく
会議室デビュー日: 2003/12/11
投稿数: 4
投稿日時: 2003-12-12 19:06
何度もすみません。
KeroKero様のご指摘のおかげで、「Untitled」の正体は分かったのですが、VB.netでメールを送信するときにリッチテキスト方式で送らない様にするのかが分かりません。

これはコードで指定できるのでしょうか?
また、これは仕様で必ずこうなってしまうのでしょうか?

重ね重ね誠に申し訳ありませんが、どなたか回答をお願いします。
<|_ _|>
きくちゃん
ぬし
会議室デビュー日: 2003/08/01
投稿数: 854
お住まい・勤務地: 都内某所
投稿日時: 2003-12-12 20:00
もぐたんくさん、こんばんは。

引用:

また、これは仕様で必ずこうなってしまうのでしょうか?


いや、そんなはずはありません。
メールサーバや送信実行マシンなど、どこかに原因があるのではないかと思いますが...。
KeroKero
常連さん
会議室デビュー日: 2003/11/06
投稿数: 26
投稿日時: 2003-12-12 20:35
すいません。安易に現象だけみて「application/ms-tnef」だろうと思ったのですが,別物かもしれません。一応タイプを確認してみてください。

ちなみに同じソースコードをVB.NET2002で作成&送信し,Al-mailで受信したところ,現象を再現しませんでした。メールは@Niftyを使ってます。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-12-12 22:44
MIMEヘッダーあたりじゃないかなぁ?
KeroKero
常連さん
会議室デビュー日: 2003/11/06
投稿数: 26
投稿日時: 2003-12-13 20:16
もしExchangeを使用しているなら,こういう事例もあります。

クライアントの設定に関係なくWinmail.datがインターネットメッセージに添付される
http://support.microsoft.com/default.aspx?scid=kb;ja;257800

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