Обновление Indy в Delphi
Многие используют Indy 9 или Indy 10.0.X, но на самом деле эти версии являются далеко не актуальными и не лишенными различных багов.
Теперь я расскажу как вам обновить ваши компоненты Indy до актуальных ( на момент написания этой статьи актуальная версия была 10.5.5)
Итак, начнем.
Актуальная версия Indy находится только в SVN репозитории разработчиков, значит нам понадобится клиент SVN под Windows. Наиболее популярным клиентом является tortoisesvn, который можно скачать на . Затем устанавливаем его. Для простоты можем в настройках (после установки) указать язык интерфейса русский. Перегружаемся. Теперь выберем место, где у нас будет располагаться папка с нашими актуальными компонентами, щелкаем правой клавишей мыши на свободном месте в проводнике и выбираем пункт TortoiseSVN->Экспорт… В появившемся окне в поле URL Хранилища впишите адрес репозитория Indy «https://svn.atozed.com:444/svn/Indy10/» в поле «Папка экспорта» выберите папку куда экспортировать компоненты. Затем нажмите ОК, у вас спросят логин с паролем в поле имя пользователя впишите «Indy-Public-RO», пароль указывать не нужно. Теперь дождитесь окончания операции.
Запустите Delphi , выберите в меню «Component»->»Install Packages». В появившемся списке снимите галки с всех пакетов Indy. И затем удалите все пакеты Indy в этом же списке, воспользовавшись кнопкой remove. Затем откройте окно настроек среды: меню «tools->options->Library Win32″ и удалите из строки Library path пути к исходным кодам Indy. Затем добавьте в Library path 3 пути:
-
1. «<папка, куда вы экспортировали репозиторий Indy>\branches\Tiburon\Lib\System«
-
2. «<папка, куда вы экспортировали репозиторий Indy>\branches\Tiburon\Lib\Core«
-
3. «<папка, куда вы экспортировали репозиторий Indy>\branches\Tiburon\Lib\Protocols«
Закройте Delphi. Далее найдите в папке, где у вас установлена Delphi исходные коды Indy. Обычно они располагаются в папке «<папка с Delphi>/sources/Indy» и удалите эту папку. Далее в папке Lib, которая располагается по адресу «<папка установки Delphi>/lib» удалите все файлы Indy (поиск по вхождению «Indy» вам в этом поможет).Теперь запустите Delphi, и откройте пакет «IndySystemX0.dpk» (где X – это ваша версия Delphi), который располагается по следующему адресу: «<папка, куда вы экспортировали репозиторий Indy>\branches\Tiburon\Lib\System» и скомпилируйте его. Далее откройте пакет «IndyCoreX0.dpk» (где X- это ваша версия Delphi) из папки «<папка, куда вы экспортировали репозиторий Indy>\branches\Tiburon\Lib\Core» и скомпилируйте его. Теперь откройте и скомпилируйте пакет «IndyProtocolsX0.dpk» (где X – это ваша версия Delphi) , который располагается в папке «<папка, куда вы экспортировали репозиторий Indy>\branches\Tiburon\Lib\Protocols«.Далее откройте пакет «dclIndyCoreX0.dpk», который располагается в папке «<папка, куда вы экспортировали репозиторий Indy>\branches\Tiburon\Lib\Core» и установите его, также установите пакет «dclIndyProtocolsX0.dpk» из папки «<папка, куда вы экспортировали репозиторий Indy>\branches\Tiburon\Lib\Protocols». Вот и все, поздравляю, теперь у вас установлена актуальная версия Indy.

апреля 12, 2009 at 14:48
Подскажите как его под с++Builder установить?
апреля 12, 2009 at 16:12
На сколько мне известно, версии для c++ на данный момент не существует. Но вы можете это уточнить у автоторов, отправив им письмо.
апреля 20, 2009 at 16:04
Может быть кто-нить поделится ссылочкой на что-нибудь из этой же тематики? Уж очень заинтересовало
апреля 20, 2009 at 23:50
Квэнди, с ботами разговариваешь)) капчу поставь.
апреля 21, 2009 at 00:38
IndyProtocols120.bpl
if ASender.Params.Count > 1 then begin
if not TextIsSame(ASender.Params[1], ‘LAST’) then begin {do not localize}
// LContext.Connection.IOHandler.Discard(LSize);
CmdSyntaxError(ASender);
пришлось закомментить что бы скомпилилось
(IdSMTPServer.pas Undeclared identifier: ‘Discard’)
апреля 21, 2009 at 00:55
прошел квест, спасибо ))
апреля 21, 2009 at 08:59
А у тебя Delphi какая ?
апреля 21, 2009 at 11:58
Viteef,
Ревизия: 3601
Автор: JPeterMugaas
Дата: 11:55:27, 21 апреля 2009 г.
Сообщение:
Fix for compile error.
—-
Изменено : /branches/Tiburon/Lib/Protocols/IdSMTPBase.pas
апреля 24, 2009 at 15:18
Чё то я не пойму
При компиляции
IndySystem70.dpk
Выводит ошибку
[Fatal Error] IndySystem70.dpk(24): Required package ‘rtl’ not found
апреля 24, 2009 at 17:53
Либо не удалили старые пакеты, либо не почистили пути. У вас при компиляции среда находит пути к старым пакетам Indy
апреля 24, 2009 at 19:58
Окей буду смотреть
апреля 27, 2009 at 11:57
У меня наверняка тоже с путями что то. Но блин, все вроде просмотрел, с именем indy больше никаких путей нет, 3 путя прописал. Версия 7…
При попытке откомпилить SVN\branches\Tiburon\Lib\System\IndySystem70.dpk выдет ошибку Could not create output file ‘c:\program files\borland\delphi7\Projects\Bpl\IndySystem70.bpl’
я верно туплю, в чем трабла =)?
апреля 27, 2009 at 12:03
Мать ети :@
У меня тупо небыло каталога Projects\Bpl\
яфшоке
апреля 27, 2009 at 12:31
после обновления начались проблемы с готовыми проектами на Indy… совпадение? Например после компиляции парсер начал отдавать данные в непонятной кодировке, начались глюки при работе с антикапчей… ужос. Поставил:
Ревизия: 3601
Автор: JPeterMugaas
Дата: 11:55:27, 21 апреля 2009 г.
при установке dclIndyProtocolsX0.dpk вылезла ошибка
Точка входа в процедуру @idheadercoderindy@initialization$qqrv не найдена в библиотеке DLL IndyProtocols120.bpl
Delphi 2009…
апреля 27, 2009 at 12:45
тык это. 2009 сама по себе страшно глючная =) я до сих пор боюсь на неё лезть там трабл выше крыши . сорри за офтоп
апреля 27, 2009 at 13:45
Раньше особо неприятных глюков небыло.
Я собсно, только ради авторизации в контакте обновлялся, теперь можно и назад откатить… Пробовал переставлять дельфу, то же самое. Вообще indy не работает, ни старые, ни обновленные
апреля 27, 2009 at 13:45
точнее не знаю как старые вернуть
апреля 27, 2009 at 17:19
Были у меня аналогичные проблемы, решилось дожиданием следующей ревизии и полной переустановкой Indy. (ревизии выходят каждый день на самом деле)
Относительно старых проектов: лучше всего пересоздавать компоненты Indy на форме (большие изменения в списках параметров компонентов). Да и сам принцип работы всех компонентов, с 9-й версии изменился координально, так что надо смотреть в каждом отдельном случае.
апреля 27, 2009 at 17:28
Компоненты конечно удалял и ставил наново. До обновления стояли 10 indy.
Короче, работа стала.
апреля 27, 2009 at 18:30
А когда переставлял компоненты, удалял bpl-файлы ? просто они- то хранятся в других путях и многие забывают про них
апреля 28, 2009 at 03:34
Админ почтовый ящик скажи , у мну есть тема для размышления.
апреля 28, 2009 at 11:05
pdobryakov@gmail.com
апреля 30, 2009 at 00:07
В очередной раз скачал, и все-таки удачно установил последние обновления. Но проблема осталась, –
Кодировка сайта utf-8.
апреля 30, 2009 at 00:15
с сайтами win-1251 та же ерунда, только крякозяблы другие.
апреля 30, 2009 at 10:59
Это надо код смотреть. Пришли пример на почту, посмотрю
pdobryakov@gmail.com
апреля 30, 2009 at 11:46
код тривиальнейший
Memo1.Text:=id.Get(‘http://…’);
апреля 30, 2009 at 11:56
А,да, будут каракули- это связано с автоопределением кодировки, которое было разработано и внедрено в Indy начиная с 10.5 для совместимости с unicode. Для обхода можно или использовать прямые преобразования кодировок, или попробуй просто пользовать stream-мами, и лучше вообще воздержаться от прямого использования строк в Indy
апреля 30, 2009 at 19:47
Раньше делал так – и беды не знал. Как сконвертить-то? :’(
мая 1, 2009 at 12:00
ну во- первых unicode -тип string- на самом деле скрытый класс с своими методами (как раз для конвертации)= ) Или попробуй преобразовать результат к ansistring
мая 2, 2009 at 18:35
К черту. Вернул старые инди.
мая 2, 2009 at 19:22
зря =) волков боятся- в лес не ходить ) Новые как раз с кодировками начали работать правильно ) просто к этому никто не привык )
мая 4, 2009 at 00:07
C CVN можно не париться, там клиент вместе с явой весит около 25 мегов, а сама инди – 7 мб, лучше скачать с их хттр сервера , можно также с фтп и не недо никаких клиентов
мая 4, 2009 at 07:42
Кого- то это вполне устроит, а мне, к примеру, интересно знать когда появляются новые ревизии и что в них меняют, а там вы этого не увидите )
мая 4, 2009 at 23:51
Если надо самые последние релизы и исправления, то фаил для этого и создан, дата последних фикс записанная в нём – это дата релиза, который доступен по http. И нет никакой разницы по отношению к CVN.
мая 5, 2009 at 07:48
Согласен, вопрос больше в личных предпочтениях) А за что вы так упорно SVN называете CVN ?
мая 5, 2009 at 23:34
Простите, виноват, испралюсь. Просто один раз написал CVN и больше не смотрел в начало статьи.
мая 10, 2009 at 19:27
в новой (сегодня качал) версии проблемы с русским? (одни вопросы)
мая 10, 2009 at 22:08
Читай коменты выше.
мая 22, 2009 at 12:12
Обновил 9 на Indy10 использую Delphi 7, теперь вложение принимается, но в нем присутствуют кракозябры, подскажите плиз как лечить?
Вот что во вложении:
, а должен быть нормальный текст:
TheBat принимает вложение без проблем, в чем может быть дело?
мая 22, 2009 at 14:54
Все заработала, когда перешел на версию 10.5.5
июня 7, 2009 at 16:13
Чтото у меня не получается обновить((
У меня Delphi 7
При попытке компиляции бьет ошибку
[Fatal Error] IndySystem70.dpk(24): Required package ‘rtl’ not found
Вроде уже все файлы связанные с инди удалил..
Пути тоже удалил..
И ничего не помогает(((
Помогите пожалуйста. Что еще может мишать обновлению?
июня 21, 2009 at 18:23
[Fatal Error] IndySystem70.dpk(24): Required package ‘rtl’ not found
Всё сделал по пунктам ,но вылазит эта ошибка чт оне так?
июня 22, 2009 at 08:05
Чтобы не пересказывать: здесь объясняется как это исправить
июля 23, 2009 at 13:23
После обновления Indy наконец-то заработала моя программа. Спасибо тебе, мил человек, за доступную инструкцию!
июля 23, 2009 at 22:05
Обновил INDY делал всё по инструкции. Теперь появляется сообщение:
[Fatal Error] Required package ‘indy’ not found
Оно показыватеся даже на пустой форме.
июля 24, 2009 at 12:03
Проблема решилась установкой инди через bat файл
августа 12, 2009 at 14:05
Автору спасибо, все работает!
августа 18, 2009 at 13:48
меню “tools->options->Library Win32″ и удалите из строки Library path пути к исходным кодам Indy. Затем добавьте в Library path 3 пути:
У меня кнопка ‘Add’ не активна, добавить не получается.
CodeGear2009
августа 23, 2009 at 17:47
Здравствуйте.
У меня возникли ошибки при установке dclIndyProtocol20.dpk
В палитре компонентов теперь большинства компонентов инди нету.
Но если объявлять их в модуле программа компилится и работает
Вот скриншот ошибкок:
августа 23, 2009 at 21:22
Не правильно удалили старую версию Indy.
Полностью удалите еще раз Indy (более вниательно: все dcu,pas,bpl,и т.д.) и поставьте еще раз.
августа 31, 2009 at 22:19
Не могу откомпилировать IndySystemX0.dpk, пишет [Fatal Error] IndySystem70.dpk(24): Required package ‘rtl’ not found.
В чем может быть проблема?
сентября 1, 2009 at 07:43
Это говорит только о том, что вы не полностью удалили предыдущую версию indy
сентября 7, 2009 at 19:38
Можно ли:
- после инсталяции компонентов удалить TortoiseSVN?
- установить Indy простым переносом папки с компонентами экспортированными TortoiseSVN (просто на другом компе диалап и веб-инсталляция не прокатит)?
сентября 8, 2009 at 07:47
Wic_,
1. Можно
2. Можно
сентября 13, 2009 at 00:01
поставил все необходимое по инструкции еще в августе, но сегодня пробовал скачать обновление и выскакивает ошибка, мол сервер недоступен. как быть?
сентября 16, 2009 at 07:24
А почему с 9-й версией такие проблемы, не такая она уж и старая?
сентября 16, 2009 at 07:29
Видно в то время были плохо развиты интернет технологии
сентября 16, 2009 at 07:55
Информации по этому поводу в интернете нашел очень много спасибо!
сентября 25, 2009 at 23:16
Can’t connect to host ’svn.atozed.com’: Подключение не установлено, т.к.
сентября 27, 2009 at 19:23
Обновил статью с новыми ссылками.
имя пользователя: Indy-Public-RO
сентября 29, 2009 at 21:54
компилируется всё нормально, но при запуске моей программы выдаёт «Class TidHTTP not found»
что это означает?
сентября 29, 2009 at 22:15
Скорее всего не прописали пути к исходникам инди.
октября 1, 2009 at 06:56
все пути прописал вроде. ко всем исходникам
октября 1, 2009 at 07:37
Это легко проверить: добавьте в uses чистого проекта idhttp.
Удерживая Ctrl щелкните мышкой по названию idhttp если модуль откроется, значит в путях он есть.
октября 11, 2009 at 08:06
У меня при установке последнего пакета выдаёт
Я 120 ставил. У меня CodeGear2009. Мож другой пакет надо?
октября 16, 2009 at 16:57
1. У меня Delphi 2010, какой IndySystemX0.dpk мне использовать?
2. В имеется IndySystemK3.dpk. Для какой версии Delphi он используется?
октября 17, 2009 at 17:01
все сделал как написано, но
- Запустите Delphi , выберите в меню “Component”->”Install Packages”. В появившемся списке снимите галки с всех пакетов Indy. И затем удалите все пакеты Indy в этом же списке, воспользовавшись кнопкой remove.
и как все вернуть??? только новую версию????
ведь удаляются компоненты и в Tool Palette???
чтобы можно было кидать оттуда на форму???
октября 19, 2009 at 08:06
Sly: в 2010 версия компилятора- 13, соответствующие пакеты и ставьте. K3- 3-я версия Kylix
atom: судя по вашей реакции вы вообще рано взялись за это. Вместе с Delphi вам поставляются исходные коды Indy, строенной в IDE. находятся в папке source
февраля 11, 2010 at 15:57
Привет, Квэнди!
Всё делаю по инструкции. Удалил предыдущую версию.
Компилю IndySystem140.dpk. Компилю IndyCore140.dpk и тут появляется ошибка
[DCC Error] E2466 Never-build package ‘.IndyCore140′ requires always-build package ‘IndySystem140′
что это значит?
июня 9, 2010 at 19:19
[...] Обновление Indy в Delphi Posted by elimS on Июн 9, 2010 in Софт | Subscribe Помнится была необходимость обновить indy на delphi. Обновил как раз с помощью той записи которая будет ниже. Хотя для нормальной работы всех библиотек все равно пришлось обратиться за помощью к Пуховому, он поделился несколькми патчиками. За что ему большое спасибо. Сейчас понял что начинаю забывать весь этот процесс. Оставлю ка себе напоминание в виде следующего текста, который взят отсюда. [...]