DLL show窗 提示错误!

w5750584 2008-11-17 07:40:35
dll里面是
library Project1;
uses
SysUtils,
Classes,
Unit1 in 'Unit1.pas' {Form1};

{$R *.res}
procedure aaa();
begin
form1.Show;
end;
exports
aaa;
begin
end.


exe里面是
unit Unit1;

interface

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

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

var
Form1: TForm1;

implementation

{$R *.dfm}
procedure aaa();
external 'Project1.dll';
procedure TForm1.Button1Click(Sender: TObject);
begin
aaa;
end;

end.


提示错误 怎么修改 各位大哥帮看看
...全文
69 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
w5750584 2008-11-17
  • 打赏
  • 举报
回复
谢谢各位
僵哥 2008-11-17
  • 打赏
  • 举报
回复
To 5楼,记得Free
五维思考 2008-11-17
  • 打赏
  • 举报
回复

library Project1;
uses
SysUtils,
Classes,
Unit1 in 'Unit1.pas' {Form1};

{$R *.res}
procedure aaa();
begin
form1:=Tform1.Create(nil);
form1.ShowModule;
end;
exports
aaa;
begin
end.
僵哥 2008-11-17
  • 打赏
  • 举报
回复
检查窗体是否创建实例,建议在aaa过程当中创建并使用ShowModule代替Show结束后Free掉.
w5750584 2008-11-17
  • 打赏
  • 举报
回复
我只要能吧dll里面的那个 Unit1 in 'Unit1.pas' {Form1}; 给show出来就OK了
w5750584 2008-11-17
  • 打赏
  • 举报
回复
.....
begin
end.
lichy163 2008-11-17
  • 打赏
  • 举报
回复
library Project1;
uses
SysUtils,
Classes,
Unit1 in 'Unit1.pas' {Form1};

{$R *.res}
procedure aaa();
begin
form1.Show;
end;
exports
aaa;
//不明白你在这里加begin那么end在什么地方呢
end.

5,927

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧