Поделиться через


Функция GetGeoInfoEx (winnls.h)

Извлекает сведения о географическом расположении, которое вы указываете с помощью двухбуквного кода Международной организации по стандартизации (ISO) 3166-1 или числового кода серии M, номер 49 (M.49) Организации Объединенных Наций (ООН).

Синтаксис

int GetGeoInfoEx(
  [in]            PWSTR   location,
  [in]            GEOTYPE geoType,
  [out, optional] PWSTR   geoData,
  [in]            int     geoDataCount
);

Параметры

[in] location

Двухбуквенный код ISO 3166-1 или числовой код UN M.49 для географического расположения, для которого требуется получить информацию. Чтобы получить коды, доступные в операционной системе, вызовите EnumSystemGeoNames.

[in] geoType

Тип сведений, которые требуется получить. Возможные значения определяются перечислением SYSGEOTYPE . Следующие значения перечисления SYSGEOTYPE не следует использовать с GetGeoInfoEx:

  • GEO_ID

    Данное значение предоставляется для обеспечения обратной совместимости. Не используйте это значение в новых приложениях, а GEO_NAME .

  • GEO_LCID

    Это значение не поддерживается для функции GetGeoInfoEx .

  • GEO_NATION

    Это значение не поддерживается для функции GetGeoInfoEx .

  • GEO_RFC1766

    Это значение не поддерживается для функции GetGeoInfoEx .

[out, optional] geoData

Указатель на буфер, в который GetGeoInfoEx должен записывать запрошенные сведения.

[in] geoDataCount

Размер буфера, на который указывает параметр GeoData в символах. Задайте для этого параметра значение 0, чтобы указать, что функция должна возвращать только размер буфера, необходимый для хранения запрошенных сведений, без записи запрошенной информации в буфер.

Возвращаемое значение

Количество байтов сведений о географическом расположении, которые функция записала в выходной буфер. Если значение geoDataCount равно 0, функция возвращает размер буфера, необходимый для хранения информации, без записи информации в буфер.

0 указывает, что функция не выполнена. Чтобы получить расширенные сведения об ошибке, вызовите Метод GetLastError, который может вернуть один из следующих кодов ошибок:

Код возврата Описание
ERROR_INSUFFICIENT_BUFFER
Указанный размер буфера не был достаточно велик или ему было неправильно задано значение NULL.
ERROR_INVALID_PARAMETER
Недопустимое значение параметра.
ERROR_INVALID_FLAGS
Значения, указанные для флагов, были недопустимыми.

Комментарии

Сведения о двухбуквенном коде ISO 3166-1 см. в разделе Коды стран — ISO 3166. Сведения о числовых кодах UN M.49 см. в разделе Стандартные коды стран или областей для статистического использования (M49).

Требования

Требование Значение
Минимальная версия клиента Windows 10, версия 1709 [только классические приложения]
Минимальная версия сервера Windows Server 2016 [только классические приложения]
Целевая платформа Windows
Header winnls.h
Библиотека Kernel32.lib
DLL Kernel32.dll

См. также

EnumSystemGeoNames

GetGeoInfo

Поддержка национальных языков

Функции поддержки национальных языков

SYSGEOTYPE