タイトル : VB2005から携帯メールへの送信について 投稿日 : 2008/03/25(Tue) 21:31 投稿者 : たー
現在、VB2005(クリックワンスで配信)で、 クライアント側で入力したメール内容をWEBサービスを経由して 送信するというAPを作成しております。 そのAPで携帯へのメールの送信で問題が発生しておりまして、 できれば皆様のお力をお借りしたいと思います。 宜しくお願いいたします。 早速ですが、 @問題点 携帯電話へのメールの添付ファイル(クライアントで指定する)で、 ファイル名が日本語を含んでいる場合に、 受信した携帯でファイル名を見ると、 文字化けが発生してしまう。 ※PCで受信した場合は問題が無い。 A現状 @タイトル・本文については、 エンコードをISO2022JPにすることで解決済み A添付のファイル名をISO2022JPにすると、 PCで受信した場合は問題ないが、 携帯で受信した場合にファイル名が文字化けしてしまう。 B現状のソース(抜粋) Private Sub sendMal(ByVal Attach_Name As String, ByVal Attach As System.IO.Stream) Dim Msg As System.Net.Mail.MailMessage = Nothing Dim Attachment As System.Net.Mail.Attachment 'JISコードに設定 Dim enc_JIS As System.Text.Encoding = System.Text.Encoding.GetEncoding(50221) 'csISO2022JP Dim sb As New StringBuilder Try Msg = New System.Net.Mail.MailMessage() Msg.Body = "**件名**" Msg.BodyEncoding = enc_JIS Msg.Subject = EncodeMailHeader("**タイトル**", enc_JIS) Msg.To.Add(New System.Net.Mail.MailAddress("to@******")) Msg.From = New System.Net.Mail.MailAddress("from@******") '添付ファイルが指定されていたら If Attach_Name <> "" Then Attachment = New System.Net.Mail.Attachment(Attach, Attach_Name) 'enc_JISを使用して、エンコードの指定をしているが、NG Attachment.NameEncoding = enc_JIS Msg.Attachments.Add(Attachment) End If mailer.Send(Msg) Catch ex As Exception Throw End Try End Sub C上記ソースで送信したメールのヘッダー(添付ファイル部分の抜粋) ----boundary_2_aa43b771-8d67-4d8c-b612-f9fa87de0c74 content-type: application/octet-stream; name="=?iso-2022-jp?Q?=1B$B%\\%j%9%V%i%&%s=1B(B.jpg?=" content-transfer-encoding: base64 ※実際のファイル名は「1ボリスブラウン.JPG」のような名前を指定しております。 D携帯で受信したときのファイル名 「1ボ椒螢后淵魅鵐船礇」 といった感じで化けてしまいます。 これを、正常に表示できるようにしたいのですが、 何か問題点の心あたりはありませんでしょうか? ご協力をお願いいたします。 以上 |