Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.12;
Скачать: 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 вся ветка

Текущий архив: 2006.11.12;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.055 c
2-1162113822
Max.66RUS
2006-10-29 12:23
2006.11.12
Отправка почты. Ошибка приложения...


15-1161684138
Slava812
2006-10-24 14:02
2006.11.12
Загадка (срочно нужен ответ)


1-1159539430
Art_infinity
2006-09-29 18:17
2006.11.12
организация доступа к портам...


15-1162011397
Rbn
2006-10-28 08:56
2006.11.12
AutoCad


2-1161749896
LexXL
2006-10-25 08:18
2006.11.12
следим за заголовками