易截截图软件、单文件、免安装、纯绿色、仅160KB

delphi实现调用dll中的窗体 代码

新建一个dLL工程,新建一个窗体 Fr_bb80 ,我们先在它的单元里加入下面一个函数:
function Report(Title:Pchar):Boolean  ;stdcall;
begin
   if Fr_bb80=nil then
   begin
         Fr_bb80:=TFr_bb80.Create(application);
         Fr_bb80.Caption:= Title;
     try
      Fr_bb80.ShowModal;
       Result:=true;
     finally
     Fr_bb80.Free;
     end;
   end;
    Result:=false;
end;
再在此dll工程文件(*dpr)文件中加入
 exports  Report;   //加入这个之后,外面就可以调用这个函数了.
新建一个工程,在新窗体中加一个按钮,下面就是这个按钮的完全代码:
type
    TLoadDLL2 = function(Title:Pchar):Boolean; stdcall;  //这个是必须的,好像叫回调函数??,它的定义与dll中公开的函数要完全一致
var
    FLoad: TLoadDLL2;   //将TLoadDLL2 实例化
    l:THandle;         
begin
      l:=LoadLibrary('CW.dll');   //动态调用刚才那个dll文件
// 给FLoad函数赋值,将指针指向  GetProcAddress(l,  'Report') ;"Report" 是这个dll公开的函数名   
      FLoad := TLoadDLL2(GetProcAddress(l, 'Report')); 
   
    if Assigned(FLoad) then   //判断是否找到这个公开的函数
            FLoad('自定义窗口的标题');  //执行函数,注意函数的参数到这时候才开始赋值
   
   FreeLibrary(l); //释放资源
以上代码在delphi7.0通过!


相关文档:

DELPHI 让子窗体显示在任务栏上

 重载 CreateParams 方法即可
声明:
procedure CreateParams(var Params: TCreateParams);override;
procedure TForm2.CreateParams(var Params: TCreateParams);
begin
inherited;
Params.WndParent := 0;
end; ......

Delphi 的 Dll 函数的 调用


一、Dll建立
(一)DLL项目的建立
library mydll;
 
uses
base in 'base.pas';
 
exports
Triple name 'Tr';
 
{$R *.res}
 
begin
end.
 
(二)函数单元
unit base;
 
interface
 
uses windows;
 
function Triple(N:integer):integer;stdcall;
  ......

在DELPHI中显示GIF动画

想没想过在DELPHI中显示GIF动画?Delphi的用户是非常幸运的,因为有免费控件可以使用。最著名的控件是Anders Melander编写的TGifImage,并提供完整的源程序。它原来的主页是www.melander.dk/delphi/gifimage/,不过有很长时间没有更新了。如果要在新版本的Delphi中使用,可以从http://finn.mobilixnet.dk/delphi/下载Finn T ......

Delphi开发人员的编程习惯

关开发习惯的一些想法,如鲠在喉,不吐不快。究其发贴动机,当然不排除有骗取参与分的可能,但另一方面,也希望能给同行(念Xing)者提供一些建议,或者参考(希望不是误人子弟)。同时,也希望各位能够就我的这些陋习,发表一点看法,给出批评和指正的意见。谢谢。
一.建立工程目录
     &nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号