2017信息处理技术员:dll,mdi窗体问题
来源:百度文库 编辑:中财网 时间:2024/05/05 06:59:08
这是传Application 到动太库的. 但这是无模式窗体.如何在释放窗体时将DLL释放掉呢?
动太库代码如下(只列出相关接口):
function OpenFrm( Scr: TScreen; hApp:TApplication): Boolean; Stdcall;
begin
Application:= hApp;
Screen := Scr;
Application.CreateForm(Tfrm,Frm);
Frm.Show;
Result := True;
end;
procedure DLLEntryPoint(Reason: Integer);
begin
case Reason of
DLL_PROCESS_ATTACH :
begin
DLLApp := Application;
DLLScr := Screen;
end;
DLL_PROCESS_DETACH :
begin
Application := DLLApp;
Screen := DLLScr;
end;
end;
end;
exports
OpenFrm;
begin
DLLProc :=@DLLEntryPoint ;
DllEntryPoint(DLL_PROCESS_ATTACH);
end.
主程序调用如下:
定义接口:type TOpenFrm=function ( Scr: TScreen; hApp:TApplication): Boolean;Stdcall;
调用内容
var
Openfrm:TOpenFrm;
MyHandle:THandle;
begin
MyHandle:=Loadlibrary('Form.dll');
if MyHandle>0 then
begin
@Openfrm:=GetProcAddress(MyHandle,'OpenFrm');
if @Openfrm<>nil then
Openfrm(Screen,Application);
end
else
freeLibrary(MyHandle);
end;
动太库代码如下(只列出相关接口):
function OpenFrm( Scr: TScreen; hApp:TApplication): Boolean; Stdcall;
begin
Application:= hApp;
Screen := Scr;
Application.CreateForm(Tfrm,Frm);
Frm.Show;
Result := True;
end;
procedure DLLEntryPoint(Reason: Integer);
begin
case Reason of
DLL_PROCESS_ATTACH :
begin
DLLApp := Application;
DLLScr := Screen;
end;
DLL_PROCESS_DETACH :
begin
Application := DLLApp;
Screen := DLLScr;
end;
end;
end;
exports
OpenFrm;
begin
DLLProc :=@DLLEntryPoint ;
DllEntryPoint(DLL_PROCESS_ATTACH);
end.
主程序调用如下:
定义接口:type TOpenFrm=function ( Scr: TScreen; hApp:TApplication): Boolean;Stdcall;
调用内容
var
Openfrm:TOpenFrm;
MyHandle:THandle;
begin
MyHandle:=Loadlibrary('Form.dll');
if MyHandle>0 then
begin
@Openfrm:=GetProcAddress(MyHandle,'OpenFrm');
if @Openfrm<>nil then
Openfrm(Screen,Application);
end
else
freeLibrary(MyHandle);
end;
VB MDI 窗体等问题~?
VB关于MDI窗体的问题?
什么是MDI窗体?
如何固定MDI窗体大小
vb问题:如何在mdi窗体中通过菜单选择已开的多个子窗体中的一个?
关于VB MDI窗体中用TIMER控件更换背景图的问题 急~~
关于VB MDI窗体中用TIMER控件更换背景图的问题 急 ~~
向MDI子窗体添加Datagrid控件
VB问题关于MDI
如何设置VB.NET的MDI窗体的背景图片?
vb中,把Treeview放入MDI窗体中(在线等)
vb.net中如何建MDI子窗体?
Mdi子窗体打开时怎样才能不闪?
VB中的MDI窗体都有什么用处~怎么用
在C#里面如何删除MDI窗体的恢复按钮?
请教VB问题,这样能使用MDI窗体的大小固定不不变啊!还有这样加背景图片呀!谢谢你们了!
VB MDI窗体与子窗体的菜单如何不合并?
VB里的 MDI窗体和普通窗体有什么区别?
同样多的功能,同样多的窗体,MDI窗体会比普通窗体节省系统资源吗?
有关打开MDI文件问题
有关打开MDI文件问题
C# MDI子窗口问题
VB 6.0中工具栏中找不到ADD MDI Form如何生成一个MDI窗体.还有,状态栏控件(sbstatusbar)找不到呀
Delphi中如何调用DLL中的窗体以及用DLL中的窗体控制主窗体