Форум: "WinAPI";
Текущий архив: 2003.12.16;
Скачать: [xml.tar.bz2];
ВнизОпять неприятности с HKEY_LOCAL_MACHINE Найти похожие ветки
← →
yaJohn (2003-10-21 18:06) [0]Задача проста. Есть приложение, ести инсталятор. Инсталятор запускается из под админа, приложение - PowerUser.
Инсталятор должен прописать в реестр настройки, которые должны быть доступны по чтению/записи для всех юзеров (у юзеров разные логоны, но все минимум PowerUser).
Инсталятор InstalShieldExpress. Все просто, все обычно, никаких экстремальных задач.
А теперь грабли.
Если инсталятор пишет в HKEY_CURRENT_USER, то для остальных юзеров эта информация есссссно, недоступна. Т.е. отпадает.
Ладно, переезжаем в HKEY_LOCAL_MACHINE. Инсталятор пишет под админом (назовоем "Admin"), все нормально. Но. Аппликейшн запускаемый из под другого аккаунта (назовоем "User") не находит ветку :( В регедите ветка видна и нормально читается. Более того.
Запускаем под новым аккаунтом все тот же инсталятор. Он честно находит инсталированный апликейшн и предлогает его любить/лечить/убить. Выбираем "убить". В регедите ветка исчезает. Теперь снова инсталируем (под "User"). Инсталируется, ветка есть и чудесно читается.
Мнэээ... Винда каким то образом определяет, под каким логоном была создана ветка в HKEY_LOCAL_MACHINE??? Я про такое не слышал....
Кроме того, все должно работать под W2K и XP.
Я уже долбал общественность вопросом по доступу к HKEY_LOCAL_MACHINE. Общественность радостно заявила, что у меня правов таких нет, надобно у виндов их выспросить. ИМХО усы и хвост - вот мои документы (регедит же видит, читает и пишет под темже логоном), но мне не спорить надо, а решение найти, поэтому права - так права, в каком разделе хелпа искать-то???
Буду признателен за любую подсказку как сии грабли обойти/поломать/перепрыгнуть. Заранее - сеньксы.
← →
Игорь Шевченко (2003-10-22 15:03) [1]
> Винда каким то образом определяет, под каким логоном была
> создана ветка в HKEY_LOCAL_MACHINE??? Я про такое не слышал....
Разумеется. Через права, котрые можно посмотреть в regedt32 (не путать с regedit)
← →
Nikolay M. (2003-10-22 17:22) [2]Может, TRegistry.Access поможет? По умолчанию он равен KEY_ALL_ACCESS.
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2003.12.16;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c