![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Выделенные объекты
Archer84 © (2005-10-13 15:05:00)Вопрос такой: когда в Explorer'e (Windows) выделяют какой-то объек (щелчком мыши). то можно ли получить путь к этому объекту в Delphi?
Спасибо за внимание.
DeadMeat (2005-10-20 18:35:00) [1]
> Defunct © (13.10.05 17:30) [1]
> ты не прав... в программировании можно почти всё... ограничивается
> только количеством гемора для получения результата
В чем де он не прав? Где он сказал, что это не возможно?
---
...Death Is Only The Begining...
umbra (2005-10-20 18:23:00) [2]
> Так врядли что получиться.
но вообще-то в эксплорере так все и происходит. В его зависимостях нет com.
Eraser (2005-10-20 17:37:00) [3]
> SpellCaster (20.10.05 14:05) [8]
Так врядли что получиться. По-моему проще использовать инструменты, созданые специально для этого.
SpellCaster (2005-10-20 14:05:00) [4]А как насчет такого способа:
получить окно Проводника (findwindow, getforegroundwindow...), из него выцепить хэндл контрола shellListview и уже с ним работать через API Sendmessage (LVM_XXX). Не знаю, правда, есть ли в этом контроле инфа о собственно директории, содержимое которой он отображает, но имена выделенных объектов получить можно. Путь, наверно, придётся брать из shellTreeview аналогичным способом. Придётся поэкспериментировать, конечно, зато никакого COM
Eraser (2005-10-13 20:02:00) [5]
> Poirot © (13.10.05 19:45) [6]
В "Руководстве разработчика" Тейксейры с Пачеко том 1 есть несколько примеров расширения оболочки через COM, в частности, выбор значка к файлу в зависимости от содержимого файла и ещё парачка ... думаю копать надо в эту сторону.
Сам такого рода программы не делал, так что ничего конекретнее подсказать не могу.
Poirot (2005-10-13 19:45:00) [6]Eraser © (13.10.05 17:59) [5]
Я бы не сказал, что это теоритически - это вполне можно, вопрсо в другом - как организовать грамотно взаимодействие между прилдожением и расширением оболочки.. я что-то подобное делал и использщовал пайпы, но вот не уверен верно ли это:)
Eraser (2005-10-13 17:59:00) [7]
> Poirot © (13.10.05 17:56) [2]
> соотв COM Тоже надо знать
О! Ключевое слово COM! Именно с пом. него и можно (теоретически) сделать сабж.
Как? - это уже другой вопрос.
Drakosha (2005-10-13 17:58:00) [8]имхо через хук мона.
Defunct © (13.10.05 17:30) [1]
ты не прав... в программировании можно почти всё... ограничивается только количеством гемора для получения результата
Poirot (2005-10-13 17:56:00) [9]Archer84 © (13.10.05 15:05)
Ну если сильно постараться, то можно всё, но только не из самой делфи:) как минимум для правильного решения потребуется знание оболочки Винды и умение писать расширения этой самой оболочки.. соотв COM Тоже надо знать:)
Poirot (2005-10-13 17:56:00) [10]Удалено модератором
Defunct (2005-10-13 17:30:00) [11]Контр вопрос, отвечающий на ваш:
Когда в вашей программе выделяют какой-то объект может ли эксплорер получить путь к этому объекту?