Большинство единиц я продолжаю работать, полагается на Модуль Данных. Одной из самых раздражающих вещей, через которые я приезжаю, является сообщение об ошибке, говоря мне
Загружаются перекрестные ссылки модуля другой модуль и не может быть сохранен до Модуля Y.
Теперь, я уверен, что существует очень серьезное основание почему CheckNoFixups
повышения эта ошибка при попытке к WriteRootStream
, и сбои для сохранения, что является в действительности Текстовым файлом (и надо надеяться это не сопровождается Catastrophic Failure
где я должен затем перезапустить IDE, в то время как все еще неспособный для сохранения моей работы.), но каково серьезное основание?
Почему я не могу нажать, сохраняют, не открывая anothing текстовый файл, содержащий различные функции и объекты во многом как никакая другая единица? что является настолько особенным о DataModule, который подразумевает, что я не могу сохранить источник, я продолжаю работать, пока это не открыто, почему 45 других единиц в пункте использования не так важны, чтобы они были открыты?
Править: Это - Delphi 2007
Объявление DataModule:
unit DataMD;
TRepDataMod = class(TDataModule)
...
var
RepDataMod: TRepDataMod;
Если DataModule не является частью открытого проекта, объекты с поддержкой данных в вашей форме, которые ссылаются на DataModule, не могут проверьте их ссылку, и я думаю, поэтому сообщение появляется.
Я видел это сообщение только при переносе старого проекта на новую версию Delphi или при переходе на новый набор компонентов базы данных. В обычных обстоятельствах я не сталкивался с этим сообщением.
В более ранних версиях я не видел сообщения и форму / модуль можно было сохранить, но ссылки, которые были в вашем dfm, были волшебным образом удалены.
У меня такая же проблема ( Delphi 7).
У меня есть список изображений для модуля данных для использования во всем приложении. Это происходит после компиляции, если есть синтаксическая ошибка. IDE открывает файл (pas), и я могу исправить ошибку.
Но попытка сохранить файл показывает это сообщение («Модуль 'XXX' ссылается на модуль 'YYY', который не может быть найден в текущем проекте. Вы хотите удалить / перенаправить ссылки на другой модуль?»). XXX - это сам файл, а YYY - это модуль данных. Модуль данных включен в проект, и ответ «Да» на этот вопрос приведет к удалению всех ссылок в файле dfm.
Таким образом, единственное решение - нажать «Нет», что в основном сохраняет файл pas и закрывает файл в - на этот раз нажав «Нет» на вопрос, следует ли сохранить файл (на самом деле pas уже сохранен) .
Я уже пробовал различные обходные пути, но все еще борюсь.