Функция NdisOpenConfigurationKeyByIndex (ndis.h)
Функция NdisOpenConfigurationKeyByIndex открывает подраздел данного открытого раздела реестра, который определяется дескриптором, предоставленным вызывающим пользователем.
Синтаксис
void NdisOpenConfigurationKeyByIndex(
[out] PNDIS_STATUS Status,
[in] NDIS_HANDLE ConfigurationHandle,
[in] ULONG Index,
[out] PNDIS_STRING KeyName,
[out] PNDIS_HANDLE KeyHandle
);
Параметры
[out] Status
Указатель на переменную, предоставленную вызывающей стороны, в которой эта функция возвращает состояние попытки открыть указанный раздел реестра. Возможные возвращаемые значения:
NDIS_STATUS_SUCCESS
NDIS инициализировал доступ к подразделу, указанному в keyName и Index .
NDIS_STATUS_FAILURE
Не удалось открыть ключ.
[in] ConfigurationHandle
Дескриптор раздела реестра, для которого необходимо открыть подраздел. Как правило, ConfigurationHandle возвращаетсяФункция NdisOpenConfigurationEx.
[in] Index
Индекс открываемого подраздела. Это отсчитываемое от нуля значение указывает, что подраздел должен быть открыт под ключом, который уже открыт с помощью ConfigurationHandle .
[out] KeyName
Указатель на тип NDIS_STRING, содержащий буфер, предоставленный вызывающим объектом, в котором функция возвращает подсчитываемую строку в системной кодировке по умолчанию. Эта строка указывает имя открытого подраздела в случае успешного вызова. Для драйверов Microsoft Windows 2000 и более поздних версий эта строка содержит символы Юникода. То есть для Windows 2000 и более поздних версий NDIS определяет тип NDIS_STRING как тип UNICODE_STRING .
[out] KeyHandle
Указатель на переменную, предоставленную вызывающим, в которой эта функция возвращает дескриптор открытого подраздела в случае успешного вызова.
Возвращаемое значение
None
Remarks
NdisOpenConfigurationKeyByIndex позволяет драйверу получать доступ к сведениям о конфигурации, которые его файл установки хранится в подразделе реестра.
Обратите внимание, что ConfigurationHandle , переданный в NdisOpenConfigurationKeyByIndex , может быть любым допустимым дескриптором раздела реестра, уже открытого вызывающим элементом.
NdisOpenConfigurationKeyByIndex возвращает сведения о конфигурации для подразделов относительно допустимых значений.
ConfigurationHandle .
Так как NdisOpenConfigurationKeyByIndex ссылается на подраздел через индекс, драйверу не нужно указывать имена подразделов. Драйвер может выполнить виртуализацию по набору подразделов реестра, многократно вызывая NdisOpenConfigurationKeyIndex после увеличения индекса до тех пор, пока функция не вернет NDIS_STATUS_FAILURE, указывая тем самым, что открываемых подразделов больше нет.
После использования и, возможно, изменения сведений о конфигурации, хранящихся в реестре, драйвер должен вызвать функцию NdisCloseConfiguration , чтобы освободить дескриптор, полученный из NdisOpenConfigurationKeyByIndex. NdisCloseConfiguration также освобождает любое временное хранилище, выделенное NDIS для вызовов драйвера к функциям NdisReadConfiguration, NdisReadNetworkAddress или NdisWriteConfiguration с subKeyHandle , возвращенным NdisOpenConfigurationKeyByIndex .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Поддерживается для драйверов NDIS 6.0 и NDIS 5.1 (см. раздел NdisOpenConfigurationKeyByIndex (NDIS 5.1)) в Windows Vista. Поддерживается для драйверов NDIS 5.1 (см. раздел NdisOpenConfigurationKeyByIndex (NDIS 5.1)) в Windows XP. |
Целевая платформа | Универсальное |
Верхняя часть | ndis.h (включая Ndis.h) |
Библиотека | Ndis.lib |
IRQL | < DISPATCH_LEVEL |
Правила соответствия DDI | Irql_Miscellaneous_Function(ndis) |