windows7への対応をお願いします
Printable View
windows7への対応をお願いします
imeだと変換後次の一文字が認識しなくてまともな会話ができませんね。
ATOKだとウィンドウ開きっぱなしです。ウィンドウの位置を固定することで対処しています。
早くなんとかしてほしいです。
随分前に公式twitterで原因究明中とのツィートがあったっきり2ヶ月程音沙汰無し。
そろそろ修正作業の進捗状態くらい教えて欲しいものですね。
この件はVistaが出た頃から永遠と言われてますがいっこうに直される気配がないですね
PS2?だったかPC導入時期だったかちょっと覚えておりませんがこれと同じ現象が出ている時期がありましたが
すぐに対応されて直っているにもかかわらずVista/7ではいまだに放置、どうにかなりませんかね。
えっと挙動を見ながら原因を推測しました。
問題にしたいのは、ATOKは本来WM_IME_COMPOSITION を握りつぶすと一瞬変換ウィンドウを閉じて再度開く挙動を
見せるはずなのですが、FF11は開きっぱなしになります。
このあたりを推測するに、WM_IME_COMPOSITIONの後、WM_CHARを発生させないためにIMEのコンテキストを
消去するルーチンが入っているかと思われます。
単純に消去しようとすると、
ImmNotifyIME( hImc, NI_COMPOSITIONSTR,CPS_CANCEL,0);
の形でIMM32のAPIをコールすることになるかとおもいますが、これをWM_IME_COMPOSITONのウィンドウメッセージを処理中にすると、すでに入力している未確定の頭の文字ごと消えます。Vista以降でおきているのは多分これかと思います。
(ちなみに、ラインエディタ上で日本語入力onにした後、宅配のキャラクタ名入力時も頭の一文字が抜けます)
WM_IME_COMPOSITION を処理中に、IME上の文字列を消去しようとすると、
ImmSetCompositionString(hImc, SCS_SETRECONVERTSTRING, TEXT(""), sizeof(TCHAR), TEXT(""), sizeof(TCHAR));
と呼び出す(IME上に入力確定後、次の一文字を未確定状態に戻した上に、変換ウィンドウを消さないのはおそらくこのAPIをコールしていると推定します)
問題は、このAPIを使用して、IME上の文字を消去して未確定状態に戻すためには、以下の書き方があります。
イ) ImmSetCompositionString(hImc, SCS_SETRECONVERTSTRING, NULL,0,NULL,0);
ロ) ImmSetCompositionString(hImc, SCS_SETRECONVERTSTRING, NULL,0,TEXT(""),0);
ハ) ImmSetCompositionString(hImc, SCS_SETRECONVERTSTRING, TEXT(""), sizeof(TCHAR), NULL ,0);
ニ) ImmSetCompositionString(hImc, SCS_SETRECONVERTSTRING, TEXT(""), sizeof(TCHAR), TEXT(""), sizeof(TCHAR));
イは、呼び出し上問題外なのですが、XP以前では動いちゃいます。
ロは、XPより前は可能な書き方でしたが、VISTA以降は非互換性があります。
ハ、ニの書き方はどちらもVISTA以降でも動きます。マイクロソフトのIMM32互換性情報.doc 上ご確認ください。
(問題1)
もうひとつ問題があって、このAPI (IMEが再変換を実装してない場合がある)ので失敗する環境があること(問題2)
で、おそらく、
if( ImmSetCompositionString(hImc, SCS_SETRECONVERTSTRING,NULL,0,TEXT(""),sizeof(TCHAR)) == 0 ){
ImmNotifyIME(himc, NI_COMPOSITIONSTR, CPS_COMPLETE , 0);
}
のようなコードがウィンドウプロシージャの中に紛れ込んでいるのではないでしょうか?
この場合XP以前とVISTA以降のATOK は所望の動作をしてくれます。再変換を実装していないIMEと、VISTA以降は、ImmSetCompositionStringは失敗して、ImmNotifyIMEを呼び出します。
以上、FF11の挙動を見て推測しました。何かの参考になられたら幸いです。
まさかネトゲでチャット不具合は修正の優先順位が低いなんて言わないですよね。
ゲームバランスがどうの、コンテンツがどうの以前にこの問題が最優先ではないでしょうか?
IMEの設定変更によって、取りこぼしは無くったけど、変換ウィンドウが出っぱなしになる為、「半角/全角」キーを2回押してあげないとダメとか…調子悪いなぁ。
Vistaからずっと放置しているけど…(´・ω・`)
私もATOKで同じ症状で困ってたけど
グーグルの日本語入力にして解決できました 使いかってもATOKと似てるので使ってみては 無料ですし
私もこれさえなければXPからWin7環境に完全移行するんですが・・・
この不具合だけのためにデュアルブート環境を作ってXPメインで動かしてます。
ついでにUACで暗転すると落ちるのも対処してほしいなぁ。こっちは暗転しないようにすればまだ対処できますが。
変換候補だしたままアクティブウインドウを切り替えると落ちるってのもあったなぁ・・・