*

【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

関連記事

Windows

【Windows 2012】Windows Server バックアップ スナップインが作成できませんでした。

職場のWindows Server 2012のWindows Server バックアップが突如起動し

記事を読む

Windows

【Windows 8.1】でDVDの再生できない?

結論から言うと、そのままのWindows8、8.1ではDVD ムービーの再生機能がないため、見れない

記事を読む

Windows

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

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

記事を読む

Windows

【Active Directory のグループ ポリシー】Windows VISTAでスクリーンセーバーが動かない。

会社でハマッたことを記録として残しておこうと思います。 うちの職場では Windows2003 s

記事を読む

Windows

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

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

記事を読む

Windows

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

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

記事を読む

Windows

【Windows Server 2008】共有フォルダ

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

記事を読む

Windows

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

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

記事を読む

Windows

【Windows】シャットダウンがフリーズ(固まる)してしまう。

シャットダウンするとそのまま固まってしまう。 結論から書くと、 ユーザープロファイルの削除 

記事を読む

データベース

【SQL Server 2012 Express】Windows Server 2012にインストールしてみる

Windows Server 2012にSQL Server 2012をインストールしてみる。 以

記事を読む

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 ↑