• Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

  • Пользаватели которые будут спамить, уходят в бан без предупреждения. Спам сообщения определяется администрацией и модератором.

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

Indy 10 Installation Инструкция

Sascha Оффлайн

Sascha

Заместитель Администратора
Команда форума
Администратор
Регистрация
9 Май 2015
Сообщения
1,562
Баллы
155
Все имена пакетов следуют X0 (где X ваша версия продукта Delphi / C ++ Builder / RAD Studio).

Например:

Delphi / C ++ Builder 6 версии 6.0, так как пакеты Indy являются: IndySystem60, IndyCore60, IndyProtocols60, dclIndyCore60, dclIndyProtocols60

RADStudio 10 Сиэтл версии 23.0, так как пакеты Indy являются: IndySystem230, IndyCore230, IndyProtocols230, dclIndyCore230, dclIndyProtocols230

Обратитесь к

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

для получения полного списка которых номер версии пакета принадлежит к которому выпуск продукта.

Примечание: это соглашение об именах, вероятно, будет изменено в Indy 11.

Прежде чем вы начнете


Некоторые важные примечания перед установкой Indy 10:

1) Пакет SuperCore очень устарели и в настоящее время не могут быть использованы. Даже не пытайтесь собрать или установить его.

2) Там не было Delphi / C ++ Builder v13, поэтому не используйте Инди ... 130 пакетов. Для D / CB / РАУ 2009, использовать пакеты Инди ... 120. Для D / CB / РАУ 2010, использовать пакеты Инди ... 140.

3) В D / CB / RAD 2009-XE, рамки DataSnap Embarcadero в скомпилирован против Инди 10 пакетов, которые поставляются с IDE. Установка новой версии Indy сделает DataSnap непригодным для использования, так как он не сможет больше загружать пакеты Инди, и DataSnap не могут быть повторно конечными пользователями. Если вам нужно использовать DataSnap, то вам нужно будет сохранить оригинальный Indy 10 пакетов для использования в DataSnap проектов. Вы можете использовать отдельную установку Indy 10 для не DataSnap проектов. Это был затронут Embarcadero в D / CB / RAD XE2 так Indy 10 обновлений и DataSnap могут сосуществовать.

4) В D / CB / RAD XE2 до трех лет, и в том числе, Update 3, ошибочное зависимостях на Инди была определена в пакете dclnet160.bpl Embarcadero в. Установка новой версии Indy заставит этот пакет не сможет правильно загрузить в IDE, предотвращая все содержащиеся в нем компоненты (такие как THTTPRIO, TXMLDocument, TWEB * Dispatcher, T * Производитель, TTcp *, TUdp *), а также колдуны и редакторы свойств для них, от появления во время разработки. Компоненты времени выполнения все еще может быть создан динамически в вашем времени выполнения кода, хотя! Embarcadero знает о проблеме, и уже решена проблема для XE3. Удаление вызывает Зависимость от изменения интерфейса в dclnet.dcp и Embarcadero обычно не выпускать изменения интерфейса в обновления продукта, однако изменение является внутренним только кодом Embarcadero и не должно повлиять на конечных пользователей, так Embarcadero надеется, что исправление может быть включено в ближнем будущем обновлении XE2.

5) в D / CB / RAD XE2 Update 4, пакет DCLIPINDYIMPL160.BPL имеет ссылку на IdHeaderCoderUTF блок Инди, который не существует в Инди больше и был заменен с блоком IdHeaderCoderIndy. Установка новой версии Indy вызовет ошибку компоновщика в этом пакете. Согласно Embarcadero, этот пакет является единственным во время разработки пакета, который должен требовать восстановление после обновления Инди с любым видом изменений интерфейса или изменения списка единиц измерения. Источником для этого пакета предоставляется в XE2, пользователи могут найти его в $ (BDS) \ источник \ Indy \ реализация.

Примечание: Изменения в интерфейсе были внесены в Инди начиная с версии XE2, поэтому IndyPeerImpl.pas блок Embarcadero никогда больше не будет компилировать как есть. Обратите внимание на следующее обсуждение на форумах Embarcadero для некоторых из вопросов , которые вы можете столкнуться и как работать вокруг них:

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

.

Примечание: из - за сбоя сервера, указанное связано обсуждение нить была потеряна. Обратитесь к следующей дискуссии: заархивированном

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

, в частности , этот ответ:

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

.

6) в D / CB / RAD XE3, Embarcadero изменил подпись события TIdUDPServer OnUDPRead в комплекте копии Indy 10. Это было сделано в попытке решить убивание связанных отчетов об ошибках QC (# 88816, # 89298, # 89662, # 92067, # 93672, # 94969, # 97943, # 99863, # 103088, # 104825), так что Delphi компилятор будет генерировать RTTI, который позволяет IDE для создания обработчика событий, который совместим как с Delphi и C ++ Builder без ошибок и без необходимости дополнительных изменений RTL / компилятора (которые на самом деле необходимы, чтобы решить основную причину первоначальных ошибок). В частности, параметр AData события OnUDPRead было изменено с динамического массива на открытый массив. Следовательно, подпись параметр теперь отличается, что означает, что уже существующий код пользователя, который использует событие OnUDPRead в более ранних версиях / CB / RAD D больше не будет работать корректно, не обновляется соответствующим образом. Это изменение было одобрено НЕ Инди командой разработчиков, и Embarcadero не применяли их изменения в другие районы Инди, которые страдают от той же проблемой, таких как события TIdTelnet OnDataAvailable и IdIPMCastClient OnIPMCastRead. Для поддержания единого кодовую, эти изменения были объединены в последующие выпуски SVN Инди 10.

7) В D / CB / RAD XE3 +, структура Metropolis UI LiveTile Embarcadero в скомпилирован против Инди 10 пакетов, которые поставляются с IDE. Установка новой версии Indy сделает LiveTiles непригодным для использования, так как он не сможет больше загружать пакеты Инди, и LiveTiles не могут быть повторно конечными пользователями. Если вам нужно использовать LiveTiles, то вам нужно будет сохранить первоначальный Indy 10 пакетов для использования в проектах LiveTile. Вы можете использовать отдельную установку Indy 10 для не LiveTile проектов. Это не удалось решить с помощью Embarcadero еще так Indy 10 обновлений и LiveTiles могут сосуществовать.

Там было несколько сообщений, что при составлении Indy для XE3, компилятор может обратиться с жалобой о пропаже * .otares файлов. Это вызвано {$ R * .otares} заявление в .dpk файлах. Файлы, которые регистрируются в SVN не содержат это утверждение, но, видимо, компилятор может принять решение, чтобы вставить его на свой собственный.Если это произойдет, просто удалите оператор и пересобрать снова. Инди не использует * .otares файлы. Они генерируются IDE, когда он сталкивается неизвестные ресурсы при обновлении проекта с более старой версии IDE.


Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.



Indy 10 Исходный код можно загрузить с

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

. Извлеките исходные файлы в папку по вашему выбору на вашем компьютере.

Если Indy 10 уже установлена, она должна быть удалена в первую очередь. Удалите скомпилированные файлы BPL - dclIndyCoreX0.bpl и dclIndyProtocolsX0.bpl - от IDE с помощью "Компоненты> Пакеты" Установить диалог. Затем удалите все существующие двоичные файлы (IndySystemX0. *, IndyCoreX0. *, IndyProtocolsX0. *, DclIndyCoreX0. *, И dclIndyProtocolsX0. *), А также удалять любые Indy 10 исходные файлы, если они присутствуют. Обязательно проверьте файлы в среде IDE \ Bin \ LIB, и \ исходные папки \ Indy вложенные папки и системные папки ОС.

Delphi компиляции

Вы также можете:

1) использовать командной строки FULLD # .BAT сценарий, который соответствует вашей версии Delphi.

2) Откройте отдельные .dpk файлы в IDE и скомпилировать их в следующем порядке:

    1. IndySystemX0.dpk (в Lib \ System)
    2. IndyCoreX0.dpk (в Lib \ Ядро)
    3. IndyProtocolsX0.dpk (в Lib \ Протоколы)
    4. dclIndyCoreX0.dpk (в Lib \ Ядро)
    5. dclIndyProtocolsX0.dpk (в Lib \ Протоколы)
Если вы столкнулись с следующее сообщение об ошибке компоновщика:

RLINK32: packagename.drf Ошибка при открытии файла

Попробуйте это временное решение:

  1. Удалить все файлы .DCP и .BPL для пакета.
  2. Откройте файл .DPK в IDE, перейдите в свои параметры проекта, и установите сборки в положение "Явная Rebuild" Control.
  3. Перестроить пакет.
  4. Повторите эти действия для каждого зависимого пакета.
Примечание для кросс-платформенной компиляции: источник тока .dpk код устанавливается для компиляции Windows. Если вы хотите собрать Indy 10 для других платформ на версиях Delphi, которые поддерживают это, вы должны сначала изменить проект IndySystem удалить IdStackWindows, блоки IdWinsock2 и IdWship6 и добавить блоки IdStackVCLPosix и IdVCLPosixSupplemental вместо этого, а затем отредактировать проект IndyProtocols удалить блоки IdAuthenticationSSPI и IdSSPI. Возможно, в будущем выпуске, мы будем автоматизировать это с некоторыми предкомпилятору макросов или что-то, но IDE, как правило, не любит людей положить пользовательский код в .dpk файлов, так что это может привести к другим проблемам.

C ++ Builder Компиляция

Инди не включает в себя C ++ .bpk файлы проекта, так что вам нужно будет использовать FULLC # .BAT сценарии командной строки , которая соответствует вашей версии C ++ Builder. Это позволит компилировать .dpk файлы с помощью командной строки Delphi компилятор C ++ Builder (dcc32.exe) или MSBuild ToolChain (msbuild.exe), в зависимости от версии IDE .

После компиляции

В вашем Инди каталоге вы должны увидеть некоторые скомпилированные файлы .dcu. Откройте IDE и перейдите к "> Параметры окружающей среды> Выберите Library Инструменты" вкладки диалогового окна. Теперь добавьте путь к файлам в коллекцию Filepath. Нажмите кнопку ОК.

Теперь установить два пакета времени разработки в IDE в следующем порядке:

    1. dclIndyCoreX0.bpl
    2. dclIndyProtocolsX0.bpl
Не судите за перевод ) ниже оригинал перевод транслита


Indy 10 Installation Instructions



All package names are followed by X0 (where X is your Delphi/C++Builder/RAD Studio product version).

For Example:

Delphi/C++Builder 6 is version 6.0, so the Indy packages are:
IndySystem60, IndyCore60, IndyProtocols60, dclIndyCore60, dclIndyProtocols60

RADStudio 10 Seattle is version 23.0, so the Indy packages are:
IndySystem230, IndyCore230, IndyProtocols230, dclIndyCore230, dclIndyProtocols230

Refer to

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

for the complete list of which package version number belongs to which product release.

Note: this naming convention will likely be changed in Indy 11.

Before you begin


Some important notes before you install Indy 10:

1) The SuperCore package is very outdated and not currently usable. Don't even try to compile or install it.

2) There was no Delphi/C++Builder v13, so do not use the Indy...130 packages. For D/CB/RAD 2009, use the Indy...120 packages. For D/CB/RAD 2010, use the Indy...140 packages.

3) In D/CB/RAD 2009-XE, Embarcadero's DataSnap framework is compiled against the Indy 10 packages that ship with the IDE. Installing a new version of Indy will render DataSnap unusable, as it will not be able to load the Indy packages anymore, and DataSnap cannot be recompiled by end users. If you need to use DataSnap, then you will need to maintain the original Indy 10 packages for use in DataSnap projects. You can use a separate installation of Indy 10 for non-DataSnap projects. This was addressed by Embarcadero in D/CB/RAD XE2 so Indy 10 upgrades and DataSnap can co-exist.

4) In D/CB/RAD XE2 up to, and including, Update 3, an erroneous dependancy on Indy has been identified in Embarcadero's dclnet160.bpl package. Installing a new version of Indy will cause this package to fail to load correctly in the IDE, preventing all contained components (such as THTTPRIO, TXMLDocument, TWeb*Dispatcher, T*Producer, TTcp*, TUdp*), as well as Wizards and Property Editors for them, from appearing at design-time. The run-time components can still be instantiated dynamically in your run-time code, though! Embarcadero is aware of the problem, and has already fixed the problem for XE3. Removing the dependancy causes an interface change in dclnet.dcp, and Embarcadero does not normally release interface changes in product Updates, however the change is internal to Embarcadero's code only and should not effect end users, so Embarcadero is hopeful that the fix can be included in a near-future XE2 Update.

5) in D/CB/RAD XE2 Update 4, the DCLIPINDYIMPL160.BPL package has a link to Indy's IdHeaderCoderUTF unit, which does not exist in Indy anymore and was replaced with the IdHeaderCoderIndy unit. Installing a newer version of Indy will cause a linker error in this package. According to Embarcadero, this package is the only design-time package that should require rebuilding after upgrading Indy with any kind of interface changes or unit list changes. The source for this package is provided in XE2, users can find it under $(BDS)\source\indy\implementation.

Note: interface changes have been made to Indy since XE2's release, so Embarcadero's IndyPeerImpl.pas unit will no longer compile as-is. Have a look at the following discussion on the Embarcadero forums for some of the issues you may run into and how to work around them:

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

.

Note: due to a server crash, the above linked discussion thread has been lost. Refer to the following archived discussion:

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

, in particular this reply:

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

.

6) in D/CB/RAD XE3, Embarcadero changed the signature of the TIdUDPServer OnUDPRead event in the bundled copy of Indy 10. This was done in an attempt to address a slew of related QC bug reports (#88816, #89298, #89662, #92067, #93672, #94969, #97943, #99863, #103088, #104825) so the Delphi compiler would generate RTTI that allows the IDE to produce an event handler that is compatible with both Delphi and C++Builder without errors and without requiring additional RTL/compiler changes (which are actually needed to solve the root cause of the original errors). Specifically, the AData parameter of the OnUDPRead event was changed from a Dynamic Array to an Open Array. Consequently, the parameter signature is now different, which means that pre-existing user code that uses the OnUDPRead event in earlier D/CB/RAD versions will no longer work correctly without being updated accordingly. This change was NOT approved by the Indy development team, and Embarcadero did NOT apply their change to other areas of Indy that are affected by the same issue, such as the TIdTelnet OnDataAvailable and IdIPMCastClient OnIPMCastRead events. To maintain a single codebase, these changes have been merged into subsequent SVN releases of Indy 10.

7) In D/CB/RAD XE3+, Embarcadero's Metropolis UI LiveTile framework is compiled against the Indy 10 packages that ship with the IDE. Installing a new version of Indy will render LiveTiles unusable, as it will not be able to load the Indy packages anymore, and LiveTiles cannot be recompiled by end users. If you need to use LiveTiles then you will need to maintain the original Indy 10 packages for use in LiveTile projects. You can use a separate installation of Indy 10 for non-LiveTile projects. This has not been addressed by Embarcadero yet so Indy 10 upgrades and LiveTiles can co-exist.

There have been some reports that when compiling Indy for XE3, the compiler may complain about missing *.otares files. This is caused by a {$R *.otares} statement in the .dpk files. The files that are checked in to SVN do not contain this statement, but apparently the compiler may decide to insert it on its own. If this happens, just remove the statement and recompile again. Indy does not use *.otares files. They are generated by the IDE when it encounters unknown resources while upgrading a project from an older IDE version.


Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.



Indy 10 source code can be downloaded from the

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

. Extract the source files to a folder of your choosing on your PC.

If Indy 10 is already installed, it needs to be uninstalled first. Remove the pre-compiled BPL files - dclIndyCoreX0.bpl and dclIndyProtocolsX0.bpl - from the IDE via the "Components > Install Packages" dialog. Then delete all of the existing binaries (IndySystemX0.*, IndyCoreX0.*, IndyProtocolsX0.*, dclIndyCoreX0.*, and dclIndyProtocolsX0.*) as well as delete any Indy 10 source files, if present. Be sure to check for files in the IDE's \bin, \lib, and \source folders, \Indy subfolders, and OS system folders.

Delphi Compilation

You can either:

1) use the command-line FULLD#.BAT script that corresponds to your Delphi version.

2) Open the individual .dpk files in the IDE and compile them, in the following order:

    1. IndySystemX0.dpk (in Lib\System)
    2. IndyCoreX0.dpk (in Lib\Core)
    3. IndyProtocolsX0.dpk (in Lib\Protocols)
    4. dclIndyCoreX0.dpk (in Lib\Core)
    5. dclIndyProtocolsX0.dpk (in Lib\Protocols)
If you encounter the following linker error:

RLINK32: Error opening File packagename.drf

Try this workaround:

  1. Delete all .DCP and .BPL files for the package.
  2. Open the .DPK file in the IDE, go into its Project Options, and set the Build Control setting to "Explicit Rebuild".
  3. Rebuild the package.
  4. Repeat these steps for each dependant package.
Note for Cross-Platform compiling: the current .dpk source code is set for Windows compilations. If you want to compile Indy 10 for other Platforms on Delphi versions that support this, you have to first edit the IndySystem project to remove the IdStackWindows, IdWinsock2, and IdWship6 units and add the IdStackVCLPosix and IdVCLPosixSupplemental units instead, and then edit the IndyProtocols project to remove the IdAuthenticationSSPI and IdSSPI units. Perhaps in a future release, we will automate this with some precompiler macros or something, but the IDE usually does not like people putting custom code in .dpk files, so this may lead to other issues.

C++Builder Compiling

Indy does not include C++ .bpk project files, so you will need to use a FULLC#.BAT command-line scripts that corresponds to your version of C++Builder. This will compile the .dpk files using C++Builder's command-line Delphi compiler (dcc32.exe) or MSBuild toolchain (msbuild.exe), depending on IDE version.

After Compiling

In your Indy directory you should now see some compiled .dcu files. Open the IDE and go to the "Tools > Environment options > Select Library" dialog tab. Now add the path to your files into the filepath collection. Click Ok.

Now install the two design-time packages into the IDE in the following order:

    1. dclIndyCoreX0.bpl
    2. dclIndyProtocolsX0.bpl
 
Sascha Оффлайн

Sascha

Заместитель Администратора
Команда форума
Администратор
Регистрация
9 Май 2015
Сообщения
1,562
Баллы
155
перед установкой 10 инди в дельфи 7 надо запустить Fulld_7.bat из распакованной папки \Lib это создаст необходимую для установки компонентов выборку (проще говоря в каталоге появится папка D7) её тоже надо скопировать с Lib\Core, Lib\System, Lib\Protocols и указать путь в дельфи аналогично.
 
K Оффлайн

Kolovrat

Принятый Кодер
Регистрация
10 Апр 2016
Сообщения
38
Баллы
50
полезная статья,так как indy постоянно обновляется,фиксятся разные баги,сам обновлял на семерке не давно
 
Вверх Снизу