Содержание материала

Приведенный ниже код демонстрирует это.

Code:

procedure TForm1.DynamicLoadBtnClick(Sender: TObject);

type

THelloWorld = procedure(AForm : TForm);

var

DLLInstance : THandle;

HelloWorld : THelloWorld;

begin

DLLInstance := LoadLibrary('myfirstdll.dll');

if DLLInstance = 0 then begin

   MessageDlg('Невозможно загрузить DLL', mtError, [mbOK], 0);

   Exit;

end;

@HelloWorld := GetProcAddress(DLLInstance, 'HelloWorld');

if @HelloWorld  nil then

   HelloWorld (Self)

else

   MessageDlg('Не найдена искомая процедура!.', mtError, [mbOK], 0);

FreeLibrary(DLLInstance);

end;

 

 В DLL можно хранить не только код, но и формы.

Причем создание и помещение форм в динамическую библиотеку не слишком сильно отличается от работы

с формами в обычном проекте. Сначала мы рассмотрим, каким образом можно написать библиотеку,

содержащую формы, а затем мы поговорим об использовании технологии MDI в DLL.

 

Разработку DLL, содержащую форму, я продемонстрирую на примере.

 

Итак, во-первых, создадим новый проект динамической библиотеки.

Для этого выберем пункт меню File|New, а затем дважды щелкнем на иконку DLL .

После этого вы увидите примерно следующий код:

Code:

library Project2;

{здесь были комментарии}

 

uses

SysUtils,

Classes;

 

{$R *.RES}

 

begin

end.

 

Сохраните полученный проект. Назовем его DllForms.dpr.

 

Добавить комментарий

Не использовать не нормативную лексику.

Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.

ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!


Защитный код
Обновить