How do the common controls convert between ANSI and Unicode?
Commenter Chris Becke asks how the common controls convert ANSI parameters to Unicode, since the common controls are Unicode internally.
Everything goes through
CP_ACP, pretty much by definition. The ANSI code page is
CP_ACP. That’s what ACP stands for, after all.
Now, there are some function families that do not use ANSI. The console subsystem, for example, prefers the OEM character set for its 8-bit strings, and file system functions can go either way, based on the setting controlled by the
In the scenario Chris describes, I suspect that the problem is not the ANSI-to-Unicode conversion but rather that the font selected into the listview didn’t support the necessary characters.