[C] Unicode через **argv в Windows

программирование windows си

С Юникодом раньше не работал, с наскоку проблему решить не удалось. Посоветуйте, пожалуйста.
Если через параметры командной строки программа, работающая в русскоязычной Windows, принимает Юникодную строку с нерусскими-неанглийскими литерами типа: "Piekary Śląskie zgarniacz radialny zgrzebłowy fi26" (это имя файла), то какой из приведенных ниже способов поможет её корректно обработать:
* mbstowcs() из mingw
* _snwprintf() из mingw
* MultiByteToWideChar() из <windows.h>
* iconv() из libiconv
* нет никаких шансов.

Примечание:
Спасибо, всё получилось. Мой пример: http://likecode.ru/code/52721ea95c41f/
Ответы:
CommandLineToArgvW. Восстановить изначальную Unicode строку из char** argv уже не выйдет никакими средствами.


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.