Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Форма в DLL.


Осирис ©   (2002-10-07 10:55:00) 

Пытаюсь поместить в DLL форму и вызывать эту форму из своей программы. Делаю так:

DLL:

library frmdll;

uses
SysUtils,
Classes,
one in "one.pas" {Form1};

function CreateTheForm: Pointer; Export;
begin
Result := TForm1.Create(nil);
end;

{$R *.res}
Exports
CreateTheForm INDEX 1;

begin
end.


Программа,вызывающая форму:


unit FormDLL;

interface
function FormMe : Pointer; external "frmdll.dll" index 1;
implementation

end.

unit two;

interface

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

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
FormMe;
end;

end.

При запуске программы выскакиевает Access Violation и окошко CPU. Что я делаю не так ?


Осирис   (2002-10-07 11:39:00) [1]

Разобрался. Невнимательность - dll не туда положил.


Наверх

Титульная страница Поиск, карта сайта Написать письмо