- PR -

MailMessage.Fromにダブルコーテーションを入れるには

1
投稿者投稿内容
使えないPL
会議室デビュー日: 2006/04/11
投稿数: 5
投稿日時: 2006-04-11 23:10
こんばんわ。初めの投稿となります。

ご存知の方がいらしたら、ご教授下さいますよう、お願いいたします。

現在、VisualStadio.Net2003にて開発を行っております。
メールを送付する箇所で1点困っております。

メールの送付元にダブルコーテーション(半角)を含む文字列を表示したいと考えております。
以下のようなサンプルコードにて実施するのですが、送付されたメールを確認すると
ダブルコーテーションが削除されてしまっています。
ダブルコーテーションを文字列として認識させる事はできないでしょうか。
""""をchr(34)に変更しても同様でした。

SampleCode
===================================================
Dim Message As MailMessage = New MailMessage
Dim Master_Email As String
Dim Master_Name As String

Master_Email = "test@test.co.jp"
Master_Name = "テスト"
Message.From = """" & Master_Name & """" & "<" & Master_Email & ">"

Message.Body = "dummy"
Message.To = "test@test.co.jp"
Message.Subject = "test"
SmtpMail.SmtpServer = MailSrv
SmtpMail.Send(Message)
===================================================

補足:
SmtpMail.SendにてブレイクをはりMailMessageオブジェクトを確認すると
Message.Fromには以下の文字列を確認できました。
""テスト"<test@test.co.jp>"
ですが送付されたメールを確認するを
テスト
となってしまっている状況です。

説明が分かり辛く申し訳ありません。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-12 07:44
引用:

使えないPLさんの書き込み (2006-04-11 23:10) より:

以下のようなサンプルコードにて実施するのですが、送付されたメールを確認すると
ダブルコーテーションが削除されてしまっています。


メーラ側でそう見えているわけじゃないですよね?
生のヘッダも削除されていますか?

"""""" & Master_Name & """""" & " <" & Master_Email & ">" も試してみてください。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
使えないPL
会議室デビュー日: 2006/04/11
投稿数: 5
投稿日時: 2006-04-12 16:03
じゃんぬねっとさん、ご回答ありがとうございます。

メーラ側のヘッダ情報を確認しましたが、同様に消えていました。
メーラはOutLook、Becky!を使用して確認しましたが、
共に消えていました。

"""""" & Master_Name & """""" & " <" & Master_Email & ">"
でも同様に"が削除されてしまいました。

MailMessage オブジェクトでは"は破棄されてしまうのかな。。。
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-04-12 16:27
試したらこんな感じで出来ました。
コード:
        Message.From = String.Format("\""{0}\""<{1}>", Master_Name, Master_Email)


使えないPL
会議室デビュー日: 2006/04/11
投稿数: 5
投稿日時: 2006-04-12 16:44
かるあさん!ありがとうございます。

できましたぁ〜
見事に"が入りました。

ありがとうございました。
文字列。。。奥が深いですね。。。
精進します。
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-04-12 16:56
引用:

かるあさんの書き込み (2006-04-12 16:27) より:

Message.From = String.Format("""{0}""<{1}>", Master_Name, Master_Email)


なるほど、エスケープ文字ですか。
"\""" -> \"

うっかり &quot; とかで試すところでしたよw

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
1

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