[EMAIL PROTECTED] です。

Takashi Nakamoto wrote:
>> Windows版の未解決の問題:
>>  - Win 95系の対応
>>  - IMEとしてATOK14を使っていると、結果が半角カナで返ってくる
>>    (さっき発見しました)
>>  - 100文字以上の文字列のフリガナが表示されない
> 
> これに追加で、
>  - ATOKとMS-IMEでは結果が異なる
>  - FURIGANA関数を使っているCalcファイルを開くと、開いた直後には正しい結
> 果が表示されず、何も表示されなかったり、意味不明な文字列が表示される。
>    (関数を入力し直したりすれば直る)
> 
> 前者については、とても頭の痛くなる問題です。どうしたものか...
1.前にも示した、
http://www.psytec.co.jp/tips/0104/
が参考になると思いますが、OS(IMEバージョン?)によって返してくる結果が異なるのでそれに対応しないとならないと思います。
3.99文字で区切って末尾の文字コードを確認、2バイト文字の上位のコードの場合は1文字削除して変換。
  削除した一文字は以降の文字列の先頭に追加、以上を繰り返す。
  と言う所でしょうか。

> また、後者については原因は分からないのですが、
>       m_hWnd = GetActiveWindow();
>       hIMC = ImmGetContext(m_hWnd);
>       hKL = GetKeyboardLayout(0);
> あたりが怪しい気がしています。ウィンドウが開く前にこのコードが実行され
> ているとか...curvirgoさんのほうでも再現しますでしょうか?
再現しました。
"m_hWnd = GetActiveWindow();"
あたりかなぁと思うんですが...

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

メールによる返信