*

【VBScript】CDO.Messageでメール送信 文字化け

公開日: : 最終更新日:2015/01/12 Windows , , , ,

VBScriptでメール送信のプログラムを作ってみたら

日本語が文字化けになってしまった。

↓文字化けしてしまったソース。


Dim oMsg
Set oMsg = CreateObject("CDO.Message")

'メール送信方法
oMsg.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'SMTPサーバーのアドレス
oMsg.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "xxxx.co.jp"
'SMTPサーバーのポート
oMsg.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
oMsg.Configuration.Fields.Update

'差出人メールアドレス
oMsg.From = "差出人<xxx@xxxx.co.jp>"
'あて先メールアドレス
oMsg.To = "受取人<yyy@yyyy.co.jp.>"
'件名
oMsg.Subject = "メール件名"
'本文
oMsg.TextBody = "メール本文"

oMsg.Send

しかも、すごい限定的に。
Windows8.1
Windows7
Windows Vista
Windows Storage Server 2008

では文字化けせずに問題なかったのに、

Windows Storage Server 2008 R2

だけなぜか。。。

ですが、解決しました。上記のソースに
「oMsg.TextBodyPart.Charset = “ISO-2022-JP”」
を加えることで、文字化けせずに送信できました。

↓Windows Storage Server 2008 R2でも文字化けしないソース


Dim oMsg
Set oMsg = CreateObject("CDO.Message")

'メール送信方法
oMsg.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
'SMTPサーバーのアドレス
oMsg.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "xxxx.co.jp"
'SMTPサーバーのポート
oMsg.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
oMsg.Configuration.Fields.Update

'送信文字コード
oMsg.TextBodyPart.Charset = "ISO-2022-JP"
'差出人メールアドレス
oMsg.From = "差出人<xxx@xxxx.co.jp>"
'あて先メールアドレス
oMsg.To = "受取人<yyy@yyyy.co.jp.>"
'件名
oMsg.Subject = "メール件名"
'本文
oMsg.TextBody = "メール本文"

oMsg.Send

無印の Windows Storage Server 2008 では大丈夫なのに、なぜ!!!!

Adsense

関連記事

データベース

【SQL Server 2012】Management Studioでサンプルデータベース(mdfファイル)をアタッチ

以前、Windows Server 2012にMicrosoftR SQL ServerR 2012

記事を読む

Windows

【Internet Explorer】Windows7のデスクトップのIEがダブルクリックをしても起動しない。

「デスクトップにあるIEをダブルクリックしても起動しない。」 とヘルプデスクで依頼がありました。

記事を読む

Windows

【Windows Server 2008】共有フォルダ

仕事でのお話。 会社で新システムをリリースするための準備としてNASの領域縮小を行ったのですが…

記事を読む

Windows

【Windows7/VISTA】オーディオデバイスがインストールされていません。

「パソコンから音が出なくなった」 という問い合わせをうけました。 端末を確認すると… 「有

記事を読む

Windows

【IE7】初期ページを設定しているのに、変更できない。

いまさらIE7(笑)と思う方も多いかもしれませんが… 職場なんかだと使ってるとこが意外に多いん

記事を読む

Windows

【Windows2012】全てのプログラムの表示/キーボードショートカット

Windows8.1(Windows Blue)からはスタートボタンが復活するそうですね。 でも、

記事を読む

Windows

【Windows】仕事で使うキーボードのショートカット

ちょっと前の話。 いつも忙しい忙しいと言ってる建築関係の仕事をしている先輩から電話がかかってきた。

記事を読む

Windows

【共有フォルダ】アクセス権の新発見

本日、仕事で依頼があってファイルサーバー(Windows2008)のアクセス権を新たに設定していまし

記事を読む

Windows

【Windows Server 2012】VMware Playerにインストールとエラーではまったこと。

Windows Server 2012の評価版が無料(試用期間180日)でtechnetからダウンロ

記事を読む

Windows

【Windows】ユーザーのプロファイル削除方法

仕事のPCは、使いまわしたりするからユーザープロファイルがたまって、あまり使っていないのにCドライブ

記事を読む

Adsense

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Adsense

Microsoft Office
【Access】削除クエリの「指定されたテーブルから削除できませんでした。」の対処法

削除クエリで「指定されたテーブルから削除できませんでした。」と ポッ

Microsoft Office
【PowerPoint】表や図形、画像オブジェクトの位置をピッタリ合わせる方法

パワーポイントで、図形や画像等のオブジェクトの細かい位置調整は、 完

データベース
【SQL Server】Excel VBAのレコードセットを使ってテーブルの一括更新

前々回は読み取り専用でレコードセットへ取得し、結果をエクセルへ書き出し

application
【Visual Studio】デバック、ブレークポイントで止まらない。

Visual Studio 2015でVB.netのプログラムをデバッ

データベース
【SQL Server】Excel VBAでSELECT文を実行してレコードセットへ取得

前回は、テーブルのレコードをVBAで直接更新(Insert/updat

→もっと見る

PAGE TOP ↑