マイクロソフトによる講演「Windows Vista ゲーム開発」、数多くの国内PCゲームが躓いたIME問題は、SDKサンプルのささいなバグだった!?

 ま、本題のフルスクリーンゲームのVista対応についてはあんまり興味はないが、

 NyaRuRu氏の解説によると、Windows Vistaでデフォルト機能となった「Text Services Framework (TSF)」は、従来のIMEで使われていたIMM32を置き換えるものだ。このTSFは実はWindows 2000時代から存在しており、COMベースの「安全なプログラミング基準」を実現し、従来のキーボード入力に加えて音声認識や手書き入力機能を統合する機能を備えている。
 「TSF」はWindows XPにおいても「詳細なテキストサービスを無効にする」オプションをチェックしないでおけばアクティブになり、「詳細なテキストサービスをすべてのプログラムに拡張する」オプションをチェックすることですべてのアプリケーションに適用される。このとき、IMM32にしか対応していないアプリケーションに対し、「TSF」は、「CUAS」と呼ばれるエミュレーションレイヤを通じて制御されるようになる。
 NyaRuRu氏によるとこのときの挙動がまた曲者で、「TSFを使うとアプリが怪しい挙動をすることがあるのは『Visual Studio』のトラブルーシューティングなどで通例になっていた」などという認識だ。問題の本質は、「アプリの『TSF』対応が不完全だったこと」とした。

あっさり言い切ってるけど、その「不完全な対応」にも何かしょうもない共通要因があるんじゃないかと思っちゃいますな。なんせMS製品onlyの環境ですらターミナル サーバー環境では、パフォーマンスの問題が発生する可能性があるため、CTFMON は無効のままにしておくことをお勧めしますなんて言われたりしてるのに。