delphi 调用dll 是要先创建 XXX.dll 文件吗:?再来调用dll 函数吗?.[  
请教 delphi 如何调用dll (最好简单实例说明)  谢谢

解决方案 »

  1.   

    1 如果是COM之类的,则注册以后,用类似于createoleobject样的功能直接调用
    2 如果是标准的C格式的DLL,调用方式类似于VB之类的,采用动态或静态的方式调用,
    3 如果是Delphi写的使用了delphi特有数据类型的,则在2的基础上一般需要在PATH里放一份bndMM.dll样的文件
      

  2.   

    调用dll,当然要有dll文件才行,1楼已经介绍了,这里举例在D中建立1个简单的dll文件,并调用
    1. file->new->other->new->dll wizard
    2. 参照下面这样写上一个函数TestDlllibrary Project1;
    {这中间是注释,去掉了}
    uses
      SysUtils,
      Classes;{$R *.res}{函数功能:计算传入值的平方并返回结果}
    function TestDll(k:Integer):integer;stdcall;
    begin
      result:=sqr(k);
    end;exports
       TestDll;begin
    end.3.保存后,按Project->Build Project1,就会在你保存的位置产生一个Project1.dll文件了4.下面是在D中调用Project1.dll文件中TestDll函数5.新建一个工程,放一个Button按扭,最终代码像下面这样{...}var
      Form1: TForm1;implementationfunction TestDll(k:Integer):integer;stdcall; external 'Project1.dll';
    {如果Project1.dll不同路径,也不在系统目录,要加上路径,如C:\Project1.dll}{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
    begin
      ShowMessage(IntToStr(TestDll(100)));
    end;6.运行,点击Button1看看效果.更详细的介绍,更复杂的功能,楼主自己搜索相关资料吧!!!
      

  3.   

    楼上描述调用太全了补充Dll的调试。
    在开发环境中,右键选择Dll--》options--》Debugger--》Host application
    输入调用的exe地址,记得好像只能是绝对路径(含文件名)。
    这样就可以断点调试Dll文件了。
    会经常用到的。
      

  4.   

    入门的资料多,深入要自己摸索,在开发环境中,右键选择Dll--》options--》Debugger--》Host application
    记得在运行、调试的那个菜单下的RUN PARAMETER也可以设置的哦,呵呵