Как установить локаль для процесса, запускаемого CreateProcess () - PullRequest
2 голосов
/ 07 января 2009

При запуске процесса с CreateProcessW() возможно ли создать процесс с другой локалью / кодовой страницей MBCP, отличной от той, которая настроена как общесистемная кодовая страница по умолчанию? В целевом процессе это должно иметь тот же эффект, что и вызов _setmbcp().

Целевой процесс не поддерживает Unicode и использует обычную точку входа main(int argc, char **argv). Я хотел бы иметь возможность выбрать кодовую страницу, в которую преобразуются аргументы Unicode, переданные в CreateProcessW(), чтобы отличаться от кодовой страницы системы по умолчанию для программ, не поддерживающих Unicode.

Ответы [ 2 ]

2 голосов
/ 25 мая 2010

Я только что наткнулся на утилиту Microsoft: AppLocale , которая, кажется, решает только эту задачу ...

1 голос
/ 07 января 2009

Я считаю (и прошло много времени с тех пор, как я должен был это знать), дочерний процесс наследует языковой стандарт родительского процесса (или потока в нем) - вы пытались переключить языковой стандарт потока, запуская свой процесс ( и обратно)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...