2003-01-24 122041 [長年日記]

IMLangConvertCharset

IMultiLanguage::GetCharsetInfoでキャラクタセットの情報が取得されていても、キャラクタセットによってはIMultiLanguageでサポートされていないことがあるようで、実際にConvertStringToUnicodeを呼び出すとS_FALSEが返ってくる事があります。これを先に判断するために、前もってCreateConvertCharsetを呼び出してIMLangConvertCharsetを取得しておくように変更しました。サポートされていないキャラクタセットならば(自動判別以外なら)ここで判定できるはず。ところが、なぜか自前でCreateConvertCharsetを呼び出すと変換できてしまいました。やっぱりいまいち動作が良くわかりませんね。

MLCONVCHARF_NONE

IMultiLanguage::CreateConvertCharsetで使うフラグの一つだとドキュメントに書いてあるMLCONVCHARF_NONEですが、コンパイルが通らなかったのでmlang.idlを見たところ定義されていないですね。SDKが古いのかと思って、Platform SDKをアップデートしましたが、やっぱり含まれていませんでした。とりあえず0を渡しておくことにします。

HTML表示

忘れていましたが最近HTMLメールのSPAMがやたらくるので、HTML表示のON/OFFをメニューから切り替えられるようにしました(別にSPAMがHTMLで見たいわけではなくて、セキュリティホールを突かれたらいやなので、OFFにしたいだけです^^;)。デフォルトはOFFということで。