[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Архив - только для чтения
Модератор форума: hx  
exe to dll
hxДата: Среда, 21.01.2009, 14:11 | Сообщение # 1
UCTeam Pro Coder
Сообщений: 482
Репутация: 34
Замечания: 0%
Статус: Вне игры
В предыдущих темах, таких как Плагины для мобитранса и Плагины-вирусы мы рассмотрели создание 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 , написав:

Code
ExecuteDLL;

Добавлено (21.01.2009, 16:11)
---------------------------------------------
И ещё - dll НЕ КОМПИЛИРУЕТСЯ НАЖАТИЕМ F9
Для компиляции нажмите Project>Build All Projects

 
  • Страница 1 из 1
  • 1
Поиск:

Приветствуем, Гость


Гость, предлагаем тебе авторизироваться:



Меню


Статистика



© Dinedi.RU, 2007-2024 || Хостинг от uCoz