Инсталиране на библиотеката 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 Core Възможностите за 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 вече поддържа Anonymous SASL, Flat SASL, OTP (система за еднократна парола) SASL, External SASL и Auth Login. 19.1.4. FTP клиент FTP клиентът е разширен, както следва:

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

Lazarus е инсталиран. Разглеждаме пример под WINDOWS, възможно е да го инсталирате в LINUX. Имаме нужда от самата библиотека, можете да я получите тук:

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

Сега в директорията c:\lazarus\fpc\2.2.4\bin\i386-win32 намираме файла fpc.cfg. Трябва да добавите два реда към него с пътищата към създадените директории:

Всичко, подготвителният етап приключи, ключът е да започнем, стартираме Lazarus. Отиваме в елемента от менюто „Пакет“ и избираме елемента „Отваряне на пакетния файл (.lpk)“, избираме файла c:\lazarus\components\indy\indylaz.lpk. щракнете върху „Инсталиране“, съгласете се с рестартирането на Lazarus и изчакайте със затаен дъх края на процеса (за да избегнете ненужни проблеми, по-добре е предварително да се погрижите за параметрите за възстановяване).

Когато Lazarus се рестартира, в палитрата ще се появят нови раздели с такиважелани компоненти на Indy10. Уловката е, че ако поставите някакъв компонент във формуляра (например IdTCPServer ), тогава въпреки успешната компилация на проекта, грешка като „Проект повдигна клас изключение „Външен. ". От информацията, намерена в Интернет, успяхме да разберем, че тази грешка възниква по вина на дебъгера, обикновено поради старата версия. Има две опции: 1) надграждане на дебъгера до по-нов; 2) изключете го напълно. Не знам, но най-вероятно в по-новите версии на Lazarus тази грешка не се появява.

Друго малко раздразнение, с което трябваше да се справя, беше куп .o и .ppu файлове в работната директория на проекта. Това се решава чрез добавяне на ред като този към файла fpc.cfg:

Всичко, което можете да направите, е да работите! Надявам се това ръководство да ви е помогнало малко.