Почему Indy 9 включен в Delphi 2009? Это безопасно для использования? - PullRequest
6 голосов
/ 28 января 2009

Почему существует папка Indy9 (папка установки по умолчанию C: \ Program Files \ CodeGear \ RAD Studio \ 6.0 \ source \ Indy содержит подкаталоги для "Indy9" и "Indy10") Почему установлены обе версии? Что использует Indy9? Я не думал, что он был обновлён в 2009 году ... Безопасно ли теперь использовать Indy9 с Delphi 2009?

Ответы [ 5 ]

6 голосов
/ 02 февраля 2009

Об этом есть открытый отчет QC , но он виден только сисопам QC.

Статус "open" обычно означает, что принято считать, что это ошибка, а не дизайн.

Реми Лебо - один из разработчиков Indy - сказал это :

Установщик 2009 года поставляется с Indy 9 исходный код, но это не так выбирается во время установки. Eсть обратите внимание в документации, что Indy 9 при необходимости может быть установлен вручную. Но имейте в виду, что Indy 9 не имеет был обновлен для поддержки 2009 года. На данный момент я не уверен, если это будет.

3 голосов
/ 01 февраля 2009

В Indy 9 есть некоторые изменения (по сравнению с версией 2007 года), так что он будет компилироваться в Delphi 2009 (несколько изменений String to AnsiString), но на основании моих тестов он не работает. Он пытается, но не подключается. Если вы хотите, я могу дать вам изменения, которые были добавлены для поддержки Unicode, но я не думаю, что они достаточны.

Я не могу ответить почему. Я мог бы предположить несколько причин, но у меня нет никакой инсайдерской информации.

Безопасно ли использовать? YMMV. В Indy есть много чего, поэтому могут быть некоторые части, которые отлично работают для вашего проекта. Даже простой тест с TIdTCPClient приводил к Socket Error # 11004 каждый раз. То же самое для TIdHTTP. Кажется, что я пробовал MD5 ранее, и он просто получил мусор, но я не уверен в этом.

Ответ: Он был включен по ошибке (допущение), и его использование небезопасно (на основании ограниченных тестов).

Это прискорбно, потому что у Indy 10 тоже есть проблемы, и у меня есть несколько старых приложений, которые используют Indy 9.

3 голосов
/ 28 января 2009

Indy9 для совместимости. В Indy10 произошли некоторые серьезные изменения (ваш код, написанный для Indy9, может не скомпилироваться под Indy10), поэтому у вас есть возможность продолжать использовать Indy9 (я думаю, что установщик предложит и спросит, что Indy вы хотите использовать - по крайней мере, он это сделал с D2007).

Обновление: хорошо, несколько человек правильно прокомментировали, что Indy9 не будет компилироваться с D2009 (из-за новой поддержки Unicode), поэтому, я думаю, я не знаю, почему это так.

2 голосов
/ 31 января 2009

Полагаю, оно было в дереве исходных текстов и было автоматически включено установщиком.

0 голосов
/ 29 января 2009

Имейте в виду, что исходные файлы не используются, если вы не скажете Delphi перекомпилировать их. Если у вас нет версии Enterprise, у вас даже не будет этих папок.

...