Часть I. Приступаем к работе
   Глава 1. Введение в C++Builder
      Для кого предназначена эта книга 
      Структура книги 
      Новые средства отладки
      Понятие о VCL
      Почему именно VCL
      Предварительные замечания
   Глава 2. События
      Модель делегирования C++Builder
      Использование модели делегирования
      Понятие о событиях
      Получение информации о событии
      Программа EVENTS2: более подробно о событиях
      Программа MENUDEF: меню. WM_COMMAND и WndProc
   Глава 3. Исключения
      Понятие об исключениях
      Теория исключений 
      Классы исключений 
      Базовый синтаксис исключений
      Возбуждение исключений
      Формирование и возбуждение собственных исключений 
      Повторное возбуждение исключения 
      Исключения и деструкторы
      Потоки, исключения и освобождение памяти
      Замена процедуры обработки исключений по умолчанию 
      Применение ресурсов для поиска строк с сообщениями об ошибках
   Глава 4. Классы C++ и модель визуальных компонентов
      Множественное наследование
      Разработка библиотеки без применения множественного наследования 
      Обработка исключений
      Получение информации о типе выполнения программы
      Виртуальные функции 
      Интерфейсы и реализации 
      Статическое размещение
      Конструирование объекта 
 
 Часть II. Реляционные базы данных
   Глава 5. Создание базы данных
      Инструментарий баз данных
      Основы создания базы данных 
      Система именования
      Программы, написанные на SQL: применение объекта TQuery 
      Применение TDataModule 
      Хранилище объектов Object Repository
      Database Explorer
      Работа с SQL Monitor
      Начальные понятия о BDE и псевдонимах
      Псевдонимы
      Замечания по установке TCP/IP 
      Подключение к ODBC
      Компонент TBatchMove 
   Глава 6. Использование объектов ТТаblе и TDataSet
      Визуальные и невизуальные элементы управления баз данных
      Анализ модернизированного класса TDataSet
      Базовые методы объекта TDataSet
      Поля
      Редактирование данных
      Поиск записей
      Интервалы
      Фильтры
      Закладки
      Применение функции обновления 
      Дополнительные сведения о TDataSet и ТТаblе
      Связанные указатели 
      Основы применения TDataSource 
      Проверка состояния набора данных
      Определение состояния набора данных
      Применение объекта TDatabase
      Базы данных без визуального инструментария
   Глава 7. SQL и объект TQuery 
      Свойство SQL
      Объект TQuery и параметры
      Свойство SQL и функция Format
      Формирование отношения "один-ко-многим" с помощью объекта TQuery 
      Связь между несколькими таблицами 
      Свойство RequestLive
      Параметрические запросы и операторы join 
      Операторы ExecSQL, Delete и Insert 
      Специфические свойства TQuery
      Немного позабавимся с языком SQL
   Глава 8. Работа с полями
      Редактор полей (Fields Editor) 
      Поля просмотра
      Операции с объектом TDBGrid в процессе выполнения программы 
      Работа со столбцами объекта TDBGrid
      Объекты для операций с несколькими записями
   Глава 9. Реляционная база данных
      Знакомство с реляционной базой данных 
      Правило номер один: для каждой таблицы создавайте первичный ключ!
      Анализ ключей и индексов в базе данных BCDEMOS
      Зачем нужна ссылочная целостность
      Отношение "один-ко-многим"
      Какие базы данных предпочитает автор
   Глава 10. Плоская база данных
      Введение 
      Демонстрационная программа 
      Разработка приложения 
      Определение внешнего вида приложения
      Просмотр: операции с полем Category
      Задание структуры команд программы 
      Проверка "черновика" программы 
      Создание окончательной версии программы 
      Режим доступа "только-чтение"
      Поиск данных
      Фильтрация данных
      Маркировка полей
      Установка цветов
      Работа с системным реестром
      Перемещение по системному реестру
      Запуск программы
      Применение системного реестра в программе ADDRESS2
      Буфер обмена: вырезание, копирование и вставка
   Глава 11. Сеансы и реляционная база данных
      Данные в реальном мире
      Анализ реляционной программы адресной книги
      Исходный код программы KDADDS 
      Работа с программой KDADDEXPLORER
      Перемещение данных, компонент TBatсhMove, временные таблицы и пустые поля 
 
 Часть III. Сложные базы данных 
   Глава 12. Работа с Local InterBase Server
      InterBase 
      Базы данных и рынок труда 
      Настройка Local InterBase Server
      Настройка псевдонима InterBase 
      Создание баз данных 
      Исследование базы данных с помощью WISQL
      Транзакции 
      Кэшированные обновления 
      Отношения "многие-ко-многим"
      Безопасность и InterBase Server Manager
   Глава 13. Усовершенствованные концепции InterBase 
      О программе MUSIC 
      Создание программы MUSIC
      Создание индексов в таблице MUSIC
      Генераторы, триггеры и хранимые процедуры
      Сравнение правил со стороны сервера и со стороны клиента
      Интерфейс программы MUSIC 
      Работа со страничными формами
      Программный код MUSIC 
      Работа с данными в программе MUSIC
   Глава 14. Инструменты печати 
      Обзор печати в Windows
      Основные сведения об инструменте QuickReport
      Работа с примерами программ
      Программа ADRESS2
      Отчеты в программе MUSIC
      Печать форм
   Глава 15. Соединение клиент-сервер
      Подключение к серверам
      Работа с Microsoft SQL 6.5 
      Работа с Oracle 7.32
      Работа с Informix 7.20
      Работа с Sybase 11.02 
      Работа с DB2 версии 2.1.2
   Глава 16. Многоуровневая база данных
      Многоуровневые приложения 
      C++ Builder и Internet
      Три типа распределенных архитектур
      Почему DCOM противоречива
      Что такое DCOM
      Преобразование существующего проекта в многоуровневое приложение
      Активные формы 
      Работа с САВ-файлами и пакетами
      Каналы и активные формы
 
 Часть IV. Компоненты 
   Глава 17. Наследование
      Объекты
      Создание простых объектов 
      Наследование 
      Виртуальные методы 
   Глава 18. Инкапсуляция
      Инкапсуляция
      Секрет хорошей конструкции объекта
      Конкретный пример
      Свойства
      Классы потоков 
      Подробнее о свойствах
   Глава 19. Полиморфизм 
      Полиморфизм с расстояния в 20 тысяч футов
      Простой пример полиморфизма
      Совместимость полиморфного присваивания 
      Виртуальные методы и полиморфизм
      Полиморфизм в VCL
      Инкапсулированный полиморфизм (обзор основных положений)
   Глава 20. Потомки существующих компонентов
      Теория компонентов
      Создание потомков существующих компонентов
      Расширение модуля Unleash 
      Построение компонентов "с нуля"
      Программный код компонента Clock
      Создание пиктограмм компонентов 
      Работа с инструментами API
      Clock2: расширение редакторов компонентов и свойств 
   Глава 21. Пакеты
      Что такое пакеты 
      Как работают пакеты
      Пакеты и DLL 
      Преимущества использования пакетов
      О файлах, связанных с пакетами 
      Установка пакетов
      Создание пакетов
      Пакет панели прокрутки (TScrollPanel)
   Глава 22. Создание компонентов
      Программа WAREHOUSE
      Иерархия для компонентов Widget и Pallet
      Элементы управления TPallet
      Запросы к базе данных
      Иерархии 
      
 Часть V. C++Builder и Internet
   Глава 23. Компоненты Internet от NetMasters
      Сетевая обработка
      Компоненты Internet от NetMaster
   Глава 24. Компоненты WebBroker
      Компонент TClientSocket
      Компонент TServerSocket
      Компонент TWebDispatcher
      Компонент TPageProducer
      Компонент TQueryTableProducer 
      Компонент TDatasetTableProducer
      Примеры использования каждого компонента WebBroker
      Более подробно о TServerSocket.
   Глава 25. Использование WININET для создания приложений FTP 
      Требования
      Как убедиться, что FTP работает в вашей системе
      Как построить приложение FTP с использованием библиотеки WININET
      После подключения 
      Как получить файл
      Отправка файлов на сервер FTP
      Удаление файлов 
      Создание и удаление каталогов
      Пример элемента управления FTP 
      Создание списков, выводимых пользователем
 
 Часть VI. ActiveX, DCOM и OLE 
   Глава 26. Автоматизация
      Замечания о языке 
      C++Builder и библиотека ATL
      Основы СОМ 
      Построение простых клиента и сервера СОМ 
      Интерфейсы
      Библиотеки типов
      Игнорирование параметров с помощью TNoParams
      Проблемы регистрации 
      Автоматическое направление данных 
      Работа с классом WideStrings
      Получение нескольких интерфейсов от одного CoClass
   Глава 27. DCOM и OLEnterprise 
      Простые клиент и сервер DCOM
      Массивы Variant
      Легковесные удаленные наборы данных
      Данные программы и объекта Automation
      Основы OLEnterprise 
   Глава 28. Создание элементов управления ActiveX 
      Об элементах управления ActiveX
      Средства C++Builder для создания элементов управления ActiveX
      Начальная школа
      Создание элемента управления ActiveX старым способом
      Создание элемента управления ActiveX из компонента VCL 
      Создание элемента управления ActiveX с помощью ATL
      Создание элемента OCX с помощью ATL
      Отладка элементов управления ActiveX 
 
 Часть VII. Графика 
   Глава 29. Графические классы VCL 
      Windows GDI и VCL TCanvas
      Работа с объектом TCanvas
      Кисти 
      Исследование и использование перьев
      Шрифты
      Исследование и использование TCanvas::Penpos 
      Исследование и использование TCanvas::ClipRect
      Исследование и использование TCanvas::CopyMode 
      Исследование и использование TCanvas:: Pixels
      Методы объекта TCanvas 
      Пример программы BRUSHMAIN
      Линия под другим именем 
   Глава 30. Цвета, палитры и графические образы
      Подробно о TColor
      Палитры
      Форматы файлов образов в Windows
      TImage и TPaintBox 
      О растровых рисунках
   Глава 31. Использование DirectDraw
      Что такое DirectDraw 
      Интерфейс DirectDrawSurface
      Использование GDI с DirectDraw
      Использование TBitmap
      Интерфейс IDirectDrawPalette
      Упрощение DirectDraw
      Множество поверхностей и пролистывание страниц
      Построение компонента DirectDraw 
   Глава 32. Использование Direct3D 
      Что такое Direct3D
      Инициализация приложения Direct3D 
      Настройка сцены Direct3D
      Создание модели с помощью IMeshВuilder
      Отображение текстуры
      3D-модель и просмотр текстуры
 
 Часть VIII. Дополнительные возможности 
   Глава 33. Работа с файлами Delphi 
      Суть процесса 
      Использование программного кода Delphi в C++Builder
      Использование компонентов Delphi в C++Builder 3 
      О компиляторе Pascal
      Генерирование заголовков
      Ошибки компоновщика
      Пример проекта
      Смешивание Delphi и C++Builder 
   Глава 34. Внутренняя совместимость с OWL и библиотеками DLL от Microsoft
      Что нельзя делать с DLL, сгенерированными  Microsoft Visual C++ 6 
      Импортирование функций из Microsoft DLL 
      Заключение по созданию DLL
      Поддержка OWL
      Поддержка MFC 
      Стандартная библиотека C++ 
      Что будет с прежними приложениями C++Builder
   Глава 35. Библиотеки динамического и статического связывания и проблемы сторонних разработчиков
      Связывание библиотек и загрузка DLL 
      Понимание DLL
      Создание DLL 
      Исполняемая программа с загрузкой статической DLL
      Исполняемая программа с загрузкой динамической DLL
      DLL и проблемы сторонних разработчиков 
      Искажение имен
      Соглашения о вызовах
      Использование псевдонимов
      Статические библиотеки 
      Статические библиотеки сторонних разработчиков