21-09-2017
УСТАНОВКА БИБЛИОТЕКИ «INDY10» В LAZARUS

Indy 10 содержит много новых возможностей, особенно относящихся к ядру. Ядро Indy 10 сделано еще более абстрактным. Ядро Indy 10 содержит много новых возможностей и улучшений в производительности.

Изменения в Indy 10 19.1.1. Разделение пакетов Indy 10 разделена на два пакета: ядро и протоколы. Пакет ядра содержит все части ядра, компоненты базовых клиентов и серверов. Ядро не реализует протоколы верхнего уровня. Пакет протоколов использует ядро и реализует протоколы верхнего уровня, такие как POP3, SMTP и HTTP. Это позволило команде Indy Pit Crew лучше сфокусироваться на специфических частях. Это также может быть полезно для пользователей, которые реализуют пользовательские протоколы и не нуждаются в пакете протоколов. 19.1.2.

Ядро SSL Возможности SSL в Indy 10 теперь полностью подключаемые. Перед Indy 10, поддержка SSL была подключаемой на уровне TCP, в то время, как протоколы, такие как HTTP, которые используют SSL для HTTPS были вынуждены использовать Indy реализацию по умолчанию из OpenSSL. Indy 10 продолжает поддерживать OpenSSL, тем не менее, возможности SSL в Indy теперь полностью подключаемые к ядру и уровню протоколов, что позволяет другие реализации. В работе находятся SSL и другие методы шифрования от SecureBlackbox и StreamSec. 19.1.3.

Протоколы SSL Indy 10 теперь поддерживает неявный TLS и явный TLS в следующих клиентах и серверах:•POP3•SMTP•FTP•NNTP Поддержка SASL кода была переработана, так что может быть использована с POP3 и IMAP4. Indy 10 теперь поддерживает анонимный SASL, плоский SASL, OTP (one-time-only password system) SASL, внешний SASL и Auth Login. 19.1.4. Клиент FTP Клиент FTP был расширен следующим образом:

Теперь поддержаны команды MLST и MLSD. Поддерживается стандартный формат FTP для списка директорий, который может быть легко разобран на части. Добавлена специальная комбинированная команда для многоблочной передачи. Примечание: это требует, чтобы сервер поддерживал команду COMB, такой как GlobalScape Secure FTP Server или серверный компонент из Indy 10. Добавлена команда XCRC для получения CRC файла. выше. Клиент теперь поддерживает команду MDTM для получение даты последней модифиции •Калькулятор OTP (One-Time-Only password) теперь встроен и OTP детектируется автоматически.

Пример установки «INDY10» в Lazarus

Lazarus установлен. Пример рассматриваем под WINDOWS, установить возможно и в LINUX. Нам понадобится сама библиотека, ее можно взять тут:

http://www.indyproject.org/Sockets/fpc/indy-10.2.0.1.tar.gz

Можно конечно взять и .zip архив, кому что больше нравится, но содержимое у них одинаковое. Распаковываем все это добро и видим внутри два каталога: fpc и lazarus. Первый (fpc) копируем в c:\lazarus\fpc\2.2.4\sources\packages и, для наглядности, меняем ему название на indy. Второй каталог (lazarus) копируем в c:\lazarus\componеnts и тоже переименовываем в indy. Кроме того, нужно скопировать из папки fpc (той, что была в архиве Indy) все файлы с расширением .pas и .inc в каталог с:\lazarus\components\indy\lib\i386-win32.

Теперь, в каталоге с:\lazarus\fpc\2.2.4\bin\i386-win32 находим файлик fpc.cfg. В него необходимо добавить две строчки с путями к созданным каталогам:

-FuC:\lazarus\fpc\2.2.4\source\packages\indy\
-FuC:\lazarus\components\indy\

Все, подготовительный этап окончен, ключ на старт, запускаем Lazarus. Заходим в пункт меню «Package» и выбираем пункт «Open package file (.lpk)», выбираем файл c:\lazarus\components\indy\indylaz.lpk,... жмем «Install», соглашаемся на пересбоку Lazarus и с замиранием сердца ждем окончания процесса (во избежание лишних проблем, о параметрах пересборки лучше позаботится заранее).

Когда Lazarus перезапустится, в палитре появятся новые вкладки со столь желаемыми компонентами Indy10. Подвох заключается в том, что если поставить на форму какой-нибудь компонент (к примеру IdTCPServer) то несмотря на успешную компиляцию проекта сразу при запуске приложения вылетает ошибка вида «Project raised exception class 'External:...». Из информации, найденной на просторах Интернета, удалось понять, что ошибка эта возникает по вине отладчика, как правило из за старой версии. Варианта два: 1) обновить отладчик на более новый; 2) отключить его вовсе. Мне не известно, но скорее всего, в более новых версиях Lazarus данная ошибка не возникает.

Еще одна мелкая неприятность с которой мне пришлось столкнуться — куча .o и .ppu файлов в рабочем каталоге проекта. Решается добавлением в файл fpc.cfg строчки вида:

-FUC:\lazarus\tmp

Всё, можно работать! Надеюсь, что данная инструкция хоть немного вам помогла.

Пример взят с сайта: http://www.freepascal.ru/article/lazarus/20100812185950. И посто- янно находится под рукой.

Класс!
Яндекс.Метрика
Копирование возможно при указании прямой индексируемой гиперссылки
п»ї