В предыдущих темах, таких как Плагины для мобитранса и Плагины-вирусы мы рассмотрели создание dll.
Но хотелось бы поместить в dll целую прогу, а затем уже подгружать её. Для этого зайдите в нужный exe проект, выберите Project>View Source
Для более простого варианта измените в коде проекта слово project на library.
Всё! Готово! Но тогда длл будет исполняться сразу после загрузки. Чтобы испраить это, измените код проекта на следующий:
Code
library Project1; //Тип проекта
uses //Подключаемые модули
Forms,
{Модули ваших форм}
Unit1 in 'Unit1.pas' {Form1};
{$R *.res} //Подключаемый файл ресурсов
{Описание переменных и т.п.}
procedure ExecuteDLL; stdcall; export; //Объявление процседуры
begin
{Код, исполняемый при вызове процседуры запуска}
Application.Initialize; //Иниализация приложения
Application.CreateForm(TForm1, Form1);
{Создание ваших форм}
Application.Run; //Запуск приложения
end;
exports
ExecuteDLL; //Объявление процседур, доступных основной программе
begin
{Текст, который будет исполняться сразу при загрузке dll}
end.
В основную программу, в нужный модуль добавьте в раздел interface
Code
procedure ExecuteDLL; external {Имя dll файла};
Далее Вы сможете запускать программу из dll , написав:
Добавлено (21.01.2009, 16:11)
---------------------------------------------
И ещё - dll НЕ КОМПИЛИРУЕТСЯ НАЖАТИЕМ F9
Для компиляции нажмите Project>Build All Projects