Краткое содержание
Предисловие
Глава 1. 32-разрядные консольные приложения
Глава 2. 32-разрядные DLL в Delphi - когда, зачем и как
Глава 3. Перетаскивание: как это делается в Windows
Глава 4. Перетаскивание: как это делается в OLE
Глава 5. Компонент Winsock в Delphi
Глава 6. CsShopper: FTP-клиент
Глава 7. FTP-сервер
Глава 8. Трехмерные фрактальные ландшафты
Глава 9. Проблемы TPersistent и несколько полезных советов
Глава 10. Модели, виды и фреймы
Глава 11. Таинственный модуль Math
Глава 12. Динамический пользовательский интерфейс
Глава 13. Иерархические структуры в реляционных базах данных
Глава 14. Пропавший оракул
Глава 15. Улика, найденная в грязи
Глава 16. Возвращение оракула

Содержание

От редактора перевода
Предисловие
Глава 1. 32-разрядные консольные приложения
Консольные приложения
Фильтры
Консольные приложения на Delphi
Hello, Delphi
Сохранение шаблона программы
Консольный ввод/вывод
Программа-фильтр на Delphi
Базовая программа-фильтр
Обработка командной строки
Параметры командной строки
Универсальный анализатор командных строк
Тестирование модуля CmdLine
Несколько слов о структуре программы
Файловые операции чтения/записи
Использование шаблона Filter
Критика
Глава 2. 32-разрядные DLL в Delphi - когда, зачем и как
Что такое DLL и зачем они нужны?
Как это сделать?
Создание DLL
Вызов функций DLL
Присоединение DLL на стадии выполнения
Где Windows ищет DLL
DLL: недостатки и предостережения
Создание форм в DLL
Гибкое кодирование
Создание текстового редактора
Совместное использование памяти в приложениях
Переменная DLLProc
Продолжаем!
Глава 3. Перетаскивание: как это делается в Windows
Перетаскивание
Что делать с кодом Windows?
Обработка сообщений Windows
Нестандартные элементы
Субклассирование
Определение интерфейса
Реализация нового интерфейса
Снова о субклассировании
Глава 4. Перетаскивание: как это делается в OLE
Что такое OLE?
Наследование OLE и TInterfacedObject
Требования к перетаскиванию OLE
Обязанности клиента
Как работает программа
Что дальше?
Хочу быть сервером!
Обязанности сервера
Требования к интерфейсу IDropSource
Интерфейс IDataObject хранит данные
Реализация сервера
OLE!
Глава 5. Компонент Winsock в Delphi
Что такое Winsock?
Изучаем CsSocket
Приложение RESOLVER32
Как меня зовут?
Какой у тебя адрес?
Как тебя зовут?
Асинхронное получение адреса
Кто находится по этому адресу?
Отмена операции WSAAsync
Преобразование портов и сервисов
Поиск сервиса
Преобразование протоколов
Использование свойства Tag
Стоит ли блокировать?
Глава 6. CsShopper: FTP-клиент
Вас обслуживают?
Компонент CsShopper
Организация вывода
SHOPPER32 за работой
Профили SHOPPER32
Подключение
Закрываем соединение
Прием и передача файлов
Изменение каталогов для пересылки файлов
Передача файлов
Пересылка нескольких файлов
Асинхронная пересылка файлов
Положи на место!
Заключение
Глава 7. FTP-сервер
CsKeeper за работой
Конфигурирование KEEPER32 на вкладке Options
Вопросы безопасности
Где и как хранится конфигурация
Открываемся!
Вывод списка каталогов и файлов
Создание прослушивающего сокета
Как вас обслуживают?
Вход строго по одному
Мне, пожалуйста, вот это…
Сохраните, пожалуйста…
Закрыто на переучет
Глава 8. Трехмерные фрактальные ландшафты
Разделяй и сгибай
Проблема общих сторон
Треугольный массив
Изгибы
Сначала построить, потом выводить
Генерация и отображение ландшафта
Процедура Project()
Каркасный режим
Режим с заполнением
Режим со светотенью
Создавайте собственные миры
Глава 9. Проблемы TPersistent и несколько полезных советов
Читаем, чтобы записывать?
Разумные решения
Использование RDTSC для измерения временных интервалов на Pentium
Перетаскивание текста в списках
Строковые коллекции и списки
Установка приложений - дело рук самих приложений
Использование inherited с переопределенными свойствами
Копирование экрана
Группы переключателей с индивидуальной блокировкой
Захват системной палитры
Работа с буфером как с потоком
Оперативное изменение подсказок
Использование макросов в редакторе Delphi
Потоки и TPersistent
Отображение перетаскиваемого объекта в Delphi 2 и 3
Глава 10. Модели, виды и фреймы
Практическая реализация видов
Шаблоны компонентов и составные компоненты
Наследование форм
От внедренных форм к видам
Почему интерфейсы?
Интерфейсные формы
Проблемы с подсчетом ссылок в Delphi 3
Абстрактные, контролируемые и неконтролируемые виды
Редакторы моделей
Пример модели
Другие применения
Глава 11. Таинственный модуль Math
Три веских довода в пользу модуля Math
Динамические данные и статические объявления
Slice спешит на помощь
Создание компонента DBStatistics
Получение доступа к данным
Локальное хранение данных
Извлечение данных
Статистическая обработка
Тестирование компонента DBStatistics
Ошибки в модуле Math второй версии Delphi
Пропавшая функция Poly
Сводка функций модуля Math
Тригонометрические функции и процедуры
Арифметические функции и процедуры
Финансовые функции и процедуры
Статистические функции и процедуры
Глава 12. Динамический пользовательский интерфейс
Пример приложения «Настрой меня сам»
Строим «мини-Delphi» для пользователей
Перемещение элементов
Масштабирование элементов
Работа с контекстным меню
Отмена изменений
Изменение порядка перебора элементов во время выполнения
Изменение других свойств
Изменение свойств в инспекторе объектов
Сохранение внесенных изменений
Загвоздка: компоненты со свойствами-компонентами
Другой подход к потокам
На пути к гибким пользовательским интерфейсам
Глава 13. Иерархические структуры в реляционных базах данных
Иерархия «один-ко-многим»
Простейший пример иерархических рекурсивных данных
Использование TQuery для определения набора подчиненных записей
Вложенные рекурсивные иерархические данные
Перемещение по иерархии
Отображение данных
Использование данных
Поиск записей
Применение иерархических данных в запросах
Целостность структуры и циклические ссылки
Использование SQL
Проблема произвольной вложенности
Использование сохраненных процедур
Компоненты TreeData
Работа со свойствами элементов TreeData
Внутреннее строение компонентов TreeData
TreeDataComboBox
TreeDataListBox
TreeDataOutline и TreeDataUpdate
Главный секрет иерархий
Глава 14. Пропавший оракул
Вечером в конторе
Мольба о помощи
Пропажа
На другом краю города
Классическое перетаскивание
Перетаскивание: как это делается
Сброс груза
Упаковка таблиц Paradox и dBASE
Демонстрационная программа
Снова в конторе Эйса
Смысловые оттенки
Воспроизведение WAV-файла
Звук в приложении
Упущение
Глава 15. Улика, найденная в грязи
Масштабирование форм
Создание заставок
Эйс получает ответ
Глобальный доступ к данным в приложении
Потрясающее открытие
Прогулка по Win95
Внимание, сейчас вылетит птичка…
Модуль WalkStuf
Итоги
Глава 16. Возвращение оракула
Совместное использование обработчиков событий
Первая попытка
Тернистый путь познания
И последнее замечание…
Использование файлов в памяти
Перед началом
Запрет выполнения программы
Плавающие панели инструментов
Эйс выходит победителем
Эпилог
Авторы: Д. Тейлор, Дж. Мишель, Дж. Пенман
Rambler's Top100Rambler's Top100
Используются технологии uCoz