Jmail送信メールと添付ファイルの文字化け解決方法を共有する。
メール送信の具体的な使い方:
まず、Jamil.dllのコンポーネントをダウンロードして、参照using jmailを追加してから、本機またはサーバーに登録します。
jmail.dllをサーバーのsystem 32ディレクトリにコピーして、スタート-実行-cmd-入力regsvr 32 jmail.dllを実行して、登録して成功して、コードを書きます。
コードは以下の通りです
添付ファイルを置きたいですが、以下の通りです。
結果は次のようなエラーが発生しました。
This is a multiipad message in MIME format.--NEXT_BMAEB 3968967 D 044 DC 9 E 208 D 0808 C 60 B 4 Content-Type:text/htmlcharset=「GB 2312」Conttentt Transfer-Enccoding:Quoted-Plantable sdfdd--NEXT_BMAEB 3968967 D 044 DC 9 E 208 D 0488 C 60 B 4 Content-Type:appliation/octet-stream;name="=ですかGB 2312Q?12 d 95384-576 f-424 f-bf 15-f 8 e 2397 e 2791=2 EJPG?=」Connect-Trans fer-Enccoding:base 64 Content Description:=?GB 2312Q?12 d 95384-576 f-424 f-bf 15-f 8 e 2397 e 2791=2 EJPG?Continted-Dispopsition:inline;filename="=GB 2312Q?12 d 95384-576 f-424 f-bf 15-f 8 e 2397 e 2791=2 EJPG?=」Conteet ID:
ネットで解決方法を探しました。
例:
2.Addurlattachment(bstryURL、bstractachAs、isInline、bstreAuth):Stringは指定されたURLからファイルをダウンロードし、添付ファイルに添付します。第二のパラメータ「AttachAs」は添付ファイルに添付されたファイルのファイル名を変更します。Inline属性がtrueに設定されている場合、この添付ファイルは埋め込み可能な添付ファイルです。メソッドを使ってcontent IDに戻ります。これはHTMLメールを送信する時に非常に有用です。最後のパラメータはオプションです。サーバが認証を必要とするときに使います。
例
まず、Jamil.dllのコンポーネントをダウンロードして、参照using jmailを追加してから、本機またはサーバーに登録します。
jmail.dllをサーバーのsystem 32ディレクトリにコピーして、スタート-実行-cmd-入力regsvr 32 jmail.dllを実行して、登録して成功して、コードを書きます。
コードは以下の通りです
using jmail;
protected void sendMail(String sender, String senderMail, String receiver, String subject, String content)
{
jmail.MessageClass jmMessage = new jmail.MessageClass();
//
jmMessage.Charset = "gb2312";
//
jmMessage.From = senderMail;
//
jmMessage.FromName = sender;
//
jmMessage.Subject = subject;
//
jmMessage.Body = content;
//
jmMessage.AddRecipient(receiver, "", "");
//
jmMessage.MailServerUserName = "ss";
jmMessage.MailServerPassWord = "ss";
// smtp
if (jmMessage.Send("smtp.163.com", false))
{
Response.Write("<script>alert(' ')</script>");
}
else
Response.Write("<script>alert('www.jb51.net ')</script>");
}
上はJmailの具体的な使い方です。添付ファイルを置きたいですが、以下の通りです。
結果は次のようなエラーが発生しました。
This is a multiipad message in MIME format.--NEXT_BMAEB 3968967 D 044 DC 9 E 208 D 0808 C 60 B 4 Content-Type:text/htmlcharset=「GB 2312」Conttentt Transfer-Enccoding:Quoted-Plantable sdfdd--NEXT_BMAEB 3968967 D 044 DC 9 E 208 D 0488 C 60 B 4 Content-Type:appliation/octet-stream;name="=ですかGB 2312Q?12 d 95384-576 f-424 f-bf 15-f 8 e 2397 e 2791=2 EJPG?=」Connect-Trans fer-Enccoding:base 64 Content Description:=?GB 2312Q?12 d 95384-576 f-424 f-bf 15-f 8 e 2397 e 2791=2 EJPG?Continted-Dispopsition:inline;filename="=GB 2312Q?12 d 95384-576 f-424 f-bf 15-f 8 e 2397 e 2791=2 EJPG?=」Conteet ID:
ネットで解決方法を探しました。
jmail.AddAttachment(“c:autoexec.bat”)
jmail.AddAttachment(“myImage.gif”,TRUE)
Stringはメールにファイルタイプの添付ファイルを追加します。Inline属性がtrueに設定されている場合、この添付ファイルは埋め込み可能な添付ファイルです。addAttachment()を使ってcontent idに戻ります。これはHTMLメールを送る時にとても役に立ちます。例:
AddAttachment(FileName, isInline, ContentType) :
埋め込み可能な添付ファイル2.Addurlattachment(bstryURL、bstractachAs、isInline、bstreAuth):Stringは指定されたURLからファイルをダウンロードし、添付ファイルに添付します。第二のパラメータ「AttachAs」は添付ファイルに添付されたファイルのファイル名を変更します。Inline属性がtrueに設定されている場合、この添付ファイルは埋め込み可能な添付ファイルです。メソッドを使ってcontent IDに戻ります。これはHTMLメールを送信する時に非常に有用です。最後のパラメータはオプションです。サーバが認証を必要とするときに使います。
例
jmail.AddAttachment(“c:autoexec.bat”)
jmail.AddAttachment(“myImage.gif”,TRUE)
測ってみましたが、2つの方法とは関係がないようです。その後、インターネット上でMessage.ContentTypeのプロパティを設定しないでくださいという人がいました。試してみたら、本当に発送に成功しました。