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

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

При отправке данных по сети чаще всего возникают проблемы с определением размера отправляемых данных. Если к строке должны добавляться символы перевода каретки, начинающие программисты забывают добавить 2 байта к размеру отправляемых данных. Внимательно следите за этим! В следующей главе мы будем рассматривать такие примеры. Обратите внимание, как в SMTP-клиенте на Windows API подготавливается строка для отправки. С помощью этого метода вы никогда не ошибетесь в размере отправляемых данных.

Ошибки размера данных достаточно просто определить с помощью того же "сниф-фера", если не передаются читаемые символы. Перевод строки - это нечитаемые символы #13 и #10, поэтому их чаще всего и упускают из виду.

4.14. Опции сокета || Оглавление || Сетевая практика


Delphi в шутку и всерьез: что умеют хакеры



Новости за месяц

  • Декабрь
    2021
  • Пн
  • Вт
  • Ср
  • Чт
  • Пт
  • Сб
  • Вс
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31