Глубины Indy



Глубины Indy

От переводчика
Введение

Об этой книге
Обратная связь
Обновления
Примеры
Другие ресурсы
Для дальнейшего чтения
Благодарности
Примечание
Бесплатная поддержка
Платная, приоритетная поддержка

Отчеты об ошибках
Winsock
Обзор
Стек протоколов TCP/IP
Клиент
Сервер
IP адрес
Порт
Протокол
Сокет

Имя узла
Сервис DNS
Протокол TCP
Протокол UDP
Протокол ICMP
Файл HOSTS
Файл SERVICES
Localhost (Loopback)
Программа Ping
Программа TraceRoute

LAN
WAN
IETF
RFC
Кодовые потоки (thread)
Fork
Winsock
Стек протоколов
Сетевой порядок байт
Путь Indy

Методология Indy
Различия Indy
Обзор клиентов
Обзор серверов
Потоки
Модели программирования
Другие модели
Блокирующий режим
Неблокирующий режим
История Winsock

Блокирующий режим это не смертельно
Достоинства блокирующего режима
Недостатки блокирующего режима
Компонент TIdAntiFreeze
Достоинства неблокирующего режима
Недостатки неблокирующего режима
Сравнение технологий
Файлы против сокетов
Сценарий записи в файл
Блокирующий режим записи файла

Неблокирующий режим записи файла
Сравнение записи файлов
Почти как файлы
Базовый клиент
Обработка исключений
Исключения это не ошибки
Компонент TIdAntiFreeze
Пример - Проверка почтового индекса - клиент
Проверка почтового индекса - протокол
Объяснение кода

Обзор
Надежность
Широкополосносные сообщения (Broadcast)
Размеры пакетов
Обзор
Схема с подтверждениями
Схема с последовательностями
Компонент TIdUDPClient
Компонент TIdUDPServer
Обзор

IP Address
Поле Message
Use a Custom Message
Show Any Key
Show Trademark
Клавиша Show
Клавиша Clear
Установка
Исходный код
Клиент RBSOD

Чтение и запись
Функция AllData
Процедура Capture
Функция CurrentReadBuffer
Свойство InputBuffer
Функция InputLn
Процедура ReadBuffer
Функция ReadCardinal
Функция ReadFromStack
Функция ReadInteger

Функция ReadLn
Функция ReadLnWait
Функция ReadSmallInt
Процедура ReadStream
Функция ReadString
Процедура ReadStrings
Функция WaitFor
Таймауты чтения
Функция SendCmd
Процедура Write

Процедура WriteBuffer
Процедура WriteCardinal
Процедура WriteHeader
Процедура WriteInteger
Процедура WriteLn
Процедура WriteRFCReply
Процедура WriteRFCStrings
Процедура WriteSmallInt
Процедура WriteStream
Процедура WriteStrings

Функция WriteFile
Буферизация записи
Работа транзакций
События OnWork
Управление своими собственными рабочими транзакциями
Обнаружение разъединения
Скажем прощай
А нужно ли вам реально знать это?
Я должен знать это немедленно!
Keep Alives

Пинги (Pings)
Исключение EIdConnClosedGracefully
Почему случаются исключения на серверах?
Почему это исключение?
Это ошибка?
А когда это ошибка?
Простое решение
Реализация протоколов
Терминология протокола
Простой текст (plain text)

Команды (commands)
Ответы (reply)
Отклики (response)
Переговоры (conversations)
RFC - определения
RFC - коды состояния
Примеры
RFC – отклик (response)
RFC - транзакции
Класс TIdRFCReply

Класс ReplyTexts
Курица или яйцо?
Определение пользовательского протокола
Симуляция другой стороны (Peer Simulation)
Протокол получения почтового кода
Команда Help
Команда Lookup
Команда Quit
Содержание







Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий