Софт-Архив

Delphi 7 Для Начинающих img-1

Delphi 7 Для Начинающих

Рейтинг: 4.3/5.0 (1907 проголосовавших)

Описание

Лучшая, на ваш взгляд, книга по Delphi для начинающих?

Лучшая, на ваш взгляд, книга по Delphi для начинающих?

Игорь Мастер (1506) 4 года назад

Программирование в Delphi 7

Архангельский А. Я

Александр Свиридов Мудрец (10674) 4 года назад

Да, действительно. Начать изучать Делфи можно только начинающему. А имея опыт откажешься

1) Делфи учат не желающие расставаться с синтаксисом Паскаля. А паскаль учат чтобы ублажить препода. Ублажить препода и написать программу - вещи из разных областей жизни.

2) Паскаль язык с 50-летней историей. Значит что-то лучшее будет отвергнуто из-за не совместимости синтаксических конструкций.

3) Делфи 7 стабилен. Хотя и не дотягивает до уровня visual Studio(компоненты староваты и не обновляются). А вот 8-. версии глючат страшенно. Прибавить сюда что эта среда коммерческая, получаем трату денег впустую. Visual Studio Express бесплатен для коммерческого применения.

4) Писать под 64х на делфи нельзя. См выше о стабильности. Свежие версии работают хуже. Программы на делфи будут работать в режиме WOW64 - Windows on Windows 64. Режим эмуляции. И видимо в 128-биттных системах которые не за горами 32х совсем работать перестанет. В режиме WOW64 как минимум вы не сможете юзать 64х COM библиотеки.

5) программировать под MS Windows NT, но не иметь возможности взять пример из MSDN и скопировать к себе в программу. Ждать пару лет пока Делфи внедрят то что MS внедрил в Visual Studio и выпустил бесплатно. То есть выбор стороннего языка напрягает.

6) Невозможность писать на делфи ВЕБ сайты. ASP. NET проходит мимо. Учить РНР плюсом к делфи? Произойдёт распыление ресурсов на два языка, и как следствие снизится знание обоих.

Источник: Сам когда-то изучал Делфи

Другие статьи, обзоры программ, новости

Cтудентам и школьникам - книги программирование 7

Все книги можно скачать бесплатно и без регистрации.

NEW Ю.А. Шпак. Delphi 7 на примерах. 2003 год. 384 стр. djvu. 11.7 Мб.

Книга адресована широкому кругу начинающих разработчиков приложений средствами Delphi 7, предназначенных для управления базами данных разных структур: локальными базами данных и базами данных, расположенными на SQL-серверах. Особое место в книге занимают части, посвященные разработке WЕВ-серверных и клиентских приложений, а также оптимизации работы с базами данных и их защиты.

Изучение материала построено на примерах реальных проектов, которые можно применять в повседневной работе или использовать, как основу, для создания собственных приложений.

NEW. Джулиан Бакнелл. Фундаментальные алгоритмы и структуры данных в Delphi. 2003 год. 550 стр. PDF. 29.1 Мб.

Книга Фундаментальные алгоритмы и структуры данных в Delphi представляет собой уникальное учебное и справочное пособие по наиболее распространенным алгоритмам манипулирования данными, которые зарекомендовали себя как надежные и проверенные многимипоколениями программистов. По данным журнала Delphi Informant за 2002 год, эта книга была признана сообществом разработчиков прикладных приложений на Delphi как `самая лучшая книга по практическому применению всех версий Delphi`. В книге подробно рассматриваются базовые понятия алгоритмов и основополагающие структуры данных, алгоритмы сортировки, поиска, хеширования, синтаксического разбора, сжатия данных, а также многие другие темы, тесно связанные с прикладным программированием. Изобилие тщательно проверенных примеров кода существенно ускоряет не только освоение фундаментальных алгоритмов, но также и способствует более квалифицированному подходу к повседневному программированию. Несмотря на то что книга рассчитана в первую очередь на профессиональных разработчиков приложений на Delphi, она окажет несомненную пользу и начинающим программистам, демонстрируя им приемы и трюки, которые столь популярны у истинных `профи`. Все коды примеров, упомянутые в книге, доступны для выгрузки на Web-сайте издательства.

Архангельский. Delphi 2006. Справочное пособие. Язык Delphi, классы, функции Win32 и .NET.

Книга является справочным пособием по языку Delphi в многоязыковой среде объектно-ориентированного программирования Delphi 2005 и Delphi 2006. Книга рассчитана на тех, кто разрабатывает традиционные приложения Win32 и на тех, кто начинает осваивать платформу .NET. Содержит краткий обзор платформы .NET, достаточный для того, чтобы можно было начинать разработки на этой платформе. Излагается методика переноса традиционных приложений VCL Win32 на платформу .NET и способы распространения приложений .NET. В книге дается полное описание двух версий языка Delphi: для Win32 и для .NET: все синтаксические конструкции, все операции, оператор, директивы. Приводится методика работы со всеми основными типами данных: типами-значениями и типами-ссылками, числовыми данными, строками, файлами, потоками, массивами, множествами, структурами, классами, интерфейсами. Дается обширный справочный материал по классам VCL и библиотек .NET, по их свойствам и методам (свыше 1000 кратких и около 250 подробных описаний), по функциям Delphi и API Windows (около 800 функций библиотек VCL и .NET). Справочный материал снабжен подробными комментариями и примерами. Как справочник книга полезна пользователям любой квалификации: от начинающих до опытных разработчиков. 1140 стр. djvu. 17.0 Мб.

Бакженова И.Ю. Delphi 7. Самоучитель программиста. 2003 год. 448 стр. PDF. 23.9 Мб.

Содержание:

Object Pascal. Доступ к реляционным базам данных. Классы палитры компонентов Delphi. BDE и InterBase. ODBC и OLE DB. Работа с базами данных. Создание отчетов в Rave Reports. Разработка SDI и MDI приложений. СОМ и CORBA. Серверы и контейнеры автоматизации. Публикация данных в Internet.

Отличный самоучитель, позволяющий на простых примерах свободно чувствовать себя в среде программирования.

Иллюстрированный самоучитель по Delphi 7 для начинающих. Книга, которую вы держите в руках, — это не описание языка Delphi или среды разработки Delphi 7 Studio. Это учебное пособие по программированию на языке Delphi в одноименной среде. В нем рассмотрена вся цепочка, весь процесс создания программы: от разработки диалогового окна и функций обработки событий до создания справочной системы и установочного диска.

Цель этой книги может быть сформулирована так: научить программировать в среде Delphi, т. е. создавать законченные программы различного назначения: от простых однооконных приложений до вполне профессиональных программ работы с базами данных.

Научиться программировать можно только программируя, решая конкретные задачи. При этом достигнутые в программировании успехи в значительной степени зависят от опыта. Поэтому, чтобы получить максимальную пользу от книги, вы должны работать с ней активно. Не занимайтесь просто чтением примеров, реализуйте их с помощью вашего компьютера. Не бойтесь экспериментировать — вносите изменения в программы. Чем больше вы сделаете самостоятельно, тем большему вы научитесь!

Скомпел. chm справка. 5.1 Мб

Кандзюба и др. Delphi 6/7. Базы данных и приложения. 260 двойных стр. djvu. 35.7 Мб.

В пособии стр. 15-146 посвящены собственно языку программирования Object Pascal и разработке простейших программ в консольном выполнении в среде Delphi. Часть 2 содержит основы разработки оконных приложений в среде с использованием наиболее удобных визуальных и невизуальных компонент.

Корняков. Программирование документов и приложений MS Office в Delphi. 2005 год. Книга посвящена созданию приложений в среде Delphi для работы с текстом, таблицами, объектами, диаграммами, макросами, настройками параметров страниц и др. в документах MS Word и Excel. Большое внимание уделено объектным моделям документов MS Office. Рассмотрено программирование элементов управления редакторов MS Word и Excel, а также создание динамических библиотек, которые можно использовать в макросах документов MS Office. Приведены варианты программной реализации типовых задач и ответы на типовые вопросы, с которыми встречаются разработчики. 34.0 Мб. 500 стр. PDF.

Малинин, редактор электронной версии учебного пособия. DELPHI - Уроки для начинающих. Нtml в RAR архиве. 393 Кб.

Озеров В. Delphi 7. Советы по Delphi. скомпел справка в архиве 176 Кб.

Советы по Delphi - коллекция ответов на нетрадиционные вопросы программирования на Delphi, нестандартных решений, хитростей и интересных идей. Для практической пользы дела приведены конкретные примеры кода, позволяющие донести идею или полностью ответить на заданный вопрос.

При составлении "Советов" не ставилась цель включить ВСЕ материалы, отбирались лишь самые интересные. Источником "Советов" служили многочисленные западные источники (FAQ), кропотливо отобранные и переведенные на русский язык. Весь приведенный код отформатирован таким образом, чтобы вы могли скопировать его прямо со странички в свое приложение.

Флёнов М. Е. Delphi в шутку и всерьез; что умеют хакеры. 2006 год. 271 стр. djvu. 7.8 Мб.

Книга о профессиональных приемах программирования в Delphi. В легкой и доступной форме с использованием большого количества оригинальных примеров рассмотрены вопросы корректного написания кода, оптимизации программ, работы с системным окружением, создания сетевых приложений. Книга предназначена в первую очередь для начинающих программистов с небольшим опытом программирования, но будет полезна и профессионалам.

4. Шупрута. Delphi 2005 учимся програмировать. Самоучитель. Все основные вопросы по работе в Borland Delphi 2005. Большое количество примеров. Рекомендации начинающим программистам. Не требует начальной подготовки. 38.8 Мб. 345 стр. PDF.

Програмированье это жизнь

В книге, которая посвящена программированию в конкретной среде разработки, необходим баланс между тремя линиями — языком программирования, техникой и технологией программирования (программированием как таковым) и средой разработки. Уже при первом знакомстве со средой разработки, представлении ее возможностей у автора возникает проблема: чтобы описать процесс разработки программы, объяснить, как работает программа, нужно оперировать такими терминами, как объект, событие, свойство, понимание которых на начальном этапе изучения программирования весьма проблематично. Как поступить? Сначала дать описание языка, а затем приступить к описанию среды разработки и процесса программирования в Delphi? Очевидно, что это не лучший вариант. Поэтому при изложении материала принят подход, в основу которого положен принцип соблюдения баланса между языком программирования, методами программирования и средой разработки. В начале книги некоторые понятия, без которых просто невозможно изложение материала, даются на уровне определений.

Книга, которую вы держите в руках, — это не описание языка Delphi или среды разработки Delphi 7 Studio. Это учебное пособие по программированию на языке Delphi в одноименной среде. В нем рассмотрена вся цепочка, весь процесс создания программы: от разработки диалогового окна и функций обработки событий до создания справочной системы и установочного диска.

Цель этой книги может быть сформулирована так: научить программировать в среде Delphi, т. е. создавать законченные программы различного назначения: от простых однооконных приложений до вполне профессиональных программ работы с базами данных.

Иллюстрированный самоучитель по Delphi 7

Иллюстрированный самоучитель по Delphi 7 для начинающих

22.09.2009

В книге, которая посвящена программированию в конкретной среде разработки, необходим баланс между тремя линиями — языком программирования, техникой и технологией программирования (программированием как таковым) и средой разработки. Уже при первом знакомстве со средой разработки, представлении ее возможностей у автора возникает проблема: чтобы описать процесс разработки программы, объяснить, как работает программа, нужно оперировать такими терминами, как объект, событие, свойство, понимание которых на начальном этапе изучения программирования весьма проблематично. Как поступить? Сначала дать описание языка, а затем приступить к описанию среды разработки и процесса программирования в Delphi? Очевидно, что это не лучший вариант. Поэтому при изложении материала принят подход, в основу которого положен принцип соблюдения баланса между языком программирования, методами программирования и средой разработки. В начале книги некоторые понятия, без которых просто невозможно изложение материала, даются на уровне определений.

Книга, которую вам предлагается скачать, — это не описание языка Delphi или среды разработки Delphi 7 Studio. Это учебное пособие по программированию на языке Delphi в одноименной среде. В нем рассмотрена вся цепочка, весь процесс создания программы: от разработки диалогового окна и функций обработки событий до создания справочной системы и установочного диска.

Цель этой книги может быть сформулирована так: научить программировать в среде Delphi, т. е. создавать законченные программы различного назначения: от простых однооконных приложений до вполне профессиональных программ работы с базами данных.

Научиться программировать можно только программируя, решая конкретные задачи. При этом достигнутые в программировании успехи в значительной степени зависят от опыта. Поэтому, чтобы получить максимальную пользу от книги, вы должны работать с ней активно. Не занимайтесь просто чтением примеров, реализуйте их с помощью вашего компьютера. Не бойтесь экспериментировать — вносите изменения в программы. Чем больше вы сделаете самостоятельно, тем большему вы научитесь!

Скачано: 112070 раз

Учебник по Delphi 7 для начинающих 2015 скачать бесплатно на русском языке для windows 7

Учебник по Delphi 7 для начинающих

Учебник по Delphi 7 для начинающих представляет собой великолепное пособие для начинающих по работе в Delphi 7. Отличный выбор для тех, кто только собирается постигать азы программирования.

Современная жизнь диктует нам свои условия, и компьютер давно стал неотъемлемой частью жизни практически каждого человека. Учебник по Delphi 7 станет хорошим и полезным подарком для каждого человека, жизнь и работа которого хоть немного связаны с компьютерами, а, в частности, с программированием.

В данном учебнике подробно описан и рассмотрен весь процесс создания программы в среде Delphi 7: от разработки диалогового окна и функций разработки событий до создания справочной системы и установочного диска.

Изучив данное пособие, каждый пользователь сможет быстро, качественно и легко создавать в Delphi 7 законченные программы различного практического применения: и простые однооконные приложения, и сложнейшие профессиональные программы работы с базами данных.

Учебник выполнен в формате справки Windows, что позволяет обеспечить максимальное удобство пользователей, ведь они могут быстро найти ответ на интересующий вопрос.

Основные особенности Учебника по Delphi 7:

  • Подходит для новичков в сфере программирования
  • Написан доступным языком
  • Подробно описан и рассмотрен весь процесс создания программы
  • Оформлен в виде справки
Плюсы
  • Удобное оформление;
  • Подходит для начинающих;
  • Написан простым и доступным языком;
Минусы
  • Требует дополнительного программного обеспечения;
  • Обучение довольно длительное;

Самоучители: Windows XP, Microsoft Office, Maple, Photoshop, Corel DRAW

Иллюстрированный самоучитель по Delphi 7 для начинающих

Предисловие

Delphi — что это?

В последнее время резко возрос интерес к программированию. Это связано с развитием и внедрением в повседневную жизнь информационно-коммуникационных технологий. Если человек имеет дело с компьютером, то рано или поздно у него возникает желание, а иногда и необходимость, программировать.

Среди пользователей персональных компьютеров в настоящее время наиболее популярно семейство операционных систем Windows и, естественно, что тот, кто собирается программировать, стремится писать программы, которые будут работать в этих системах.

Несколько лет назад рядовому программисту оставалось только мечтать о создании собственных программ, работающих в среде Windows, т. к. единственным средством разработки был Borland C++ for Windows, явно ориентированный на профессионалов, обладающих серьезными знаниями и опытом.

Бурное развитие вычислительной техники, потребность в эффективных средствах разработки программного обеспечения привели к появлению систем программирования, ориентированных на так называемую "быструю разработку", среди которых можно выделить Borland Delphi и Microsoft Visual Basic. В основе систем быстрой разработки (RAD-систем, Rapid Application Development — среда быстрой разработки приложений) лежит технология визуального проектирования и событийного программирования, суть которой заключается в том, что среда разработки берет на себя большую часть рутинной работы, оставляя программисту работу по конструированию диалоговых окон и функций обработки событий. Производительность программиста при использовании RAD-систем -фантастическая!

Delphi — это среда быстрой разработки, в которой в качестве языка программирования используется язык Delphi. Язык Delphi — строго типизированный объектно-ориентированный язык, в основе которого лежит хорошо знакомый программистам Object Pascal.

В настоящее время программистам стала доступна очередная версия пакета Delphi - Borland Delphi 7 Studio. Как и предыдущие версии, Borland Delphi 7 Studio позволяет создавать самые различные программы: от простейших однооконных приложений до программ управления распределенными базами. В состав пакета включены разнообразные утилиты, обеспечивающие работу с базами данных, XML-документами, создание справочной системы, решение других задач. Отличительной особенностью седьмой версии является поддержка технологии .NET.

Borland Delphi 7 Studio может работать в среде операционных систем от Windows 98 до Windows XP. Особых требований, по современным меркам, к ресурсам компьютера пакет не предъявляет: процессор должен быть типа Pentium или Celeron с тактовой частотой не ниже 166 МГц (рекомендуется Pentium II 400 МГц), оперативной памяти - 128 Мбайт (рекомендуется 256 Мбайт), достаточное количество свободного дискового пространства (для полной установки версии Enterprise необходимо приблизительно 475 Мбайт).

Об этом диске

В книге, которая посвящена программированию в конкретной среде разработки, необходим баланс между тремя линиями — языком программирования, техникой и технологией программирования (программированием как таковым) и средой разработки. Уже при первом знакомстве со средой разработки, представлении ее возможностей у автора возникает проблема: чтобы описать процесс разработки программы, объяснить, как работает программа, нужно оперировать такими терминами, как объект, событие, свойство, понимание которых на начальном этапе изучения программирования весьма проблематично. Как поступить? Сначала дать описание языка, а затем приступить к описанию среды разработки и процесса программирования в Delphi? Очевидно, что это не лучший вариант. Поэтому при изложении материала принят подход, в основу которого положен принцип соблюдения баланса между языком программирования, методами программирования и средой разработки. В начале книги некоторые понятия, без которых просто невозможно изложение материала, даются на уровне определений.

Книга, которую вы держите в руках, — это не описание языка Delphi или среды разработки Delphi 7 Studio. Это учебное пособие по программированию на языке Delphi в одноименной среде. В нем рассмотрена вся цепочка, весь процесс создания программы: от разработки диалогового окна и функций обработки событий до создания справочной системы и установочного диска.

Цель этой книги может быть сформулирована так: научить программировать в среде Delphi, т. е. создавать законченные программы различного назначения: от простых однооконных приложений до вполне профессиональных программ работы с базами данных.

Научиться программировать можно только программируя, решая конкретные задачи. При этом достигнутые в программировании успехи в значительной степени зависят от опыта. Поэтому, чтобы получить максимальную пользу от книги, вы должны работать с ней активно. Не занимайтесь просто чтением примеров, реализуйте их с помощью вашего компьютера. Не бойтесь экспериментировать — вносите изменения в программы. Чем больше вы сделаете самостоятельно, тем большему вы научитесь!

Программирование - Delphi - Иллюстрированный самоучитель по Delphi 7 для начинающих - Предотвращение и обработка ошибок

on ТипИсключенияJ do ОбработкаJ;

// здесь инструкции обработки остальных исключений

  • try — ключевое слово, обозначающее, что далее следуют инструкции, при выполнении которых возможно возникновение исключений, и что обработку этих исключений берет на себя программа;
  • except — ключевое слово, обозначающее начало секции обработки исключений. Инструкции этой секции будут выполнены, если в программе возникнет ошибка;
  • on — ключевое слово, за которым следует тип исключения, обработку которого выполняет инструкция, следующая за do;
  • else — ключевое слово, за которым следуют инструкции, обеспечивающие обработку исключений, тип которых не указаны в секции except.

    Как было сказано выше, основной характеристикой исключения является его тип. В таблице 13.1 перечислены наиболее часто возникающие исключения и указаны причины, которые могут привести к их возникновению.

    Таблица 13.1. Типичные исключения

  • Листер плагин на Borland Delphi 7 для начинающих - Все о Total Commander

    Листер плагин на Borland Delphi 7 для начинающих

    Автор: Evgeniy Savich

    Не боги горшки обжигают…

    Наверное, данная статья является не учебным пособием, а попыткой обобщить опыт, полученный автором в процессе разработки плагина xBaseView на Delphi 7, когда пришлось столкнуться с про-блемами, довольно неприятными программисту, привыкшему мощной поддержке VCL среды.

    Задача: создать плагин для просмотра RTF файлов.

    Воспользуемся пунктами меню "File/New/Other" и в окне New Items выбираем значок DLL Wizard и сохраняем проект под именем ListSimple в отдельной папке, т.е. плагин является DLL библиотекой. Через пункты меню "Project/Options" откроем диалоговое окно и в поле Target file extension введем расширение имени плагина: WLX.

    В разделе USES DPR файла модуль Classes изменяем на модуль Windows.

    Плагин должен экспортировать из библиотеки три функции:

    Их тексты находятся в файле ListSimple.dpr.

    ListGetDetectString должна записать в параметр DetectString строку, которая содержит RTF.

    ListLoad вызывает плагин для работы и передает параметры:

    Плагин должен создать свое окно в качестве дочерней по отношению к окну Листера и вернуть дескриптор этого окна. Эту инициализацию мы будем осуществлять в функции ShowRTF:

    ListCloseWindow требует от плагина завершения работы, передавая дескриптор окна плагина. Это освобождение ресурсов мы будем делать в процедуре HideRTF:

    Надо добавить в проект форму, изменить ее имя на fmMain и сохранить модуль формы под именем unMain.pas. Эта форма и есть окно плагина.

    В модуле unMain можно удалить бесполезную глобальную переменную:

    Замечание: ПЛАГИН НЕ ДОЛЖЕН ИСПОЛЬЗОВАТЬ ГЛОБАЛЬНЫЕ ПЕРЕМЕННЫЕ!

    Бросив на форму компонент RichEdit, надо установить ему такие свойства:

    Объект RichEdit1 обеспечивает всю работу с RTF файлом.

    В плагинах часто используется контекстное меню, поэтому надо бросить на форму компонент PopupMenu и создать два пункта меню Help и About, назначив им клавиши F1 и F2, соответственно. Необходимо прикрепить контекстное меню объекту RichEdit1, установив свойство RichEdit1:

    PopupMenu = PopupMenu1.

    Окно плагина является дочерним, следовательно, оно не должно иметь рамку и заголовок. Для этого надо переопределить виртуальный метод CreateParams базового класса TCustomForm. Здесь, мы кроме настройки стилей окна:

    зарезервируем память для хранения указателя на нашу форму:

    Указатель нужен процедуре HideRTF для корректного закрытия плагина. В функции ShowRTF мы сохраняем указатель в WinAPI структуре окна плагина следующим вызовом:

    Позднее мы вытащим указатель из структуры, используя дескриптор нашего окна, который является параметром HideRTF, вызывая функцию GetWindowLong:

    Для работы плагина нам понадобятся следующие данные: дескрипторы окон Тотал Командира и Листера, и режим работы плагина: в обычном окне или на одной из двух панелей Тотал Командира (так называемый Quick View - режим быстрого просмотра). Дескрипторы нужны, чтобы избежать краха по клавишам выхода Alt+X и для реагирования на быстрые клавиши Листера. Эти данные будем хранить, соответственно, в переменных TotCmdWin, ParentWin и QuickView.

    Напишем нестандартный конструктор CreateParented для инициализации этих трех переменных формы и для загрузки RTF файла в наше окно (в RichEdit1). Достаточно иметь два параметра конст-руктора: ParentWindow - дескриптор окна Листера и FileToView - имя RTF файла. Дескриптор окна Тотал Командира мы можем найти по имени класса этого окна (это не VCL класс!) с помощью WinAPI функции FindWindow.

    Однако, тут самое главное то, что этот конструктор перекрывает и вызывает конструктор CreateParented базового класса TWinControl, чтобы создать наше окно в качестве дочернего. Таким образом, инициализационная функция ShowRTF может создать наше окно простым вызовом не-стандартного конструктора CreateParented.

    Немного теорий. Особенностью библиотеки визуальных компонентов Borland VCL является ис-пользование глобального объекта "приложение" - Application. Этот Application имеет скрытое окно, которое должно быть владельцем всех окон приложения, что обеспечивает корректное поведение всех окон программы. И DLL библиотека плагина, и исполняемый EXE файл Тотал Командира имеют собственный глобальный объект Application, следовательно, требуется их синхронизация. Для этого надо присвоить дескриптор скрытого окна объекта Application исполняемого файла к дескриптору объекта Application библиотеки. К сожалению, Тотал Командир, хотя он написан на Delphi и использует все удобства и прелести VCL, не передает нам дескриптор данного скрытого окна. (Может причиной этого является проблема версии компиляторов Delphi?). За неимением оно-го, вместо него будем использовать для синхронизации дескриптор окна Листера, в противном слу-чае, наше модальное окно (например, окно About) поведет себя неестественно, оно появится на панели задач Windows. Эта синхронизация является задачей для функции ShowRTF.

    Чтобы защитить, Тотал Командир от сбоев плагина, будем использовать событие OnException объ-екта Application, которое перехватывает необработанное исключение. Кинем на форму компонент ApplicationEvents, переименуем его на App и создаем обработчик события OnException, куда введем вызов функции MessageBox для выдачи сообщения о сбое. Сохранив проект и модуль, можно уда-лить из формы ненужный компонент ApplicationEvents. Установка адреса обработчика события в Application.OnException также является задачей для функции ShowRTF.

    Все готово для ShowRTF? Увы, "маленькая неточность" в Plugin API Тотал Командира (включая v.6.02) значительно усложняет нашу работу:

    Если пользователь откроет окно плагина, затем переключится на Тотал Командир и закроет Тотал Командир, то мы не получим вызов через ListCloseWindow для завершения своей работы. Вместо этого Тотал Командир или Листер (кто его знает?) уничтожает наше окно вызовом WinAPI функции DestroyWindow, а потом, то же самое попытается сделать наш объект Application, в конечном счете плагин вылетает с нарушением защиты памяти (Access Violation)!

    Если мы не будем делать вышеописанную синхронизацию, этой проблемы удалось бы избежать. Что ж, будем расплачиваться за это и поставим ловушку для перехвата сообщений, которое получа-ет наше же окно, подобно змее, которая пожирает себя за свой собственный хвост! Не будем вда-ваться в подробности Windows API (кому же он нравиться?), вкратце суть дела такова.

    Объявляем тип записи TPlugInfo, где будем хранить данные, которые нужны для закрытия плагина. При инициализации выделяем память под эту запись и заполняем ее. Определяем функцию HookDestroy, который будет перехватывать оконные сообщения, чтобы среагировать на сообщение WM_DESTROY (уничтожение окна). Вызовом SetWindowLong(…, GWL_WNDPROC, …) подменя-ем стандартный обработчик оконных сообщений на функцию HookDestroy. Похожим вызовом SetWindowLong в процедуре завершения HideRTF обратно восстанавливаем прежний обработчик. Важно то, что когда функция HookDestroy поймает сообщение WM_DESTROY, она вызывает про-цедуру завершения HideRTF точно так же, как это делает процедура ListCloseWindow. В результате мы всегда успеваем нормально закрыть окно и убрать за собой, что, к примеру демонстрирует Dispose(p) из HideRTF, освобождая память, выделенную в ShowRTF.

    Остается создать диалоговую форму About, обработчики контекстного меню и обработчик RichEdit1KeyDown, который ловит нажатие специальных клавиш и передает их с помощью PostMessage в соответствующее окно. Если здесь не перехватывать клавиши Alt+X, это приведет к краху плагина. Причем, здесь придется удерживать фокус ввода в RichEdit1, проверяя режим рабо-ты плагина, т.е. значение переменной QuickView.

    Об отладке и тестировании плагина.

    Листер имеет встроенную возможность просмотра RTF файлов, поэтому перед запуском плагина надо отключить ее, сняв пометку у флага RTF в окне Configure Lister.

    Чтобы использовать интегрированный отладчик IDE Delphi, закройте Total Commander, а в Delphi через меню "Run/Parameters" откройте диалог и в поле Host Application введите путь к Total Com-mander с помощью кнопки [Browse]. Теперь можно запускать плагин из-под Delphi.

    Ссылка для скачивания архива с примером здесь

    PS. Уважаемый Читатель! Программирование - многовариантно и я никак не претендую на абсо-лютную истину. В качестве дополнительного материала, предлагаю Вам ознакомиться с исходными текстами плагина xBaseView - "Просмотр DBF, DB, MDB, ADO и ODBC баз данных", который предоставляется с исходными текстами, и где применяется аналогичный подход.

    PPS. Прошу Читателя-Полиглота помочь мне перевести статью на английский язык, чтобы послать ее Кристиану Гислеру, автору знаменитого файл менеджера Тотал Командир, с призрачной надеж-дой, что он предпримет какие-то шаги навстречу нам - VCL программистам.