Составители:
dwName = sizeof( szBuff );
do
{
lResult = RegEnumKey( m_hRegKey, --dwIndex, (LPTSTR)szBuff, dwName );
Так как нумерация подразделов начинается с нуля, значение переменной
dwIndex перед его использованием следует декрементировать, т.е. необходимо
запросить пять подразделов с индексами 4, 3, 2, 1 и 0.
Посредством функции RegEnumKey можно осуществить циклический
запрос имен подразделов. Каждый раз при вызове функции RegEnumKey со
следующим значением номера dwIndex в переменной lpName возвращается имя
другой подстроки. Когда список подстрок заканчивается, функция
RegEnumKey выдает код ошибки ERROR_NO_MORE_ITEMS,
свидетельствующей о том, что подразделов больше нет.
Порядок, в котором эти элементы возвращаются, не имеет значения. До
тех пор пока не задан индекс, для которого подраздела с данным номером нет,
функция будет возвращать значение ERROR_SUCCESS,
а в массиве lpName
будет храниться имя соответствующего подраздела. При получении любого
результирующего значения, кроме ERROR_SUCCESS
и
ERROR_NO_MORE_ITEMS,
должно выводиться сообщение об ошибке.
if(lResult != ERROR_SUCCESS && lResult !=
ERROR_NO_MORE_ITEMS )
ReportError ( lResult );
else
if( lResult == ERROR_SUCCESS )
{
HKEY hKeyItem;
ULONG ulSize, ulType;
int nIndex;
m_csNameEntry = szBuff;
Если был получен результат ERROR_SUCCESS,
строку из переменной
szBuff необходимо передать в переменную m_csNameEntry, являющуюся
членом класса CString. Переменная szBuff сразу же будет использоваться
повторно, но содержащееся в ней значение не должно потеряться.
Далее снова вызвать функцию RegCreateKey. На этот раз для
идентификации открываемого подраздела используется дескриптор корневого
раздела m_hRegKey и строковое значение, которое содержится в переменной
szBuff. В результате получен дескриптор hKeyItem, идентифицирующий
открытый подраздел.
28
dwName = sizeof( szBuff );
do
{
lResult = RegEnumKey( m_hRegKey, --dwIndex, (LPTSTR)szBuff, dwName );
Так как нумерация подразделов начинается с нуля, значение переменной
dwIndex перед его использованием следует декрементировать, т.е. необходимо
запросить пять подразделов с индексами 4, 3, 2, 1 и 0.
Посредством функции RegEnumKey можно осуществить циклический
запрос имен подразделов. Каждый раз при вызове функции RegEnumKey со
следующим значением номера dwIndex в переменной lpName возвращается имя
другой подстроки. Когда список подстрок заканчивается, функция
RegEnumKey выдает код ошибки ERROR_NO_MORE_ITEMS,
свидетельствующей о том, что подразделов больше нет.
Порядок, в котором эти элементы возвращаются, не имеет значения. До
тех пор пока не задан индекс, для которого подраздела с данным номером нет,
функция будет возвращать значение ERROR_SUCCESS, а в массиве lpName
будет храниться имя соответствующего подраздела. При получении любого
результирующего значения, кроме ERROR_SUCCESS и
ERROR_NO_MORE_ITEMS, должно выводиться сообщение об ошибке.
if(lResult != ERROR_SUCCESS && lResult !=
ERROR_NO_MORE_ITEMS )
ReportError ( lResult );
else
if( lResult == ERROR_SUCCESS )
{
HKEY hKeyItem;
ULONG ulSize, ulType;
int nIndex;
m_csNameEntry = szBuff;
Если был получен результат ERROR_SUCCESS, строку из переменной
szBuff необходимо передать в переменную m_csNameEntry, являющуюся
членом класса CString. Переменная szBuff сразу же будет использоваться
повторно, но содержащееся в ней значение не должно потеряться.
Далее снова вызвать функцию RegCreateKey. На этот раз для
идентификации открываемого подраздела используется дескриптор корневого
раздела m_hRegKey и строковое значение, которое содержится в переменной
szBuff. В результате получен дескриптор hKeyItem, идентифицирующий
открытый подраздел.
28
Страницы
- « первая
- ‹ предыдущая
- …
- 26
- 27
- 28
- 29
- 30
- …
- следующая ›
- последняя »
