Вверх ↑
Этот топик читают: Гость
Ответов: 902
Рейтинг: 27
#1: 2008-09-25 19:41:23 ЛС | профиль | цитата
Справочник по реестру с возможностью редактирования.
Программа задумывалась как справочник с описанием ключей и параметров реестра.
Что-то вроде закладок в Registrar Registry Manager.
При запуске программы в левом окне отображаются кусты реестра, в принципе как в Regedit.
В правом верхнем окне параметры ключей, в нижнем описание ключей и параметров.
(Описания параметров пока не сделал).
Кусты выделенны папкой с галочкой и жирным шрифтом, а ключи для которых имеется описание звёздочкой.
Использовал нестандартные компоненты: Registry обновлён с SVN (Слава великому Nesco).
Это только набросок программы (В прямом и переносном смысле, компоненты набросал так, что чёрт ногу сломит)
так что сильно не ругайтесь.
И ещё: Все параметры показываются как строковые, если Registry будет доделан, будет супер.
Редактора конечно пока нет (Я думаю это не самое трудное). В крайнем случае в базу и в ручную пока можно описания заносить
(если очень нужно).
На больших ветках, таких как: NKEY_CLASSES_ROOT программа тормозит ужасно, в ней около 4000 ключей,
пока проверит все родительские, а потом ещё есть ли описание в базе, это минуты 2-3.
Вообще я эту ветку думаю отключить, оставить только корневые папки.

В архиве шашка и база (Должна лежать возле программы). Вес: 205 грамм.
Взять можно здесь:
http://dump.ru/file/1080836
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 1304
Рейтинг: 405
#2: 2008-09-25 21:33:24 ЛС | профиль | цитата
juk, проект думаю будет интересный, правда рыться придётся много в инете в поисках инфы.
Сразу есть предложение добавить возможность делать"снимок реестра", поиск изменений, а если к найденному изменению будет находится хоть какое описание будет СКАЗКА .
Но это лирика а в реальности компонент (TreeView не найден) это понятно, есть он у меня, а с Registry(cкачал с SVN) не совсем понятно, отладчик весь красный. Укажи версию сборки HiAsm(у меня 171), и раз всё равно выкладываешь на дампе, можно было нестандартные компоненты запихнуть в архив.

карма: 3

0
Ответов: 199
Рейтинг: 7
#3: 2008-09-25 22:29:48 ЛС | профиль | цитата
Если говоришь прога виснит может dll использовать ;)
карма: 0

0
Ответов: 1304
Рейтинг: 405
#4: 2008-09-25 23:16:29 ЛС | профиль | цитата
lenchik_vla, кто говорит?
может dll использовать


карма: 3

0
Ответов: 902
Рейтинг: 27
#5: 2008-09-26 01:52:48 ЛС | профиль | цитата
MAV,
делать"снимок реестра", поиск изменений

Да это вроде из другой оперы, это уже супер прога получится.
Единственное я хочу ещё поиск по реестру и по базе добавить.
Укажи версию сборки HiAsm
у меня 169.
не совсем понятно, отладчик весь красный.
А это как? Я просто им пользоваться не умею.
lenchik_vla,
Если говоришь прога виснит может dll использовать

И что это даст?
Просто схему до ума довести надо.
Виснет из-за счётчика, уж очень долго он ключи считает, а пока nesco не добавил точку принудительной остановки поиска, прога думала дольше, пропорционально количеству ключей в родительской ветке.
Я просто ещё не все компоненты знаю, что они умеют, да и те что знаю в некоторых случаях скорее всего использую неправильно, вот и думаю может кто по мере возможности поможет оптимизировать схему.
У кого схема не компилится, выкладываю ехе, чтоб хоть видно было что хочу сделать.

MAV, Спасибо за очередную помощь.
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
файлы: 1RegistryINFO.rar [54.7KB] [252]
Ответов: 8959
Рейтинг: 824
#6: 2008-09-26 09:12:31 ЛС | профиль | цитата
juk, а я, бедный, даже и не знаю, где этот реестр находится и как называется (хотя предполагаю, зачем он нужен)
карма: 19

0
Ответов: 16884
Рейтинг: 1239
#7: 2008-09-26 09:44:50 ЛС | профиль | цитата
juk писал(а):
На больших ветках, таких как: NKEY_CLASSES_ROOT программа тормозит ужасно, в ней около 4000 ключей,
пока проверит все родительские, а потом ещё есть ли описание в базе, это минуты 2-3.
Вообще я эту ветку думаю отключить, оставить только корневые папки.
Закон Майерса
Если факты не подтверждают теорию, от них надо избавиться.


------------ Дoбавленo:

Хотя можно упростить программу до предела, предложив запустить Google и набрать в окне "Справочник по реестру".
Google предложит 575 000 ответов, выбираешь нужный и вперед.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 5227
Рейтинг: 587
#8: 2008-09-26 10:05:51 ЛС | профиль | цитата
Tad может это форма познания такая и в памяти после этого кое что сохранится, а ведь это+
карма: 4
Мой форум - http://hiasm.bbtalk.me/ схемы, компоненты...
0
Ответов: 16884
Рейтинг: 1239
#9: 2008-09-26 11:36:21 ЛС | профиль | цитата
andrestudio, вполне возможно.
juk, так наверное проще будет (твой мультик)

Add(MultiElementEx,10798866,418,378)
{
}
BEGIN_SDK
Add(EditMultiEx,12846920,21,21)
{
WorkCount=#9:doCompare|
EventCount=#7:onEvent|
Width=195
Height=270
link(doCompare,16560562:doCompare,[(35,27)(35,39)])
}
Add(If_else,16560562,49,33)
{
Op2=String(HKEY_CLASSES_ROOT)
link(onTrue,8761803:doWork1,[(136,39)(136,90)])
link(onFalse,7610982:doCompare,[(93,46)(93,72)(41,72)(41,97)])
}
Add(If_else,7610982,46,91)
{
Op2=String(HKEY_CURRENT_USER)
link(onTrue,8761803:doWork2,[])
link(onFalse,15844896:doCompare,[(97,104)(97,128)(37,128)(37,146)])
}
Add(If_else,15844896,49,140)
{
Op2=String(HKEY_LOCAL_MACHINE)
link(onTrue,8761803:doWork3,[(121,146)(121,104)])
link(onFalse,4722972:doCompare,[(99,153)(99,182)(41,182)(41,195)])
}
Add(If_else,11205063,52,245)
{
Op2=String(HKEY_CURRENT_CONFIG)
link(onTrue,8761803:doWork5,[(136,251)(136,118)])
}
Add(If_else,4722972,53,189)
{
Op2=String(HKEY_USERS)
link(onTrue,8761803:doWork4,[(129,195)(129,111)])
link(onFalse,11205063:doCompare,[(97,202)(97,226)(40,226)(40,251)])
}
Add(ChanelToIndex,8761803,147,84)
{
Count=5
link(onIndex,12846920:onEvent,[(197,90)(197,27)])
}
END_SDK


------------ Дoбавленo:

А если применить Case то еще один элемент можно сэкономить.
------------ Дoбавленo:

А так на одном элементе

Add(EditMultiEx,12846920,21,21)
{
WorkCount=#9:doCompare|
EventCount=#7:onEvent|
Width=125
Height=95
link(doCompare,3291612:doGetIndex,[(37,27)(37,90)])
}
Add(StrList,3291612,70,42)
{
Strings=#17:HKEY_CLASSES_ROOT|17:HKEY_CURRENT_USER|18:HKEY_LOCAL_MACHINE|10:HKEY_USERS|19:HKEY_CURRENT_CONFIG|
Point(doGetIndex)
Point(onGetIndex)
link(onGetIndex,12846920:onEvent,[(124,55)(124,27)])
}


карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Гость
Ответов: 17029
Рейтинг: 0
#10: 2008-09-26 21:17:39 правка | ЛС | профиль | цитата


Редактировалось 3 раз(а), последний 2025-01-20 23:52:20
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#11: 2008-09-26 22:58:54 ЛС | профиль | цитата
juk писал(а):
С этого места поподробней пожалуйста.
А че там подробнее.
juk писал(а):
NKEY_CLASSES_ROOT программа тормозит ужасно
juk писал(а):
Вообще я эту ветку думаю отключить
Т.е. перефразированый Закон Майерса получается:
NKEY_CLASSES_ROOT тормозит ужасно. я эту ветку думаю отключить
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 1304
Рейтинг: 405
#12: 2008-09-26 23:41:54 ЛС | профиль | цитата
juk, особой помощи пока что не оказал, одни пожелания, а вот компонент Registry криво установить вполне получилось . Схему запустил на 169, а с 171 будут проблемы, компонент TreeView v2.41, заменён на TreeView v1.1, заместо него предполагается использовать более продвинутый TreeViewEx.
MAV писал(а):
отладчик весь красный

Имелось в виду отладчик HiAsm.
Ветка NKEY_CLASSES_ROOT, думаю особо не нужна и описаний по ней кот наплакал.
карма: 3

0
Ответов: 902
Рейтинг: 27
#13: 2008-09-27 00:55:25 ЛС | профиль | цитата
MAV,
Ветка NKEY_CLASSES_ROOT, думаю особо не нужна и описаний по ней кот наплакал.

Именно это я и имел ввиду, её изначально хотел выключить, просто оставил в примере для таких же чайников в Хиасме как и я. Может кто-то захочет сделать другую прогу с использованием дерева реестра,так хоть будет знать как это примерно сделать.
Сейчас пробую ещё один способ, который как мне кажется гораздо проще, и в котором не имеет значения какая версия TreeView установленна.
Имелось в виду отладчик HiAsm.

Да я понял, просто я для отладки использую: Message, а штатным отладчиком не умею пользоваться.

Tad,
Т.е. перефразированый Закон Майерса получается:
NKEY_CLASSES_ROOT тормозит ужасно. я эту ветку думаю отключить

Именно так, в моей программе в ней пока нет необходимости.
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
Ответов: 902
Рейтинг: 27
#14: 2008-09-27 02:51:12 ЛС | профиль | цитата
Подскажите пожалуйста, что я делаю неправильно?
Эта программа при запуске должна создать полный бэкап реестра на диске С:Tempos.
Но последнюю ветку реестра она создаёт только при закрытии формы.
Как правильно передать строку в компонент: WinExeс?
code_2307.txt
карма: 1
Время верстки: %cr_time% Текущее время: %time%
0
файлы: 1code_2307.txt [2.6KB] [235]
Ответов: 1304
Рейтинг: 405
#15: 2008-09-27 17:35:25 ЛС | профиль | цитата
juk, по твоей схеме подсказать ничего не могу (однозначно запарка с параметрами запуска cmd), у меня сохраняется две ветки при открытии, остальные три сохраняются при закрытии.
Предлагаю альтернативу без cmd.
code_10091.txt

карма: 3

0
файлы: 1code_10091.txt [2.8KB] [241]
Сообщение
...
Прикрепленные файлы
(файлы не залиты)