[Imime-devel] Re: MBCS or UNICODE

Back to archive index

Kazuki IWAMOTO iwm****@maid*****
2003年 11月 18日 (火) 00:30:45 JST


岩本一樹です。

> コンパイル時にUNICODEかMBCSを決定して、2つのバイナリを同梱よりも、
>1つのバイナリで実行時に動的にAPIを取得してどちらのAPIを使うか決める方法も
>あると思いつきました。普通はやらない方法ですが、小規模プログラムでありかつ
>UNICODEにしたときの利点が多いimimeならば、この方法も検討する価値がありそうです。

 具体的にはim-ime.dllがロードされたときDllMainでimm32.dllをLoadLibraryで
ロードし、OSを判定してWindowsNT/2000/XPならばGetProcAddressで
UNICODE系のAPIを取得します。APIを取得できないかWindows95/98/MEならばMBCSのAPIを
取得します。そして変数fUnicode(TRUE:UNICODE,FALSE:MBCS)を設定します。
 それ以降は#fidefの代わりに、if文でfUnicodeの値を元に分岐させます。
 そのDllMainとグローバル変数fUnicodeの場所ですが、gtkimcontextime.cとimime.cの
どちらでも不適切な気がするので、dllmain.[ch]を新たに追加します。
 この方針で作っていきたいと思います。



岩本一樹
iwm****@maid*****




Imime-devel メーリングリストの案内
Back to archive index