From: Neil H. <nho...@bi...> - 2001-04-30 23:16:29
|
Recent releases of w32api have symbols such as WM_IME_STARTCOMPOSITION defined in both winuser.h and imm.h. Previously these were defined only in imm.h. Making the definitions available in winuser.h is more compatible with Microsoft headers so is the correct thing to do. However, if you are going to use these messages, you will normally need access to other definitions in imm.h so must include that as well. Then you will see several messages like: E:/gcc/lib/gcc-lib/mingw32/2.95.2/../../../../include/imm.h:7: warning: `WM_IME_STARTCOMPOSITION' redefined The solution is to either remove the definitions of these (WM_IME_*) symbols from imm.h, or use some #if scheme to make them visible in the correct circumstances. There is some #if version checking in the Microsoft headers that come with VC++ that I don't understand but they do not define any of these messages in imm.h. Further, the Microsoft headers do not require an explicit #include <imm.h> as it is automatically included by windows.h unless NOIME is defined. Neil |