Главная страница
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.07 c
3-1158059416
___oleg
2006-09-12 15:10
2006.11.12
Access - как отличить полную дату от неполной


2-1161711944
SkySpeed
2006-10-24 21:45
2006.11.12
Подскажите способ вывода Hint a около трея


15-1161904888
SPeller_work
2006-10-27 03:21
2006.11.12
Неудачный downgrade BIOS-а


2-1161860846
silversmith
2006-10-26 15:07
2006.11.12
Watch показывает неверные значения переменных


3-1158151719
DBLookupComboBox
2006-09-13 16:48
2006.11.12
и хранимая процедура