![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Killer600 |
|
|||
|
Unregistered |
Мне нужно сделать пункт в системном меню Windows и обрабатывать его - точнее чтобы по нему щёлкали и файлы с мои расширением открывались в Memo(т.е. мне надо сделать меню как у Winrar'а )и путь к тому файлу сразу же записывался в Edit?????????
Если нужно - мой ящик [email protected] |
|||
|
||||
| Illusion Dolphin |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1198 Регистрация: 3.5.2003 Репутация: 36 Всего: 63 |
uses ..., registry;
const my_ext = 'abc'; my_ind = 'abc_file'; var reg:tregistry; function register_ext:boolean; begin result:=false; Reg:=Tregistry.create; try Reg.rootkey:=Windows.HKEY_CLASSES_ROOT; Reg.OpenKey('\'+my_ext +'\',true); Reg.writestring('',my_ind); Reg.free; Reg:=Tregistry.create; Reg.rootkey:=Windows.HKEY_CLASSES_ROOT; Reg.OpenKey('\'+my_ind+'\',true); Reg.OpenKey('\'+my_ind+'\DefaultIcon',true); Reg.writestring('',Application.Exename+',1'); Reg.OpenKey('\'+my_ind+'\Shell\Open\Command',true); Reg.writestring('','"'+Application.Exename+'" "%1"'); Result:=true; except end; Reg.free; end; procedure tform1formcreate(sender:TObject); begin if not register_ext then showmessage('Не могу зарегистрировать расширение!'); if fileexists(paramstr(1)) then begin edit1.text:=paramstr(1); //выводим путь к файлу memo1.Lines.LoadFromFile(paramstr(1)); //открываем файл end end; P.S. Это если файлы текстового формата, иначе вместо memo1.Lines.LoadFromFile придётся писать что-нибудь своё, что зависит от конкретной задачи. -------------------- В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен. Шифрование и организация фотографий - Photo Database 4.5 |
|||
|
||||
| <Spawn> |
|
|||
![]() Око кары:) ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2776 Регистрация: 29.1.2003 Где: Екатеринбург Репутация: 44 Всего: 64 |
GetSystemMenu + AppendMenu + WM_SYSCOMMAND
Добавлено @ 16:08 Ой, ошибся - подумал для системного меню окна -------------------- "Для некоторых людей программирование является такой же внутренней потребностью, подобно тому, как коровы дают молоко, или писатели стремятся писать" - Николай Безруков. |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Как добавить свой пункт меню в проводнике?
|
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |