Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Работа с реестром Windows   Найти похожие ветки 

 
котэ   (2010-02-27 20:04) [0]

Здравствуйте!

Возник вопрос

Предыстория:
установил на "Win7" "office 2003", все было нормально, до тех пор пока не переустановил отдельный компонент этого пакета. При запуске "выскакивает" окно "Windows Installer" или т.п. и так каждый раз. После долгих поисков нашел проблему. В интернете ее связывают с ограниченным доступом к реестру в Windows Vista и выше. И действительно, заглянув в реестр (с пом. прогр. "Редактор реестра") увидел, что к некоторым разделам вообще нет доступа (никакого) и владелец не установлен, причем разделы явно такие, что не нуждаются в драконовской безопасности. Решение проблемы - использование программы subinacl.exe (работает в текстовом режиме экрана), но я не знаю имен тех недоступных разделов, поэтому запрашиваю обработку всего "HKEY_CLASSES_ROOT", а это занимает оч. много времени. Хотя проблема действительно решается (инсталлятор запускается еще один раз и все, ОС не сбоит).

Поставленное ТЗ

моя программа должна обрабатывать реестр (желательно "не спеша" - чтобы не сильно мешать работе других программ), находить в нем разделы с отсутствием доступа и неуказанным владельцем, затем сама или посредством subinacl установить владельца и дать к ним доступ.

Можете что-нибудь посоветовать?

Спасибо!
=^_._^=


 
Демо ©   (2010-02-27 20:07) [1]


> Можете что-нибудь посоветовать?


Ни в коем случае не трогать эти ветки реестра, не переустанавливать владельца.


 
котэ   (2010-02-27 20:12) [2]


> Ни в коем случае не трогать эти ветки реестра, не переустанавливать
> владельца.

среди тех веток, который нельзя трогать есть ветки созданные инсталлятором, который затем сам с ними ничего сделать не может (мое виденье проблемы))


 
KilkennyCat ©   (2010-02-27 20:20) [3]

эта проблема не только на вин7. и связана с неграмотной установкой.


 
Демо ©   (2010-02-27 20:24) [4]


> котэ   (27.02.10 20:12) [2]
> > Ни в коем случае не трогать эти ветки реестра, не переустанавливать
> > владельца.среди тех веток, который нельзя трогать есть
> ветки созданные инсталлятором, который затем сам с ними
> ничего сделать не может (мое виденье проблемы))


После смены владельца можешь больше не загрузить систему. 99%.

Лучше найди деинсталляторы сторонние и аккуратно попытайся почистить ими реестр.


 
Демо ©   (2010-02-27 20:25) [5]

Например, Uninstall Tool


 
Anatoly Podgoretsky ©   (2010-02-27 21:32) [6]

Поймаю, убью


 
Демо ©   (2010-02-27 21:52) [7]


> Anatoly Podgoretsky ©   (27.02.10 21:32) [6]
> Поймаю, убью


Ужжжас... Кого и за что?


 
KilkennyCat ©   (2010-02-27 22:07) [8]


> Лучше найди деинсталляторы сторонние и аккуратно попытайся
> почистить ими реестр.

эффективность их лишь в случае установки до Установки.
На всякий случай повторю еще раз - данной проблемы нет, есть лишь криворукость того, кто ставит.


 
Демо ©   (2010-02-27 22:51) [9]


> эффективность их лишь в случае установки до Установки.


Не прав ты, Костя.
Эти программы анализируют реестр на предмет ссылок, регистраций ActiveX, ссылки на DLL и прочие ресурсы.
Затем позволяют этот мусор из реестра и с диска вычистить...


 
KilkennyCat ©   (2010-02-27 23:01) [10]


> Демо ©   (27.02.10 22:51) [9]

До.
Вот запишет моя программа в реестр что-то один раз, а обратится на сотый запуск. и как определить, мусор эта запись, или нет?


 
Игорь Шевченко ©   (2010-02-27 23:44) [11]


> Затем позволяют этот мусор из реестра и с диска вычистить.
> ..


нафиг, нафиг. Эти кривые пионерские поделки или создают видимость удаления или вышибают табуретку из-под инсталляторов.


 
Демо ©   (2010-02-28 01:06) [12]


> KilkennyCat ©   (27.02.10 23:01) [10]
> > Демо ©   (27.02.10 22:51) [9]До. Вот запишет моя программа
> в реестр что-то один раз, а обратится на сотый запуск. и
> как определить, мусор эта запись, или нет?


А что, в этот один сотый раз программы с потолка возьмёт название ветки реестра?


> Игорь Шевченко ©   (27.02.10 23:44) [11]
> > Затем позволяют этот мусор из реестра и с диска вычистить.
> > ..нафиг, нафиг. Эти кривые пионерские поделки или создают
> видимость удаления или вышибают табуретку из-под инсталляторов.
>


Есть вполне адекватные. Да и процесс ведь проходит под полным контролем. Кто же разрешит грязными лапами программе в реестр лезть и бесконтрольно удалять что-то?


 
Демо ©   (2010-02-28 01:08) [13]


> > Демо ©   (27.02.10 22:51) [9]До. Вот запишет моя программа
> в реестр что-то один раз, а обратится на сотый запуск. и
> как определить, мусор эта запись, или нет?


Да не надо для определения ссылок на реестр мониторить процесс записвания.


 
Игорь Шевченко ©   (2010-02-28 01:18) [14]

Демо ©   (28.02.10 01:06) [12]


> Есть вполне адекватные


Видел только одну - MS-овскую RegClean. Вот она адеватная, но удаляет крайне немного - то, что осталось в пользовательском HKCR бесхозного, в смысле чего из InProcServer на диске нету (сейчас нету, а если завтра появится ?)

Все остальные - увы, неадекватные. Из последних неадекватных Wise Registry Cleaner, который почистил заодно историю у Far-а и еще у половины софта, ну и данные инсталлятора умерли тоже, в результате из Add/Remove Programs что-то не сносится, а требует оригинального диска.

Оно ж все умное, незнамо какое.


> Да и процесс ведь проходит под полным контролем


Да-да, вываливается четыре тыщи ссылок и говорится, что это все "можно преспокойно удалить".


 
Германн ©   (2010-02-28 01:33) [15]


> Да-да, вываливается четыре тыщи ссылок и говорится, что
> это все "можно преспокойно удалить".

Эт точно. Давно положил на подобные поделки.


 
KilkennyCat ©   (2010-02-28 01:46) [16]


> А что, в этот один сотый раз программы с потолка возьмёт
> название ветки реестра?

не понял. не с потолка, она знает, куда. а как узнает очищальщик? Декомпилирует?
а вот тебе еще пример: в целях безопасности я не держу банк-клиент на машине. когда надо - копирую на диск и запускаю. после работы - удаляю. именно удаляю, не деинсталлирую. и записи в реестре мне нужны.
очищальщик, смотрит запись в реестре, смотрит там путь к программе, не находит, и чистит. и привет.
и такого много.
так что, все такие утилиты далеко не для рядового пользователя, это раз, нерядовой пользователь о них обычно знает и смысла говорить нет, это два, ну и в-третьих, их эффективность сомнительна, если они предварительно не отслеживали процесс установки программы. Впрочем и в этом случае то же неэффективно и небезопасно: устанавливаемая программа может воспользоваться чужой веткой реестра, а очищальщик будет думать что?


 
Германн ©   (2010-02-28 01:52) [17]


> их эффективность сомнительна, если они предварительно не
> отслеживали процесс установки программы.

+1
Поэтому иногда пользую программы типа Ashampoo.


 
котэ   (2010-02-28 02:41) [18]


> Поймаю, убью

поймаю, загрызу =^_._^=

Не понимаю от чего, собственно, столь высокая критичность к моему вопросу, можно просто забыть о изменении прав реестра и сосредоточится на вопросе лишь анализа его веток (у меня есть образ системного диска, когда система перестает загружаться делаю полный откат, неоднократно меня спасал, софт - "acronis").


 
KilkennyCat ©   (2010-02-28 06:24) [19]


> Не понимаю от чего, собственно, столь высокая критичность
> к моему вопросу

Здесь не приветствуется вредоносность программ.


 
Anatoly Podgoretsky ©   (2010-02-28 12:04) [20]

Чистильщика реестра это особый класс троянов.



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.087 c
15-1275150659
Vitalii_____
2010-05-29 20:30
2010.08.27
Форумы по CUDA на русском


15-1265078165
Дмитрий С
2010-02-02 05:36
2010.08.27
Подскажите телефон


2-1270481004
Fantasy
2010-04-05 19:23
2010.08.27
Shortcut на рабочем столе. Проблема с функцией GetDir(0,sPath);


4-1235150915
Илья_
2009-02-20 20:28
2010.08.27
CreateProcess и ожидание его завершения


2-1273577748
Shyrick
2010-05-11 15:35
2010.08.27
MainMenu & WinAPI