Показать сообщение отдельно
Старый 07.03.2006, 14:04     # 12
Dr.God
::VIP::
Creator
 
Аватар для Dr.God
 
Регистрация: 30.05.2004
Адрес: Alongside
Сообщения: 2 598

Dr.God Бог с наворотамиDr.God Бог с наворотами
Dr.God Бог с наворотамиDr.God Бог с наворотамиDr.God Бог с наворотамиDr.God Бог с наворотамиDr.God Бог с наворотамиDr.God Бог с наворотамиDr.God Бог с наворотамиDr.God Бог с наворотамиDr.God Бог с наворотамиDr.God Бог с наворотамиDr.God Бог с наворотами
Цитата:
GLuck1:
если посмотреть в реестре программу, которая указана в качестве shell для открытия регфайлов, то это
regedit.exe "%1"
поэтому он должен открывать его по идее.
Определимся в чём косяк.
Значение по умолчанию ключа расширения файла содержит имя класса программ, ассоциированного с этим расширением. При запуске .exe система смотрит значение параметра по умолчанию, т.е. значение класса (exefile) и обращается уже к классу exefile для того, чтобы определить поведение, т.е. запуск программы.

Ошибка допущена на этапе ассоциации расширения с классом. Система не могла понять как себя вести при обращении пользователя к ".exe", т.к. класса "exeshnik" нет (вот если бы "exefile" был переименован в "exeshnik"). НО! При запуске reg-файла и любого другого (.avi, .txt и др.) исполняющее его приложение запустится. Почему? Да потому, что у него с ассоциацией вида расширение-класс всё в порядке! Значение ключа расширения ведёт к истинному (true) классу.

Забудьте всё что я нёс про процесс... Мысль ушла не туда.
__________________
Оверклокинг Windows XP
Dr.God вне форума