![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| scroollocker |
|
||||
![]() .{--}. Профиль Группа: Участник Сообщений: 40 Регистрация: 17.9.2010 Репутация: нет Всего: нет |
Всем привет!
Столкнулся с проблемой, связанной с реестром Windows x64. У меня есть файл реестра akk.reg:
Я добавляю этот код в реестр, запусканием файла. Теперь мне нужно его считать из реестра. Открываю с помощью:
На 32битной Windows все работает, на 64 не хочет читать данные. Возникает вопрос, как мне прочитать данные, которые занесены в реестр с помощью reg-файла? Где они хранятся? в 32битной ветке, или в 64... В общем путаница у меня |
||||
|
|||||
| DarthTon |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 106 Регистрация: 7.2.2009 Репутация: 5 Всего: 6 |
Полагаю что-то не так с вашим вызовом RegQueryValueEx, т.к. у меня всё работает. При использовании reg файла через контекстное меню, запись по-умолчанию добавляется в 64-битную ветку.
Это сообщение отредактировал(а) DarthTon - 27.6.2013, 12:07 |
|||
|
||||
| scroollocker |
|
||||
![]() .{--}. Профиль Группа: Участник Сообщений: 40 Регистрация: 17.9.2010 Репутация: нет Всего: нет |
Компилирую программку в 32 винде.
Использую грубо такой код:
Пробовал делать
Использовать вместо KEY_READ - KEY_ALL_ACCESS... А какое значение прописано в KEY_WOW64_64KEY? может еще дело в нем Это сообщение отредактировал(а) scroollocker - 27.6.2013, 12:37 |
||||
|
|||||
| DarthTon |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 106 Регистрация: 7.2.2009 Репутация: 5 Всего: 6 |
Строки в реестре хранятся в юникоде, используйте wchar_t для получения строковых данных.
А вообще, что конкретно не работает? Что возвращает функция RegQueryValueEx? |
|||
|
||||
| scroollocker |
|
|||
![]() .{--}. Профиль Группа: Участник Сообщений: 40 Регистрация: 17.9.2010 Репутация: нет Всего: нет |
Все решилось заменой RegCreateKeyEx на RegOpenKeyEx. Сразу все прочитало, все заработало. Как я понял, он создавал ключ в ветке реестра для 32 битных программ и оттуда читал, хоть и стоял флаг KEY_WOW64_64KEY, а там пусто. Хотя может я неправильно и понял
DarthTon Спасибо вам, за надежду, что код у вас заработал. =) Без этой надежды не стал бы эксперементировать Это сообщение отредактировал(а) scroollocker - 28.6.2013, 21:20 |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |