2012-02-23 23 views
1

電子メール(outlook .msgファイル)を書くときに使用されたコードページIDを取得したいと思います。この情報を保持するプロパティはPidTagMessageCodepageです。しかし、私はC++でそれにアクセスする方法を見つけることができません。Outlookメッセージファイル(.msg)のコードページIDを見つける方法

読み込みしようとしているメッセージファイル(.msg)がWindowsマシンで作成され、システムロケールが英語に設定されていました。このメールは、システムロケールが日本語(Shift-JISコードページ)の別のシステムに送信されました。私はメッセージファイルから元のコードページを特定し、それをMultiByteToWideChar()に渡します。

ありがとうございます。

+0

メッセージにどのようなアクセス権が必要ですか?ファイルシステムのRaw MSGファイル?見通し? – Ben

+0

ファイルシステム内の@Ben Raw MSGファイル – Niroshan

答えて

2

これらのプロパティにアクセスするには、拡張MAPIメソッドを使用する必要があります。 CodeProjectには非常に便利なライブラリ、MAPIExがあります。

拡張MAPIを使用しない場合は、.msgファイルのデータを直接開いて処理してください。 .msgファイルは必須ですOLE2 Compound Document http://msdn.microsoft.com/en-us/library/windows/desktop/ms693383(v=vs.85).aspxファイルおよびStgCreateStorageExメソッドなどを使用して直接プロパティにアクセスすることができます。検索するストレージを確認するために、複合ファイルの探索をサポートするアプリケーションがいくつかあります。ちょうどそれをGoogle。

+0

これは正解です。 – Ben

関連する問題