Тотальная неудачница и убийца жёстких дисков.
#post-id: 5681-09-17
#original-date: 14.02.2016 Sun
#original-time: 9:17 AM
#original-day:  5681
#original-host: WinXP Home SP3 (Build 2600)

Шли годы, а ололо-восьмибитные-анси-шманси всё ещё бредили UTF-8 и прочими юникодами, не желая знать, что в NT испокон веков используется UTF-16.

http://juick.com/Strephil/2820795

#upd: Мне тут подсказывают, что в NT используется не UTF-16, а UCS-2, которая попроще UTF-16 и допускает только два байта на символ, но вот тут говорят, что начиная с Windows 2000 какие-то костыли приделаны.

https://msdn.microsoft.com/en-us/library/windows/desktop/dd374069%28v=vs.85%29.aspx

А ещё я видела на том же MSDN что-то про установку текущей кодовой страницы для процесса в UTF-8, ну тоесть чтобы в ANSI API использовался именно UTF-8 вместо какого-нибудь windows-1251. Надо будет поиграться.

Кажись, описано тут:

https://msdn.microsoft.com/en-us/library/windows/desktop/dd317752%28v=vs.85%29.aspx