Image

Categories:

Вопрос к уважаемым программистам. Подскажите, плиз.

Пришлось мне в Дельфи-5 DLL-библиотеку написать, а в ней нужно хранить несколько форм. И одна из этих форм должна вызываться из основной программы по кнопке. Вроде бы всё правильно делаю: всё связал-экспортировал, на кнопку навесил процедуру

procedure ShowFormMyParam(AOwner: TComponent);

для динамического создание экземпляра библиотечной формы. В процедуре типа конструктор:

FormMyParam:=TFormMyParam.Create(AOwner); с последующим Шоумодалом и Фри.

Непосредственно вызываю эту процедуру (она-то и берется из DLL) как
ShowFormMyParam(Self); после чего управление - в DLL. Там еще несколько обработчиков всяких щелчков на DLL-форме, и вот они-то, казззлы, не работают.

То есть DLL-форма - отображается, но стоит в какой-нибудь обработчик ткнуть и

"Access violation at address бла-бла in module 'Lib.dll'. Read of address FFFFFFFF"

Похоже, для системы нет всей формы, и обращение в недопустимую память. Уж и так корячился и эдак... Не выходит каменный цветок...:)