функция обратного вызова IF_QUERY_OBJECT (ndis.h)

Функция ProviderQueryObject извлекает сведения о сетевом интерфейсе.

Синтаксис

IF_QUERY_OBJECT IfQueryObject;

NDIS_STATUS() IfQueryObject(
  [in]      NDIS_HANDLE ProviderIfContext,
  [in]      NET_IF_OBJECT_ID ObjectId,
  [in, out] PULONG pOutputBufferLength,
  [out]     PVOID pOutputBuffer
)
{...}

Параметры

[in] ProviderIfContext

Дескриптор, определяющий контекстную область поставщика интерфейса для интерфейса. Поставщик интерфейса передал этот дескриптор в NDIS в вызовеФункция NdisIfRegisterInterface.

[in] ObjectId

Идентификатор объекта , который является целевым объектом запроса. Список идентификаторов объектов (OID), которые применяются к поставщикам интерфейсов, см. в разделе OID сетевого интерфейса NDIS.

[in, out] pOutputBufferLength

Указатель на переменную, предоставляемую NDIS, в которой NDIS предоставляет длину выходного буфера. ProviderQueryObject записывает длину данных, помещенных в выходной буфер.

[out] pOutputBuffer

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

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

ProviderQueryObject возвращает одно из следующих значений состояния:

Код возврата Описание
NDIS_STATUS_SUCCESS
Операция выполнена успешно.
NDIS_STATUS_RESOURCES
Операция завершилась сбоем из-за нехватки ресурсов.
NDIS_STATUS_INVALID_PARAMETER
Вызов завершился сбоем, так как некоторые входные параметры были недопустимыми.
NDIS_STATUS_Xxx
Сбой вызова по какой-либо другой причине. Эта функция может распространять коды ошибок из вызываемой функции или создавать соответствующий код ошибки.

Комментарии

NDIS вызывает функцию ProviderQueryObject поставщика сетевого интерфейса для получения сведений об интерфейсе, зарегистрированном поставщиком. Список идентификаторов OID, применимых к поставщикам интерфейсов, см. в разделе OID сетевого интерфейса NDIS.

NDIS вызывает ProviderQueryObject по адресу IRQL = PASSIVE_LEVEL.

Требования

Требование Значение
Минимальная версия клиента Поддерживается в NDIS 6.0 и более поздних версиях.
Целевая платформа Windows
Header ndis.h (включая Ndis.h)
IRQL PASSIVE_LEVEL

См. также раздел

NdisIfRegisterInterface