Можно ли заставить вызовы Windows API всегда возвращать строки на английском языке sh (en-us)? - PullRequest
0 голосов
/ 09 июля 2020

Я работаю над приложением, которое собирает различную системную информацию. Одна вещь, которую я собираю, - это список служб и их описания, возвращенные вызовом QueryServiceConfig2.

При запуске в системе, настроенной на языке, отличном от английского sh, приложение возвращает имена и описания служб в системный язык по умолчанию. Это имеет смысл, но я хотел бы знать, можно ли заставить вызовы API возвращать описания на английском языке sh при условии, что установлен соответствующий языковой пакет.

В идеале любое решение должно быть совместимым с XP и выше. Я уже пробовал использовать функцию SetThreadLocale как с en-us (0x0409), так и с LOCALE_INVARIANT, но это не дало никакого эффекта.

Я также видел функцию SetProcessPreferredUILanguages, но мое приложение не является приложением GUI и также эта функция доступна только на Windows 7 и выше.

После нескольких дней поиска и тестов я в растерянности. Возможно ли то, чего я пытаюсь достичь?

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