http://bugs.winehq.org/show_bug.cgi?id=7512
------- Additional Comments From dmitry@codeweavers.com 2007-11-07 10:38 ------- There is no need to provide the same code snippet again and again, this bug is full of such examples, and Wine has a couple of nice test cases as well.
The problem is not whether the control is unicode or not, IsWindowUnicode() works correctly in Wine. The problem is (as explained already numerous times in this bug) that an app sets a windows proc (which expects ANSI input strings) as a Unicode window proc handler. That causes unexpected string conversions leading to the observed behavior. Apparently Windows detects such a case for internal window procs and uses not provided (broken) ANSI window proc, but its Unicode counterpart.