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


Функция NdisReadConfiguration (ndis.h)

Функция NdisReadConfiguration возвращает значение именованной записи указанного типа из реестра, учитывая дескриптор открытого раздела реестра. Эта функция должна вызываться последовательно в отношении самой себя и функции NdisWriteConfigur ation.

Синтаксис

void NdisReadConfiguration(
  [out] PNDIS_STATUS                  Status,
  [out] PNDIS_CONFIGURATION_PARAMETER *ParameterValue,
  [in]  NDIS_HANDLE                   ConfigurationHandle,
  [in]  PNDIS_STRING                  Keyword,
  [in]  NDIS_PARAMETER_TYPE           ParameterType
);

Параметры

[out] Status

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

Ценность Значение
NDIS_STATUS_SUCCESS
Буфер в ParameterValue содержит возвращаемые сведения о конфигурации.
NDIS_STATUS_RESOURCES
NDIS не удалось выделить ресурсы, как правило, достаточно памяти, чтобы вернуть запрошенные сведения.
NDIS_STATUS_FAILURE
Запрошенные сведения не удалось найти в открытом разделе реестра, указанном ConfigurationHandle.

[out] ParameterValue

Указатель на расположение памяти, в котором NDIS предоставляет указатель на объект NDIS_CONFIGURATION_PARAMETER структуру, если вызов NdisReadConfiguration выполнен успешно. NDIS выделяет память для NDIS_CONFIGURATION_PARAMETER структура.

[in] ConfigurationHandle

Дескриптор раздела реестра, возвращенный NdisOpenConfigurationEx, NdisOpenConfigurationKeyByIndexили функция NdisOpenConfigurationKeyByName.

[in] Keyword

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

Кроме того, указатель на указанный вызывающим NDIS_STRING_CONSTANT укажите одно из следующих предопределенных имен записей вместе с предопределенными значениями возвращаемых значений:

Предопределенное имя записи Предопределенные возвращаемые значения
ProcessorType
  • NdisProcessorX86
  • NdisProcessorAmd64
  • NdisProcessorIA64
  • NdisProcessorAlpha
Следующие возможности возможны только в том случае, если старый драйвер (предварительная версия NDIS 6.0):
  • NdisProcessorMips
  • NdisProcessorPpc
NdisVersion 0xMMMMMmm, где MMMM является основной версией и mmmm является дополнительным номером версии. Например, 0x00050000 указывает, что самая высокая версия NDIS, поддерживаемая системой, является основной версией 5, дополнительными версиями 0.

[in] ParameterType

Тип записи значения, указанной в качестве одного из значений перечисления NDIS_PARAMETER_TYPE. Этот параметр игнорируется в Windows NT и более поздних версиях.

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

Никакой

Замечания

В реестре конфигурации Windows 2000 и более поздних версий ключевое слово NDIS является синонимом имени записи значения. Такое имя представляет собой подсчитываемую последовательность символов Юникода, завершаемую NULL.

Каждый драйвер NDIS может настроить сведения о конфигурации в реестре для себя с помощью директивы AddReg в INF-файле. Например, драйвер протокола может хранить собственное имя в качестве записи с предварительно сформированным строковым значением, которое можно передать в вызовы функцию NdisRegisterProtocolDriver. Дополнительные сведения см. в разделах add-registry-sections in a Network INF File.

Каждый минипорт-драйвер также имеет связанные записи значений в реестре. Записи значений для любого конкретного драйвера минипорта могут быть зависимыми от устройства в природе. Например, драйвер мини-порта может иметь ключевые слова, такие как *FlowControl, *SpeedDuplex и *InterruptModeration. Значение, связанное с таким ключевым словом NDIS, может быть целым числом (типом ULONG) или строкой (NDIS_STRING типа). Например, набор возможных значений для записи *FlowControl может быть NdisParameterInteger значения 0, 1, 2 или 3 или эквиваленты в шестнадцатеричном виде, как значения NdisParameterHexInteger.

Буферы NdisReadConfiguration и копирует строку, предоставленную вызывающим объектом, по адресу Keyword и освобождает хранилище, выделяемое для этой копии, прежде чем он возвращает элемент управления вызывающему объекту. Память, выделенная для NDIS_CONFIGURATION_PARAMETER структура освобождается, когда драйвер освобождает ConfigurationHandle с функцией NdisCloseConfiguration. Вызывающий объект NdisReadConfiguration отвечает за освобождение буферизованной строки по ключевого слова.

Обратите внимание, что NDIS не проверяет значения, которые драйвер считывает из реестра. Вызывающий объект NdisReadConfiguration поэтому не должен делать никаких предположений об этих значениях и должен проверять каждое значение из реестра. Если вызывающий объект определяет, что значение выходит за пределы, вместо него следует использовать значение по умолчанию.

Дополнительные сведения о файлах установки и установки см. в обзоре установки устройств.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается для драйверов NDIS 6.0 и NDIS 5.1 (см. NdisReadConfiguration (NDIS 5.1)) в Windows Vista. Поддерживается для драйверов NDIS 5.1 (см. NdisReadConfiguration (NDIS 5.1)) в Windows XP.
целевая платформа Всеобщий
заголовка ndis.h (include Ndis.h)
библиотеки Ndis.lib
IRQL PASSIVE_LEVEL
правил соответствия DDI Irql_Miscellaneous_Function(ndis)

См. также

ANSI_STRING

NDIS_CONFIGURATION_PARAMETER

NDIS_PARAMETER_TYPE

NdisAnsiStringToUnicodeString

NdisCloseConfiguration

NdisFreeString

NdisInitAnsiString

NdisInitUnicodeString

NdisInitializeString

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName

NdisReadNetworkAddress

NdisUnicodeStringToAnsiString

NdisWriteConfiguration

UNICODE_STRING