No-name
Ребят, чёт я никак не могу решить проблему:
Есть небольшая программа на плюсах, в которую приходит слово на кириллице.
Сама программа вертится вокруг winapi и получает имена пользователей винды. У имён тип LPWSTR
Нужно сравнить строку которая приходит и каждое из имён и далее если есть совпадение, то что то там как то там действовать
Никак не могу разобраться с кодировками и как сравнить. Пробовал привести LPWSTR к wstring, а далее к string через codecvt и уже такую строку сравнивать с тем что приходит, но не особо вышло. Пробовал обратное - приводил строку которая приходит к wstring, но программа падает
главное понять, что в винде WSTR это полноценный юникод (UTF-16) а LPWST ипрсто std::string это в лучшем случае cp1251, а если юзер криво устaновил винду(коих мног) то вообще ASCII.
Есть еще вариант когда это таки UTF-8 в обычной стринге, но это не дефолт.
Советую вникнуть в это все, а не рваться в бой