Составители:
Рубрика:
аргументом, необходимым для любого запроса, является hKey, задающий раздел
реестра, информацию о котором вы хотите получить.
Таблица 5.4.
Тип данных Аргумент Описание
HKEY hKey
Дескриптор запрашиваемого раздела (обяза-
тельный аргумент)
LPTSTR lpClass
Строка описания класса, связанного с данным
разделом
LPDWORD lpcbClass
Размер строкового буфера класса; должен за-
даваться вместе с аргументом lpClass
LPDWORD lpReserved
Зарезервирован; всегда должен иметь значение
NULL
LPDWORD lpcSubKeys
Количество подразделов, которые находятся
в запрашиваемом разделе
LPDWORD lpcbMaxSubKeyLen Размер самого длинного имени подраздела.
LPDWORD lpcbMaxClassLen
Размер самой длинной строки описания для
классов, связанных с подразделами
LPDWORD lpcValues
Количество параметров, содержащихся
в данном разделе
LPDWORD lpcbMaxValueNameLen
Размер самого длинного из имен параметров,
содержащихся в данном разделе
LPDWORD lpcbMaxValueLen
Наибольшая длина параметра среди парамет-
ров, содержащихся в данном разделе
LPDWORD lpcbSecurityDescriptor
Длина дескриптора безопасности (только для
Windows NT)
PFILETIME lpftLastWriteTime Последнее время записи (только для Windows NT)
Посредством функции RegEnumKey() можно осуществить циклический за-
прос имен подразделов. Определяется указанная функция следующим образом:
LONG RegEnumKey( HKEX hKey, // дескриптор запрашиваемого раздела
DWORD dwIndex, // номер запрашиваемого подраздела
LPTSTR lpName, // адрес буфера для имени подраздела
DWORD cbName, // размер буфера для имени подраздела);…
Каждый раз при вызове функции RegEnumKey() со следующим значением
номера dwIndex в переменной lpName возвращается имя другой подстроки.
Когда список подстрок заканчивается, функция RegEnumKey()
выдает код ошибки ERROR_NO_MORE_ITEMS,
свидетельствующей о том,
что подразделов больше нет. Порядок, в котором эти элементы возвращаются,
не имеет значения. До тех пор пока мы не зададим индекс, для которого нет
подраздела с таким номером, функция будет возвращать значение ER-
ROR_SUCCESS,
а в массиве lpName будет храниться имя соответствующего
подраздела. При получении любого результирующего значения, кроме ER-
ROR_SUCCESS
и ERROR_NO_MORE_ITEMS, должно выводиться сообщение
об ошибке.
76
аргументом, необходимым для любого запроса, является hKey, задающий раздел
реестра, информацию о котором вы хотите получить.
Таблица 5.4.
Тип данных Аргумент Описание
Дескриптор запрашиваемого раздела (обяза-
HKEY hKey
тельный аргумент)
Строка описания класса, связанного с данным
LPTSTR lpClass
разделом
Размер строкового буфера класса; должен за-
LPDWORD lpcbClass
даваться вместе с аргументом lpClass
Зарезервирован; всегда должен иметь значение
LPDWORD lpReserved
NULL
Количество подразделов, которые находятся
LPDWORD lpcSubKeys
в запрашиваемом разделе
LPDWORD lpcbMaxSubKeyLen Размер самого длинного имени подраздела.
Размер самой длинной строки описания для
LPDWORD lpcbMaxClassLen
классов, связанных с подразделами
Количество параметров, содержащихся
LPDWORD lpcValues
в данном разделе
Размер самого длинного из имен параметров,
LPDWORD lpcbMaxValueNameLen
содержащихся в данном разделе
Наибольшая длина параметра среди парамет-
LPDWORD lpcbMaxValueLen
ров, содержащихся в данном разделе
Длина дескриптора безопасности (только для
LPDWORD lpcbSecurityDescriptor
Windows NT)
PFILETIME lpftLastWriteTime Последнее время записи (только для Windows NT)
Посредством функции RegEnumKey() можно осуществить циклический за-
прос имен подразделов. Определяется указанная функция следующим образом:
LONG RegEnumKey( HKEX hKey, // дескриптор запрашиваемого раздела
DWORD dwIndex, // номер запрашиваемого подраздела
LPTSTR lpName, // адрес буфера для имени подраздела
DWORD cbName, // размер буфера для имени подраздела);…
Каждый раз при вызове функции RegEnumKey() со следующим значением
номера dwIndex в переменной lpName возвращается имя другой подстроки.
Когда список подстрок заканчивается, функция RegEnumKey()
выдает код ошибки ERROR_NO_MORE_ITEMS, свидетельствующей о том,
что подразделов больше нет. Порядок, в котором эти элементы возвращаются,
не имеет значения. До тех пор пока мы не зададим индекс, для которого нет
подраздела с таким номером, функция будет возвращать значение ER-
ROR_SUCCESS, а в массиве lpName будет храниться имя соответствующего
подраздела. При получении любого результирующего значения, кроме ER-
ROR_SUCCESS и ERROR_NO_MORE_ITEMS, должно выводиться сообщение
об ошибке.
76
Страницы
- « первая
- ‹ предыдущая
- …
- 74
- 75
- 76
- 77
- 78
- …
- следующая ›
- последняя »
