![]() |
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]() ![]() ![]() |
|
G0L1a7h |
|
|||
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 1.3.2008 Репутация: нет Всего: нет |
Здравствуйте! Допустил ошибку в программе, никак не найду где..
Суть программы: Перечисляет значения ключа , сравнивает с другим , если такое значение уже есть возвращаем FALSE, если нет создаем , возвращаем TRUE.. Так вот программа всегда возвращает TRUE.. Никак не найду ошибку, уже много чего пробовал...
Надеюсь на помощь. |
|||
|
||||
Rififi |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: 2 Всего: 36 |
внимательно читаем msdn про четвёртый параметр функции RegEnumValue
lpcchValueName A pointer to a variable that specifies the size of the buffer pointed to by the lpValueName parameter, in characters. When the function returns, the variable receives the number of characters stored in the buffer, not including the terminating null character ps. не говоря уже о том, что при while (0) тело цикла ни разу не выполнится Это сообщение отредактировал(а) Rififi - 14.7.2008, 23:16 |
|||
|
||||
G0L1a7h |
|
|||
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 1.3.2008 Репутация: нет Всего: нет |
Спасибо Rififi, те ошибки по исправлял, Но теперь выдает только 2 первых значения :\ Даже не знаю в чем дело..Надеюсь на помощь.
Это сообщение отредактировал(а) G0L1a7h - 15.7.2008, 14:10 |
|||
|
||||
Rififi |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1254 Регистрация: 9.3.2008 Репутация: 2 Всего: 36 |
у тебя размер буфера, передаваемый параметром dwValue уменьшается с каждым вызовом!
вот его и хватает только на 2 раза. Объясняю: вначале тыпередаешь указатель на буфер и укзатель на размер буфера. Если буфер слишком маленький для результата, то функция вернёт ошибку ERROR_MORE_DATA. если рамер буфера достаточен, то функция заполняет буфер и перезаписывает в dwValue новый размер буфера. Для следующего цикла итерации в функцию снова нужно передать первоначальный размер. |
|||
|
||||
G0L1a7h |
|
|||
Новичок Профиль Группа: Участник Сообщений: 45 Регистрация: 1.3.2008 Репутация: нет Всего: нет |
Rififi , Большое Спасибо за помощь! (:
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "C/C++: Системное программирование и WinAPI" | |
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |