Delphi: .dcu не найден, но код работает на другом компьютере - PullRequest
0 голосов
/ 24 сентября 2018

Я работал над кодом Delphi, который работает на моем компьютере (компьютер A).Я пытаюсь выполнить тот же код на другом компьютере (компьютер B).Поэтому я пошел на этот компьютер B, получил код Delphi через SVN и попытался собрать.

Но я получил ошибку:

[Pascal Fatal Error] URoneParams.pas (7): F1026 Файл не найден: 'CRBatchMove.dcu'

Я хотел проверить, был ли этот .dcu на компьютере A. Но когда я проверял свои источники на этом компьютере A, их было многоиз .dcu, но 'CRBatchMove.dcu' не является одним из них.

Знаете ли вы:

  • , как я могу устранить ошибку .dcu на компьютере B?
  • почему файл CRBatchMove.dcu отсутствует в файлах на компьютере A?

Большое спасибо за вашу помощь!

РЕДАКТИРОВАТЬ 1 Большое спасибо всем за ваши быстрые ответы!

@ MBo и David : .pas также отсутствует, ищу ли я его в файлах компьютера A или в файлах компьютераB.

@ MartynA : Я выполнил поиск по файлам.На обоих компьютерах он возвращает URParams.pas, который использует CRBatchMove.Это хороший знак?:)

Как ты думаешь, что мне делать?Еще раз спасибо!

Ответы [ 2 ]

0 голосов
/ 25 сентября 2018

Единственное объяснение, которое я могу придумать, это если ваш проект настроен на использование пакетов времени выполнения, а код CRBatchMove скомпилирован в один из пакетов времени выполнения, от которого зависит ваш проект.Если это так, попробуйте скопировать пакет (ы) (файлы .Bpl), от которого зависит ваш проект, на компьютер B, при условии, что ваша лицензия на .Bpls позволяет это сделать.

Если ваш проект является стандартнымприложения, даже если вы можете найти файл .Bpl, содержащий код CRBatchMove, копирование его на компьютер B не поможет вам скомпилировать проект на компьютере B, поскольку компилятор Delphi не может извлечь код из .Bpl для его компиляции.в ваш проект.Причина, по которой существует разница между этим и использованием пакетов run-tome, заключается в том, что когда CRBatchMove находится в одном из пакетов, компилятору не нужно генерировать свой код для включения в ваш проект, а только код для вызова кода CRBatchMove во время выполнения.пакет времени.

0 голосов
/ 24 сентября 2018

Устройство CRBatchMove является частью «Универсальных компонентов доступа к данным» от DevArt .

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

При установке компонентов они распространяются в виде пакетов (*.bpl файлы).Пакет может содержать несколько скомпилированных блоков.Вот почему вы не можете найти файл CRBatchMove.dcu.Он содержится внутри dac*.bpl (или аналогичного) файла.

...