Автор | Сообщение |
|
| Администратор
|
Пост N: 2350
Зарегистрирован: 23.05.05
|
|
Отправлено: 16.05.12 07:53. Заголовок: Чтение реестра
Имеется установленный 7-Zip. Надо прочитать параметр из реестра: HKEY_LOCAL_MACHINE\SOFTWARE\7-Zip\Path Для харбора вызываю: win_regRead( 'HKLM\SOFTWARE\7-Zip\Path' ) Для xHarbour: GetRegistry(, 'SOFTWARE\7-Zip', 'Path' ) Для win32 все нормально Для win64 с установленным 64-битным 7-Zip эти функции возвращают nil, Что интересно, если программы создают в реестре ветку в HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node То функции хаобора читают эти ветки, если не упоминать Wow6432Node А как можно прочесть параметры для 64-битных программ ?
|
|
|
Ответов - 2
[только новые]
|
|
|
| |
Пост N: 62
Зарегистрирован: 16.12.08
|
|
Отправлено: 16.05.12 11:12. Заголовок: для просмотра обоих ..
для просмотра обоих регистров нужно использовать флаги доступа KEY_WOW64_64KEY и KEY_WOW64_32KEY при открытии регистра: RegOpenKeyEx(hKeyParent, KeyName, 0, KEY_READ | KEY_WOW64_64KEY, &hKey); #if defined(_WIN64) #define CROSS_ACCESS KEY_WOW64_32KEY #else #define CROSS_ACCESS KEY_WOW64_64KEY ... RegOpenKeyEx(hKeyParent, KeyName, 0, KEY_READ | CROSS_ACCESS, &hKey);
|
|
|
|
| Администратор
|
Пост N: 2353
Зарегистрирован: 23.05.05
|
|
Отправлено: 18.05.12 16:32. Заголовок: Спасибо, это то, что..
Спасибо, это то, что нужно. Поскольку в функциях харбора работы с реестром на prg-уровне сейчас нет возможности задать флаги доступа, я добавил дополнительный параметр. Сегодня скину на SVN.
|
|
|
|