[различия vista/хр] Ветка Software реестра

kill-still

из паскаль скрипта (инно сетап) всё нормально обрабатывается, пишет/читает из
HKEY_LOCAL_MACHINE\SOFTWARE\***\
из дельфей он продолжает читать оттуда же, а пишет в
HKEY_CURRENT_USER\Software\Classes\VirtualStore\MACHINE\SOFTWARE\***\
и потом уже когда читает, то считает что это одно и тоже (объединяет их).
как его заставить брутфорсом писать куда надо, ибо из паскаль скрипта подцеплять Classes\VirtualStore\MACHINE\SOFTWARE он отказывается.

karkar

Чтобы писать в первое место, надо иметь права админа. Когда работает инсталлер от инносетап, у него такие права есть. Если нужно, чтобы своя прога тоже писала, запрашивай эти права. Кажися, как минимум это можно сделать через манифест проги.

klyv

как минимум это можно сделать через манифест проги
а разве не только через манифест?

kill-still

Что нужно сделать, чтобы не тыкать правой кнопкой юзверю?

klyv

:shocked: куда?

kill-still

по эзешнику
rightclick -> запуск от имени администратора

agaaaa

В настройках файла галочку поставить, чтобы по умолчанию всегда от админа запускался

kill-still

А программно никак? я заебусь каждую сборку ручками ставить галку...

klyv

в манифест

karkar

Самое простое - прикрутить нужный манифест.
http://en.wikipedia.org/wiki/User_Account_Control
Еще есть программные извраты:
http://msdn.microsoft.com/en-us/magazine/cc163486.aspx
http://msdn.microsoft.com/en-us/library/ms679687.aspx
Еще можно у юзера в свойствах ярлыка (или проги?) поставить галку "Выполнять эту программу от имена администратора" в разделе "совместимость".

karkar

>а разве не только через манифест?
Простые наблюдения:
1. Старые инсталлеры, не имеющие никакого манифеста, обычно все равно вызывают появление окошка UAC.
2. В настройках Висты часто можно видеть диалоги с особыми кнопками, нажатие на которые вызывает окошко UAC, т.е. запрос прав происходит динамически в процессе работы проги.
Ну и в статьях, типа приведенных выше, описываются способы помимо манифеста.

klyv

1. Старые инсталлеры, не имеющие никакого манифеста, обычно все равно вызывают появление окошка UAC.
2. В настройках Висты часто можно видеть диалоги с особыми кнопками, нажатие на которые вызывает окошко UAC, т.е. запрос прав происходит динамически в процессе работы проги.
в первом случае работает так называемое обнаружение инсталяторов.
а во втором... например, taskman просто запускает себя же с повышенными привилегиями..
надо будет почитать статьи :)

bleyman

Подожди, а в чём проблема, собственно?
Виста неправильно сливает реальную и виртуальную ветку регистри?
Или ты просто хочешь "чтоб было"?

kill-still

Виста неправильно сливает реальную и виртуальную ветку регистри?
Она НЕ сливает, а в упор не хочет видеть виртуалку.

karkar

Виста неправильно сливает

Сливает конкретно. :)
К сожалению, частенько разные проги пишут кто в "нормальный" раздел, кто в виртуальный, а потом по-разному читают, в итоге нередки глюки вроде невозможности определить браузер по умолчанию и т.п.

kill-still

Ага, щас бъюсь над этим.
Инсталлер пишет в одно место, прога в другое. :mad:
Оставить комментарий
Имя или ник:
Комментарий: