出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

CDONTSでの文字化け対策   人民兵さん [2003/02/19 10:54:06] [3207]
  あちゃこちゃ調べた結果なんとか出来そうです   人民兵さん [2003/02/22 8:17:21] [3215]

[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
Program By YasNet