Как я могу установить свою собственную копию Indy10 из исходного кода в Delphi XE4, если я получаю неверную ошибку приложения win32?

Используя последние исходные коды Indy10 от Subversion, устанавливая в Delphi XE4, я получаю эту ошибку, когда пытаюсь установить "dclIndyProtocols180.bpl":

Error: 
Can't load package C:\dev\..\comp\Indy10\Lib\Output\BPI\Win32\Debug\dclIndyProtocols180.bpl.
%1 is not a valid Win32 application.

Рассматриваемая папка BPI \ Win32 \ Debug содержит следующие файлы:

dclIndyCore180.bpl
dclIndyProtocols180.bpl
IndyCore180.bpi
IndyCore180.bpl
IndyProtocols180.bpi
IndyProtocols180.bpl
IndySystem180.bpi
IndySystem180.bpl

Как мне это исправить или обойти? Я не совсем новичок в Indy или Delphi, но каждый раз, когда выходит новый выпуск delphi, есть интересные сюрпризы для тех из нас, кто предпочитает строить из исходного кода и отслеживать подрывную деятельность, а не использовать тот случайный момент времени, который поставляется с Установщик Delphi XE4.

В качестве общего побочного вопроса: есть ли какое-либо место, где отмечается или записывается статус кода подрывной деятельности проекта Indy по сравнению с тем, что Embarcadero поставляет в своих продуктах?


person Warren P    schedule 08.05.2013    source источник
comment
Первое, что приходит на ум (даже если путь указывает Win32), это то, что это может быть 64-битный скомпилированный bpl.   -  person Mirco Ellmann    schedule 08.05.2013
comment
Да, я думаю, это потому, что Indy10 теперь нацелен на Win32, Win64 и iOS, а его пути вывода DCP и BPL по умолчанию - это новые структуры подкаталогов в стиле барокко. Я считаю, что, вернув цели Win32 обратно к классическим $(BDSCOMMONDIR)\Bpl и $(BDSCOMMONDIR)\Dcp, я смогу заставить Win32 построить, и это все, что меня волнует.   -  person Warren P    schedule 08.05.2013
comment
отвечая на ваш побочный вопрос: ответ находится в журнале svn, Indy 10.6.0 (выпуск XE4) - это ревизия 4990 в svn. текущая ревизия - 5004   -  person whosrdaddy    schedule 08.05.2013
comment
Да, это будут 64-битные библиотеки с таким сообщением об ошибке.   -  person David Heffernan    schedule 08.05.2013
comment
В SVN от Indy различные выпуски IDE (за исключением XE3, пока) начиная с 2010 г. были помечены тегами, чтобы вы могли видеть, какая версия SVN поставлялась с какой версией IDE.   -  person Remy Lebeau    schedule 08.05.2013
comment
Спасибо, я не знал о тегах.   -  person Warren P    schedule 09.05.2013


Ответы (1)


По умолчанию новый пакет в Delphi может автоматически быть 64-битным, или вы могли создать зависимость как 64-битный BPL, но не переключились на 32-битный для этого BPL и перестроили его.

Также у вас могут быть папки в вашем пути к библиотеке, которые позволяют 32-битным и 64-битным BPls пытаться загружать друг друга, вызывая эту проблему.

person Warren P    schedule 08.06.2013