Въведение в синапсите - статия

влизане

Често да критикуват програмистите на Делфи, с помощта на прост и евтин трик. Както ние, истинските програмисти пишат всички кодови дръжките на вас и delfisty, скицирани и всички компоненти.

Всъщност, целият код, дръжки само запис на фанатици и тези, които нямат нищо общо. Един нормален програмисти използват готови библиотеки. Delphi компонент всъщност е прекалено са истинските библиотеки, просто написани за справяне с някои функции, Delphi.

Но за да го докаже, за да ги безсмислено - все още ще се противопоставят (че са се съгласили?). Ще отидем в другата посока - да се използват най-не е да се яде на библиотеката - и да си позволиш да медитира.

Инсталиране на библиотеката

Първо трябва да изтеглите библиотеката от сайта. Или просто да вземем в приложените към архива на статия. Сега разопаковането някъде във временната директория. Създаване на папка за настаняване на самата библиотека - правя това е обикновено е директория C: \ Program Files \ CodeGear \ Компоненти \ Synapse. Искам да кажа, аз не се колебайте да се създаде директория в директорията на Delphi и сложи на техните библиотеки / компоненти. Докато някои смятат, че идеологически погрешно - можете да създадете директория за библиотеки и на други места, стига да не е отстранена след това. Второто условие - че пътят съдържа само латински букви. В противен случай, има проблеми с някои компоненти. Един www.delphi.int.ru посетители прави оригинала - тя съхранява всичко това точно на вашия работен плот. И после се оплакват, казват те, нищо не работи.

Копирайте новосъздадената папка, в съдържанието на папката източник \ ИЪ от разопаковани архива.

Една последна стъпка - обясни Делфи, имаме нова библиотека. За да направите това, просто трябва да се регистрирате в директориите за търсене.

  • File -> Затваряне на всички. Ако имате нужда да запишете текущия проект (тази осигуровка действие не боли).
  • Инструменти -> Options. В диалоговия прозорец, който се появява в дървото в ляво откриваме възможности на околната среда -> Delphi Options -> Библиотека - Win32.
  • Търсим път поле сърфиране. Натиснете бутона [...] от дясната му страна.
  • В бутона на прозорец, гледащ отново [...] и като щракнете върху него, изберете директорията, където сте записали съдържанието на библиотеката и натиснете OK.
  • Сега Добавете и ОК, за да затворите прозореца.
  • Повторете предходните три стъпки, само за Пътя на полето библиотека.

Ако имате Delphi 7 или по-рано, трябва да се намери елемент от менюто Tools Околна среда Опции и след това върху раздела Библиотека. Всичко останало - е много подобна.

Направи го по прост начин

По този начин, библиотеката е инсталиран, че е време да напиша нещо обикновен. Например, да се научат да изтеглите страница от Memo Интернет и дисплей. Ние създаваме нов проект, сложи във формуляра за Memo, изпънете правилно и включване на лентата за превъртане зададени свойства плъзгачите = ssBoth. Поставете формата на бутон като кликнете два пъти върху него, да създавате манипулатор. Но преди написването на водача, трябва да добавите една единица в списъка с приложения, а именно - httpsend.

И сега самата манипулатор. Пригответе се да видите супер комплекс код? Ето това е - един ред:

Това не е така просто, нали? Но в действителност, това е по-добре да напиша малко по-сложно:

Този код е необходим само за проверка за грешки, но това често е важно. Интересното е, че ако тя няма да бъде в състояние да изтеглите, няма грешки няма да бъдат просто функцията връща лъжа. Понякога това е много удобно, особено в потоци.

Забележително и следния факт. От библиотеката е обвивка на конвенционалните леки контакти, това се отразява на размера на изпълнимия файл. Същият пример пренаписана използване Indy тежи с 30% повече - и това е тежък аргумент (за да бъдем по-точни, на две фигури изпълнимия файл тежах 404 и 530 KB).

По-сериозен?

Сега усложни задачата. Да предположим, че трябва да изтеглите страница на файл / ресурс, който използва SSL. В случай на Indy е много трудно да се направи. По-точно, да напише молба, че е лесно, но за да работи. То или изисква OpenSSL библиотеката, и казва, че библиотеката не е намерен подходящ. Това решава проблема за сваляне на "правилните версии на библиотеките". Но дори и с тях, все пак това е проблем. Ако приложението е да се използва "грешния библиотека", след което рестартирайте компютъра да работи, ще бъде нищо. Или е заредена, това не е така. Защо това е - допускане е, но не искам да се разбере. Има по-добри неща за вършене.

И сега остава да се направи в нашата малка програма една промяна - добави към списъка на приложения файл ssl_openssl. И все пак. Сега можете да изтеглите както на HTTP, HTTPS и с. библиотеката себе си ще се разбере с всичко!

Искам да се вземе проба по-трудно!

В самия код, вижте прикачения файл.

Този път дори не използва потоци - Не исках да усложни пример. Кодът от интерес за две точки. Първият - "пречистване" на резултата от ненужни текста и "русификацията". Това означава, че вместо неясни английски думи се заменят с българина.

На второ място - е изборът на съдържанието на изтеглените страниците на съответната информация. Този път аз го направих без регулярни изрази, въпреки че е било възможно за тях.

Като цяло, няма нищо в код обезсърчително, и не считам, че е необходимо да го обясня. Само погледнете и всичко ще се разбере.

Не забравяйте, че когато разтворът започва твърде сложно - това означава, че сте избрали грешен начин да се разтвори, не повече. Един мой приятел, опитвайки се да изтеглите сайта на HTTPS и Promuchavshis няколко дни, по мое предложение за използване на Synapse, каза: "Не, това е достатъчно от мен, една дори по-добре, аз ще напиша на нетните гнезда уморени от тези занаяти ми ще работят ...." Между другото, той е писането за :-) няколко седмици и се кара крива Windows, която той постоянно се намесва. Но ние знаем къде се крие истината.