Wednesday, October 22, 2008

Ревич Ю. В. Нестандартные приемы программирования на Delphi


Ревич Ю. В. Нестандартные приемы программирования на DelphiКнига призвана помочь программистам разрабатывать полноценные, профессиональные Windows-приложения в Delphi. Показано, как предотвращать повторный запуск приложения, работать с нестандартными окнами, перехватывать нажатие клавиш, создавать резидентные программы в Windows, а также инсталляторы и деинсталляторы программ, осуществлять поиск в документах, работать с СОМ- и USB-портами, шифровать текст и многое другое. Рассмотрены примеры решения этих и многих других проблем, которые встают при создании программы, ориентированной на долго временное использование и распространение. Приведены приемы работы с Windows API. Изложение ведется на примерах поэтапного создания реально работающих практических приложений. Компакт-диск содержит исходные тексты разобранных в книге примеров.

Для программистов.


Введение

О чем и для кого написана эта книга.

Зачем все это?

Что можно найти в книге?

Знания и умения.

Кто такие хакеры?

Как пользоваться книгой.


Глава 1. Ликбез

Некоторые сведения о программировании, Windows и Delphi.

О Delphi и Windows.

О пользовательских интерфейсах компьютерных программ.

Страна советов.

Совет 1 — о справке.

Совет 2 — о комментариях и именах переменных.

Совет 3 — об исключениях.

Совет 4 — о функциональности.

Совет 5 — об интерфейсе.

Совет 6 — о пользовательских установках.

Совет 7 — об украшательствах.

Совет 8 — об автоматизации.

Немного о стилях программирования.


Глава 2. Начинаем работу

Создаем типичное приложение.

Начало.

Компоненты.

Свойства.

Меню, таймер и диалог

Открытие файла.

Перелистывание.


Глава 3. Окна настежь

Нестандартное закрытие и восстановление окна программы.

Иконка в Tray Bar.

Сворачивание приложения в Тгау Ваг при потере фокуса.

Сворачивание приложения в Tray Bar вместо закрытия.

Сворачивание приложения в Tray Bar вместо минимизации.


Глава 4. Погрузочно-разгрузочные работы

Предотвращение повторного запуска и загрузка с заставкой.

Предотвращение повторного запуска приложения.

Демонстрация заставки.

Сворачивание в Tray Bar при запуске.


Глава 5. Чертик из табакерки

Как установить и использовать горячую клавишу.

Горячая клавиша с вызовом всплывающего меню.

Простая программа в виде иконки — отладочный пример.

Резидентная программа для исправления текста в неправильной раскладке.

Заготовка.

Попытка первая — в лоб.

Вариант второй — посложнее.

Вариант третий — ура!


Глава 6. Давим на клану

Некоторые особенности работы с клавиатурой.

Клавиатурный шпион и использование hook.

Как все это устроено.

Клавиатурный шпион.


Глава 7. Язык мой — враг мой

Резидентный переключатель раскладки.

Самый простой переключатель раскладки.

Переключатель с заменой системной иконки — промежуточный вариант.

Переключатель с установками.


Глава 8. Unicode и другие звери

Как работать с документами в различных кодировках.

О кодировках.

Unicode.

Unicode и Win32.

Программа преобразования Unicode в чистый текст.

Преобразование "вручную".

Преобразование через WideString.

Проблема автоматического переключения раскладки в RichEdit.

Автоматическое определение кодировки текстовых файлов.

Форматы в буфере обмена (попытка доработки перекодировщика).


Глава 9. Vis-a-vis

Организация диалогов, операции "один обработчик — много действий", передача фокуса ввода и другие хитрости.

Особенности работы с клавиатурой в Delphi.

Диалог типа MessageBox.

Диалог для установки таймера в StideShow.

Диалог с установкой нескольких параметров и сохранение установок через INI-файлы.


Глава 10. Графика и Windows.

Приемы отображения и преобразования растровых изображений.

Растровые изображения в Windows.

BMP.

Иконки.

Преобразование BitMap в Icon.

Приложение-термометр с иконкой в Tray.

Термометр.

Приложение.


Глава 11. Возобновляемые ресурсы

Как работать с ресурсами исполняемого файла.

Наглядная агитация.

Заставка и номер версии в SlideShow.

Номер версии в приложении без формы.

Произвольные ресурсы.


Глава 12. Бабушка в окошке

Нестандартные окна.

Красивая заставка в SlideShow.

Прозрачная форма и окно flystyle.


Глава 13. Приставание с намеком.

Прокрутка колесиком, режим Drag&Drop, работа с ProgressBar и другие мелочи.

Прокрутка в компоненте ScrollBox.

Полный Drag&Drop.

Программа для поиска файлов.

О работе с индикаторами длительности процесса.


Глава 14. Читать умеете?

Доработка программы Trace.

Составление списка вложенных папок.

Поиск заданной строки.

Полируем почти до блеска.

Запуск файлов из приложения.

Оптимизация чтения через memory mapped files.

Настройки.


Глава 15. Вася, посмотри, какая женщина! Доделываем SldeShow.

Процедура составления списка файлов с картинками

Демонстрация картинок по списку.

Музыка без медиаплеера.

Демонстрация "превьюшек".


Глава 16. About help

Справка и окно О программе.

Основы основ HTML.

Справка и пункт О программе для Trace.

Справка для переключателя клавиатуры.

Справка в SlideShow.


Глава 17. Регистрируем и инсталлируем.

Как создать инсталлятор и деинсталлятор самостоятельно.


Глава 18. Читаем документы Word.

Технология OLE Automation.

Работа с Word через объект Word Basic.

Работа с Word через объект VBA.

Доработка программы Trace.


Глава 19. Любительская криптография

Приемы простейшего шифрования и стеганографии.

Операция XOR и простейшее шифрование файлов.

Стеганография на коленке.


Глава 20. Последовательные интерфейсы СОМ и USB

И немного о программах реального времени под Windows.

Передача данных через СОМ-порт.

О программах реального времени.

Прием и передача одного или нескольких байтов.

Прием и передача в реальном времени.

Прием и передача данных с помощью параллельного потока.

Прием и передача данных с помощью компонента AsyncFree.

Программа для чтения данных с GPS-навигатора.

Эмуляция СОМ-порта через шину USB.


Глава 21. Массивы и память

Работа с большими массивами информации.

Различные способы организации динамических массивов.

Строка типа PChar.

На каждую хитрую гайку. или нетипизированные указатели, как способ организации массивов.

Динамические массивы, строки и TMemoryStream.

Произвольный доступ к большим массивам данных.


Приложение 1. О системах счисления.

Позиционные системы.

Двоичная система.

Шестнадцатеричная система.

Представление чисел в формате BCD.

Модуль Ariphm.

Приложение 2. Виртуальные и скан-коды для 101/104-каоиочнон клавиатуры.

Приложение 3. Коды символов.

Приложение 4. Последовательные порты компьютера СОМ и USB

Принципы передачи информации по интерфейсу RS-232.

Установка линии RTS в DOS и Windows.

Приемы программирования UART в микроконтроллерах на примере AVR.

Преобразователи уровня UART/RS-232.

Схема для преобразования USB/RS-232.

Приложение 5. Описание компакт-диска.

Литература.

Предметный указатель.


Ревич Ю. В. Нестандартные приемы программирования на Delphi. — СПб.: БХВ-Петербург, 2005. — 560 с: ил.

ISBN 5-94I57-686-2, УДК 681.3.06, ББК 32.973.26-018.2, pdf, Ревич, БХВ-Петербург, 2005, программирование, Delphi

__________________________




















































































































































No comments: