Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как открыть папку в том же окне с помощью ShellExecute??? [D6, WinXP]


Volf_555 ©   (2005-12-20 19:36:00) 

В реестр добавил контекстное меню к папке и прописал в значении по умолчанию:
"D:\Programs\Exec.exe" "%1"
В программе пишу:
ShellExecute(handle,'open',nil,nil,PChar(ParamStr(1)),SW_Normal);
В результате папка открывается в новом окне... Как сделать чтобы папка открывалась в том же окне?


Lamer@fools.ua   (2005-12-21 20:27:00) [1]

>> Volf_555   (21.12.05 19:32) [5]

IMHO, это с помощью внешней программы не сделать. Нужно писать Shell Extension (или как там их). Пример есть в поставке Delphi в Demos\ActiveX\ShellExt, если не ошибаюсь.


Volf_555   (2005-12-21 19:32:00) [2]

Допустим - сейчас я нахожусь в папке С:\ >> нажимаю правой кнопкой на папке с именем Files >> выбираю OpenWithMyProg >> запускается моя програма, которая открывает папку и записывает лог в файл.

Но когда я таким образом:

> "D:\Programs\Exec.exe" "%1"
> В программе пишу:
> ShellExecute(handle,'open',nil,nil,PChar(ParamStr(1)),SW_Normal);
>

открываю папку, то папка открывается в новом окне.


Lamer@fools.ua   (2005-12-21 09:02:00) [3]

> К каком
Сорри, читать "В каком".


Lamer@fools.ua   (2005-12-21 09:01:00) [4]

Я, оказывается, невнимательно вопрос прочитал.

Вот это:
> В результате папка открывается в новом окне... Как сделать чтобы папка открывалась в том же окне?
совсем непонятно. К каком том жеокне?


Volf_555   (2005-12-20 20:47:00) [5]


> Lamer@fools.ua ©   (20.12.05 20:25) [1]
> Не уверен, но попробуйте вместо 'open' написать nil.


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


Lamer@fools.ua   (2005-12-20 20:25:00) [6]

Не уверен, но попробуйте вместо 'open'написать nil.


Наверх

Титульная страница Поиск, карта сайта Написать письмо