Вниз
Скачать: CL | DM;

формы в длл   Найти похожие ветки 

 
фыва_олдж_фыва   (2006-09-29 20:03) [0]

Доброго времени суток, ув. мастера!
Хотелось бы узнать в чем проблемы?

***
library ege_forms;

uses
 SysUtils,
 Classes,
 MainForm in "MainForm.pas" {MainForm1};

{$R *.res}

exports CreateMainForm1, //здесь ошибка
       DestroyMainForm1;

begin
end.

***
unit MainForm;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs;

type
 TMainForm1 = class(TForm)

   procedure CreateMainForm1(AppHandle: THandle); stdcall;
   procedure DestroyMainForm1; stdcall;

 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 MainForm1: TMainForm1;

implementation

{$R *.dfm}

procedure TMainForm1.CreateMainForm1(AppHandle: THandle);
begin
  Application.Handle := AppHandle;
  MainForm1 := TMainForm1.Create(Application);
  MainForm1.Show;
end;

procedure TMainForm1.DestroyMainForm1;
begin
  MainForm1.Free;
end;

end.

Нужно чтобы форма mainform1 была  в ege_form.dll.


 
zamtmn ©   (2006-09-29 20:18) [1]

>>exports CreateMainForm1, //здесь ошибка
экспортировать методы нельзя


 
Percent   (2006-09-30 10:02) [2]

Хотелось бы узнать в чем проблемы?

CreateMainForm1, DestroyMainForm1; - не должны быть методами. Это должны быть обычные процедуры или функции, потому что только они и могут импортироваться. У вас же они - методы класса, экземпляра класса - или в каком виде вы их там собирались реализовывать? Непонятно, как вы собираетесь вообще вызывать методы еще не созданного экземпляра класса, не объявив их методами класса? Кроме того, вы передаете Application.Handle (видимо, где-то вычитали?) в модуль, но восстанавливать его в DestroyMainForm1 (я правильно понимаю контекст вашей "программы"?) вы почему-то не собираетесь.

P.S. В вашей программе нет передачи строк между исполняемыми модулями, однако, я подозреваю (я похож на телепата?), что в скором времени вам захочется это сделать. Так что впишите ShareMem в раздел uses, пока не поздно. И читайте внимательнее справку и текст, генерируемый IDE .

P.P.S. Судя по коду вцелом, Вам еще рановато писать программы с использованием плагинов. Судя по коду вцелом, Вам еще рановато писать программы вообще.


 
X9 ©   (2006-09-30 12:30) [3]

Могу посоветовать использовать BPL, с ними проблем будет меньше.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.032 c
3-1157984318
abba
2006-09-11 18:18
2006.11.12
Структуированные записи


15-1161933521
Pazitron_Brain
2006-10-27 11:18
2006.11.12
Как можно повлиять на телевизионный канал?


2-1161705819
Лиля
2006-10-24 20:03
2006.11.12
помогите разобраться


3-1158129656
Дед Маздай
2006-09-13 10:40
2006.11.12
Чем бы заменить suspend?


6-1147464029
ChainikDenis
2006-05-13 00:00
2006.11.12
Сменить номер порта idUDPclient и idUDPServer в RunTime




   Наверх