Я работаю с очень старым установщиком, который может читать записи реестра, но испытывает затруднения (сложные) при выполнении API Windows.
Я пытаюсь определить, находится ли установленный на нем компьютер в Австралии.
Есть идеи?
Из моего тестирования и страницы MSDN ниже, это будет работать:
HKEY_CURRENT_USER \ Панель управления \ International \ sCountry = "Австралия"
Это соответствует настройке в настройках региона («Выберите элемент, соответствующий его« предпочтениям ».
http://support.microsoft.com/kb/102978
Преимущество заключается также в возможности чтения из учетной записи без прав администратора.
Этот ключ:
HKEY_USERS.DEFAULT \ Раскладка клавиатуры \ Предварительная загрузка
устанавливает язык по умолчанию для экрана входа в систему
Здесь перечислены разные коды стран:
http://www.windowsitpro.com/Article/ArticleID/14867/14867.html
В дополнение: «HKEY_CURRENT_USER \ Control Panel \ International \ sCountry» используется только для формата записи. Вы также можете использовать. "HKEY_CURRENT_USER \ Control Panel \ International \ Locale" и связать его с таблицей.
Кросс-таблица обозначений:
https://msdn.microsoft.com/en-us/library/ee825488(v=cs.20).aspx https://www.science.co.il/language/Locale-codes.php
Текущее местоположение хранится в "HKEY_CURRENT_USER \ Панель управления \ International \ Geo \ Nation"
Кросс-таблица местоположений:
https://msdn.microsoft.com/en-us/library/windows/desktop/dd374073%28v=vs.85%29.aspx?f=255&MSPPError=-2147217396