Я работаю над приложением, которое собирает различную системную информацию. Одна вещь, которую я собираю, - это список служб и их описания, возвращенные вызовом QueryServiceConfig2.
При запуске в системе, настроенной на языке, отличном от английского sh, приложение возвращает имена и описания служб в системный язык по умолчанию. Это имеет смысл, но я хотел бы знать, можно ли заставить вызовы API возвращать описания на английском языке sh при условии, что установлен соответствующий языковой пакет.
В идеале любое решение должно быть совместимым с XP и выше. Я уже пробовал использовать функцию SetThreadLocale как с en-us (0x0409), так и с LOCALE_INVARIANT, но это не дало никакого эффекта.
Я также видел функцию SetProcessPreferredUILanguages, но мое приложение не является приложением GUI и также эта функция доступна только на Windows 7 и выше.
После нескольких дней поиска и тестов я в растерянности. Возможно ли то, чего я пытаюсь достичь?