出来るのだASP Q&A掲示板(過去LOG)
訪問数 52046
昨日 889
今日 776 【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。 |
![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() |
![]() ![]() |
[3207] CDONTSでの文字化け対策 |
投稿者:人民兵さん の <ホームページ> 2003/02/19 10:54:06 |
アメリカに住んでいるウェブ関係の仕事をしているものです。皆さまのお知恵を借りに参りました。 CDONTSを使って、カスタマーにE-mailを送りたいのですが、日本語を使用すると必ず文字化け(?????の羅列になってしまう)を起こしてしまいます。 スクリプトのエンコードを指定したり、<%@LANGUAGE="VBSCRIPT" CODEPAGE="932"%>をいれてみたりしましたが、うまくいきません。今までは英語での開発だったので何も問題なくできたのですが・・・ 日本語のサイトでしらべたら***21なるDLLをインストールすればいいように書いてありましたが、会社が契約するサーバーに勝手にインストールすることができません。 SetLocale というファンクションを使ってユニコードにしてもだめでした。 どなたかいい方法がございましたら教えてください。 サーバーはWin2KでIISは5を使用しているみたいです。 下にあるのがサンプルで作ってみたファンクションです。 Sub sendMail( fromWho, toWho, Subject, Body ) Dim myMail SET myMail = Server.CreateObject("CDONTS.Newmail") myMail.MailFormat = 0 'Change mail format to MIME myMail.BodyFormat = 0 'Change mail style to HTML format myMail.SetLocaleIDs(65001) '65001 is Unicode myMail.From = fromWho myMail.To = toWho myMail.Subject = Subject myMail.Body = Body myMail.Send SET myMail = Nothing End sub |
[3215] あちゃこちゃ調べた結果なんとか出来そうです |
投稿者:人民兵さん の <ホームページ> 2003/02/22 8:17:21 |
この問題で1月近く悩んでいたのですが、今日になってようやく答えが見つかりました。 ユニコードではなくて日本語のコード(932)を指定してやればよかったみたいです。(下記参照) http://support.microsoft.com/default.aspx?scid=kb;en-us;264072 このサイトではCDONTSよりもCDOSYSを使うことを薦めていました。この2つの違いはこれから勉強しようかと思っています。 とにかく報告(同じ問題で悩んでる人がいるかもしれないので)とお礼まで > SetLocale というファンクションを使ってユニコードにしてもだめでした。 > 下にあるのがサンプルで作ってみたファンクションです。 > > Sub sendMail( fromWho, toWho, Subject, Body ) > Dim myMail > SET myMail = Server.CreateObject("CDONTS.Newmail") > myMail.MailFormat = 0 'Change mail format to MIME > myMail.BodyFormat = 0 'Change mail style to HTML format > myMail.SetLocaleIDs(65001) '65001 is Unicode > myMail.From = fromWho > myMail.To = toWho > myMail.Subject = Subject > myMail.Body = Body > myMail.Send > SET myMail = Nothing > End sub |
TreeBBS For ASP V.0.1.3 |