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


макрос NetAddr_GetAddress (shellapi.h)

Указывает, соответствует ли сетевой адрес указанному типу и формату.

Синтаксис

HRESULT NetAddr_GetAddress(
             HWND hwnd,
  [in, out]  LPARAM pv
);

Параметры

hwnd

Дескриптор элемента управления сетевым адресом, который содержит адрес для проверки.

[in, out] pv

Указатель на структуру NC_ADDRESS для получения сведений о сетевом адресе в синтаксическом виде, если формат адреса и тип элемента управления, указанный hwnd , проверяются. Вызывающее приложение отвечает за выделение памяти для этой структуры.

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

Тип: HRESULT

Возвращает одно из следующих значений типа HRESULT:

  • E_INVALIDARG . Вызывающее приложение не удалось выделить структуру NC_ADDRESS .
  • ERROR_INSUFFICIENT_BUFFER . Буфер вне слишком мал, чтобы сохранить проанализированный сетевой адрес.
  • ERROR_INVALID_PARAMETER — строка сетевого адреса не указана.
  • ERROR_SUCCESS — операция была успешной.
  • S_FALSE — нет адреса в элементе управления сетевыми адресами для проверки.

Замечания

Используйте макрос NetAddr_GetAddress для проверки сетевого адреса в элементе управления сетевыми адресами в маске предустановленного сетевого адреса. Чтобы создать экземпляр, используйте класс msctls_netaddress , определенный в Shellapi.h. Вызовите InitNetworkAddressControl во время выполнения перед вызовом этого макроса. Это инициализирует общую библиотеку элементов управления, содержащую элемент управления сетевыми адресами.

Этот макрос получает строку сетевого адреса из элемента управления сетевым адресом, анализирует строку и проверяет, соответствует ли строка маске типа сетевого адреса. Если строка соответствует маске, функция возвращает S_OK и возвращает строку в синтаксическом виде вызывающему приложению (включая номер порта, длину префикса и другие сведения об адресе), используя структуру NC_ADDRESS , на которую указывает pv. Этот макрос возвращает E_INVALIDARG, если вызывающее приложение не выделяет структуру, на которую указывает pv.

Представления IP-адресов (IP-адресов) версии 4 и 6 (версии 4/v6) для служб и сетей, а также именованные интернет-адреса и службы с использованием формата DNS. Если строка сетевого адреса представляет именованное имя узла (DNS) или службу, значение, возвращаемое в элементе PrefixLengthNC_ADDRESS , равно нулю.

Задайте маску типа сетевого адреса с помощью макроса NetAddr_SetAllowType перед вызовом макроса NetAddr_GetAddress .

Требования

Требование Ценность
Минимальный поддерживаемый клиент Windows Vista [только классические приложения]
минимальный поддерживаемый сервер Windows Server 2008 [только классические приложения]
целевая платформа Виндоус
Заголовок shellapi.h

См. также

NetAddr_GetAllowType