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


функция обратного вызова 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), применяемых к поставщикам интерфейсов, см. в сетевых интерфейсов 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, применяемых к поставщикам интерфейсов, см. в разделе сетевых интерфейсов NDIS.

NDIS вызывает ProviderQueryObject в IRQL = PASSIVE_LEVEL.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается в NDIS 6.0 и более поздних версиях.
целевая платформа Виндоус
заголовка ndis.h (include Ndis.h)
IRQL PASSIVE_LEVEL

См. также

NdisIfRegisterInterface