Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.17;
Скачать: CL | DM;

Вниз

DataModule и иже с ним...   Найти похожие ветки 

 
Percent   (2006-08-29 15:31) [0]

Файл проекта:

library Conf;

uses
 //...
 unitConsoleDataModule in "unitConsoleDataModule.pas" {CDM: TDataModule},
 unitConfConsole in "unitConfConsole.pas" {ConfConsole: TConfConsole},
 //...


Файл unitConsoleDataModule:

unit unitConsoleDataModule;

interface

//...

type
 TCDM = class(TDataModule)
 {...}
 end;

var
 CDM: TCDM;


Файл unitConfConsole:

unit unitConfConsole;

interface

uses
 Windows,{...} unitConsoleDataModule;

type
 TConfConsole = class(TForm, {...})
  {...}
   constructor Create(Owner: TComponent); override;
 end;

implemetation

constructor TConfConsole.Create(Owner: TComponent);
begin
 CDM := TCDM.Create(Self);
 inherited Create(Owner);
 {...}
end;


В момент компиляции проекта возникает ошибка:

Module "ConfConsole" links to module "CDM" which cannot be found in the current project.
Do you wish to remove/redirect the links to another module?

Если ответить No, начинают сыпаться Access Violation с произвольных адресов.
Если ответить Yes, иногда (не всегда, порой - опять же Access Violation) предлагает список DataModule"й, в котором CDM присутствует, и при выборе его - опять то же сообщение, мол, не найден модуль CDM.
Если ответить Cancel - Сообщает, что не может дальше компилировать.

Уж и не знаю, с какой стороны подступиться...
Какие-то смутные неясные мысли по поводу того, что в проекте нет модулей "ConfConsole" и "CDM",
а есть "unitConfConsole" и "unitConsoleDataModule". Но толку никакого...


 
Anatoly Podgoretsky ©   (2006-08-29 15:44) [1]

Файл проекта:

library Conf;

uses
//...
unitConsoleDataModule in "unitConsoleDataModule.pas" {CDM: TDataModule},
unitConfConsole in "unitConfConsole.pas" {ConfConsole: TConfConsole},

Не уверен, что подобное возможно в файле библиотеки, а именно он у тебя, а не файл проекта.


 
Percent   (2006-08-29 15:54) [2]

Библиотеки суть проекты. :-)

Такое возможно.

Вопрос только в том, что сам датамодуль не "виден" до тех пор, пока его не откроешь визуально; в смысле - саму "форму" датамодуля, та, которая *.dfm. То есть , если датамодуль не открыт - система отказывается его видеть, говорит: из формы ConfConsole есть ссылки на несуществующие компоненты в CDM. Более того, говорит, мол, в объявлении класса TCDM указаны несуществующие компоненты, даже удалить их предлагает автоматически. Но ничего такого не происходит при открытой "форме" датамодуля. Дополнительный вопрос: почему он не "открывается" "автоматически"?


 
Reindeer Moss Eater ©   (2006-08-29 15:56) [3]

>Дополнительный вопрос: почему он не "открывается" "автоматически"?

Вопрос бессмысленный, так как ошибка не в том, что модуль не открыт в IDE. Косяк в чем-то другом


 
Reindeer Moss Eater ©   (2006-08-29 16:07) [4]

Я бы на твоем месте проверил папки, перечисленные в Library Path у IDE и в свойствах проекта на предмет наличия в них старых версий модулей, перечисленных в uses всех модулей проекта.



Страницы: 1 вся ветка

Текущий архив: 2006.09.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.029 c
3-1152866718
KygECHuK
2006-07-14 12:45
2006.09.17
Работа с правами


2-1157022643
kotbazilio
2006-08-31 15:10
2006.09.17
Помогите решить задачу про запрос


2-1156689328
Ezorcist
2006-08-27 18:35
2006.09.17
2 вопроса по String Grid


15-1156363964
Андрей Пазик
2006-08-24 00:12
2006.09.17
Лига Чемпионов.


3-1152278195
antoxa2005
2006-07-07 17:16
2006.09.17
Как можно получить драйвер Gemini ODBC?