| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Visual C++/MFC/WTL > RegEnumKey |
| Автор: sdjhsjhd 7.12.2008, 10:58 | ||||||
| Программа, считывает параметр DisplayName из реестра у каждого раздела в папке HKEY_LOCAL_MACHINE SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\ и добавляет их в список
Впринципе все раюотает, но есть одно НО: RegEnumKey пропускает некоторые(большую часть)папок, т.е. не возвращает ERROR_SUCCESS. но это только в цикле! а если сделать без цикла(вручную, подставить числа допустим он не видит второй раздел(1) раздел в SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\, а если вручную написать
то без проблем возвращает название (folder) Подскажите? |
| Автор: Rififi 7.12.2008, 13:10 |
| сделай так, чтобы вызов RegEnumKey был только 1 раз на каждой итерации цикла. |
| Автор: sdjhsjhd 7.12.2008, 13:35 | ||
Сделал, и dwordsize переменную заменил на 255(просто число), стало намного лучше, но глюки остались. на этот раз (выесненнго опытным путем)) через брейкпоинт) глюки в
тоесть до этого со значениями все нормально, а она уже некоторые(неслколько всего) выдает неправильные. т.е. в regedit значение DisplayName одно, а RegQueryValueEx выдает другое(значение предидущего каталога). В чем ошибка? |
| Автор: Rififi 7.12.2008, 14:07 |
не читаешь документацию как вызывать функцию RegQueryValueEx правильно. |