Главная страница
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.068 c
2-1161758334
yel
2006-10-25 10:38
2006.11.12
GLScene хочет Python_d7 и dws2Runtime


2-1161842761
_Mouse_
2006-10-26 10:06
2006.11.12
Как скопировать в клипбоард?


1-1159807810
BadTester
2006-10-02 20:50
2006.11.12
Как горячими клавишами переключать пункты в MainMenu?


15-1161242589
Александр Иванов
2006-10-19 11:23
2006.11.12
Америка хочет контролировать все запуски в космос?


1-1159719430
Master_
2006-10-01 20:17
2006.11.12
EXCEL документ в DLL ?