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


OID_CO_GET_ADDRESSES

OID_CO_GET_ADDRESSES OID используется клиентом для выполнения запроса к диспетчеру вызовов. Этот запрос выполняется в ответ на диспетчер вызовов, отправляющий OID_CO_ADDRESS_CHANGE клиенту. В ответ на этот запрос диспетчер вызовов отправляет клиенту список адресов, отформатированный как структура CO_ADDRESS_LIST, определенный следующим образом:

typedef struct _CO_ADDRESS_LIST {
    ULONG       NumberOfAddressesAvailable;
    ULONG       NumberOfAddresses;
    CO_ADDRESS  AddressList;
} CO_ADDRESS_LIST, *PCO_ADDRESS_LIST;

Члены этой структуры содержат следующие сведения:

NumberOfAddressesAvailable
Указывает максимальное количество адресов в списке адресов диспетчера вызовов. Независимо от фактического числа адресов, возвращаемых диспетчером вызовов клиенту в AddressList, размер буфера в AddressList всегда NumberOfAddressesAvailable умножен на размер адреса, который является фиксированным размером, определенным для диспетчера вызовов.

NumberOfAddresses
Указывает количество адресов, записанных диспетчером вызовов в AddressList.

AddressList
Адрес псевдонима форматируется как структура CO_ADDRESS, определенная следующим образом:

typedef struct _CO_ADDRESS {
    ULONG   AddressSize;
    UCHAR   Address[1];
} CO_ADDRESS, *PCO_ADDRESS;

Члены этой структуры содержат следующие сведения:

AddressSize
Задает размер структуры в байтах в адресе.

адрес
Задает массив переменной длины, содержащий список адресов. Формат адреса зависит от протокола сигналов, используемого диспетчером вызовов.

AddressList содержит сетевые адреса, по которым можно получить локальный узел. AddressList, возвращенный конкретному клиенту, содержит адреса, которые являются общими для всех клиентов, а также любые адреса, которые сам клиент добавил в список адресов диспетчера вызовов с OID_CO_ADD_ADDRESS.

Требования

версии: Windows Vista и более поздних версий заголовка: Ntddndis.h (include Ndis.h)