Konwersja szerokiego łańcucha znaków na małe litery w C ++

Jak przekonwertować ciąg wchar_t z dużych liter na małe litery w C ++?

Ciąg zawiera mieszankę japońskich, chińskich, niemieckich i greckich znaków.

Myślałem o użyciu holownika ...

http://msdn.microsoft.com/en-us/library/8h19t214%28VS.80%29.aspx

.. ale dokumentacja mówi, że:

Konwersja przypadku towlower jest specyficzna dla ustawień regionalnych. Tylko znaki istotne dla bieżących ustawień narodowych są zmieniane na wypadek.

Edytuj: Może powinienem opisać to, co robię. Otrzymuję zapytanie użytkownika Unicode od użytkownika. Oryginalnie jest kodowany w UTF-8, ale konwertuję go na widechar (mogę się mylić co do słownictwa). Mój debugger (VS2008) poprawnie pokazuje znaki japońskie, niemieckie, itp. W „szybkim zegarku zmiennej”. Muszę przejść przez inny zestaw danych w Unicode i znaleźć pasujące frazy wyszukiwania. Chociaż nie jest to dla mnie problem, gdy w wyszukiwaniu rozróżniana jest wielkość liter, jest to bardziej problematyczne w przypadku, gdy nie uwzględnia się wielkości liter. Moim (być może naiwnym) podejściem do rozwiązania problemu byłoby przekształcenie wszystkich danych wejściowych i danych wyjściowych w małe litery, a następnie porównanie.

questionAnswers(4)

yourAnswerToTheQuestion