Delphi World - Живой Desktop — вариант использования Shell
Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Живой Desktop — вариант использования Shell

Оформил: DeeCo

Автор: Митронов Станислав

Что это:
Прикольное расширение Shellа.
Назначение:
Разовое применение с целью разрушить устоявшееся представление индивидума о незыблемости иконок на рабочем столе.
Показания:
  • WinNT4/Win2000 (для других не проверялось);
  • Непосредственный доступ к жертве;
  • D6 +/- 3 версии я думаю.

Внимание - это демонстрация, содержит как минимум одну ошибку приводящую к завершению работы Explorerа без сохранения данных через ~ 20 мин.

Предыстория:
Работает у нас один парень все ничего вот только у него странная тяга к иконкам на рабочем столе что выражается в их не мерянном количестве и особо структурированном распределении (сложном и непонятном с полпинка). Как то раз, с утречка он включает комп и... О БОЖЕ !?!?!, по неизвестной причине, ОНИ (иконки - прядка 30~40 штук) были упорядочены!!! и выровнены!!! стандартным образом... что тут началось... (вырезано по требованию правозащитных организаций ) прям конец света :) в общем стены устояли. Парень наотрез отказался работать до тех пор пока не расставит все иконки в только ему ведомом порядке и в соответствии с распределением космических сил - ушел в нирвану на пол дня.
Ну и я, под впечатлением от силы воздействия иконок, решил написать прогу по их своеобразному упрядовачиванию в (как говорится) real-time :)
Как сделано:
После взвешивания цели и возможных средств доставки было выбрано - повесить на получение контекстного меню (Explorer файл/папка) дллку в которой собственно и осуществляется вся работа.
В качестве основы был взят пример \Borland\Delphi6\Demos\ActiveX\ShellExt\..
Реализовано три алгоритма поведения иконок - черви (Worms), частицы (Atoms) и мышь серая (Mouse).
  • Worms: черви в виде цепочек иконок бегают по рабочему столу поедая друг друга увеличиваясь в длине.
  • Atoms: мечутся по экрану с учетом связей между собой.
  • Mouse: избегают курсора мыши.
Содержание:
  • ContextM.pas - реализация IContextMenu
  • DeskHelp.pas - получение хендла ListView рабочего стола
  • UthDeskIcon.pas - алгоритмы по управлению иконками
  • fsc.reg - регистрация в системе
  • FtpSC32.dpr - проект дллки
  • ReadMe.txt - хмм
Скачать DskIcLive.zip (56K)
Проект Delphi World © Выпуск 2002 - 2017
Автор проекта: Эксклюзивные курсы программирования