http://bugs.winehq.org/show_bug.cgi?id=7512
------- Additional Comments From mikolaj.zalewski@gmail.com 2007-13-07 14:43 ------- User32 builtin controls have both an ANSI and a Unicode winproc. Your code obtained the ANSI winproc (with GetWindowLongA) and plugged it as a Unicode winproc (with SetWindowLongW). Thus the ANSI function obtained Unicode string in wparam/lparam (but interpreted them as ANSI strings).