dll怎样用封装form,并且只用一个函数调用?并且怎么才能动态调用时不出错?我知道在dll中uses 了form后,可以把要调用的form放在一起,但是调用方怎么样才能知道所调用的是哪个form,不知道是不是可以对form进行编号来完成.以前编写dll时发生:没有找到dll切入点.不知道这是怎么回事?
我知道可能会用到
    DLL_PROCESS_ATTACH : 
    DLL_PROCESS_DETACH : 
    DLL_THREAD_ATTACH  : 
    DLL_THREAD_DETACH  : 
但不知怎么用.请高手帮忙了

解决方案 »

  1.   

    去看Delphi 7 从入门到精通,很详细
      

  2.   

    Procedure  LoadWaveDll(PApplication : TApplication;PForm : TForm; FormName : String) ;export ;stdcall;
    var
      DllProc  : Pointer;
    Begin
       Application  := PApplication;
       FormName     := UpperCase(FormName);   If  FormName = 'custodyCent' Then
         Begin
           if Not Assigned(custodyCent) Then
              custodyCent := TcustodyCent.Create(PForm);
         End;
    End;Procedure  DllUnloadProc(Reason : Integer); register;
    Begin
      if  Reason = DLL_PROCESS_DETACH then
        Begin
          if Assigned(custodyCent) Then
             custodyCent.Free;
        End;
    End;Exports
      LoadWaveDll;begin
      SaveApplication  := Application; 
      DllName := 'Wavedll';
      DLLProc := @DllUnLoadProc;
    end.
      

  3.   

    Procedure  TForm1.LoadWaveDLL(Sender:TObject;FormName:String;DllName:String);
    Var
      ProcAddr : FarProc;
      BaseDllShow  : TDllShow;
      Form      :  TForm;
    Begin
      if  WaveDLLHandle = 0 Then
          WaveDLLHandle := LoadLibrary(PChar(DllName+'.dll'));
     ProcAddr := GetProcAddress(WaveDLLhandle,'LoadWaveDll');
     if  ProcAddr <> nil then
       Begin
         BaseDllShow := ProcAddr;
         BaseDllShow(Application,self,FormName);
       end;
    End;procedure TForm1.Button1Click(Sender: TObject);
    begin
      LoadWaveDLL(Sender,'custodycent','wave');
    end;dll是生成了,但是却没有调用成功,也没有报错
      

  4.   

    第9章动态链接库
    本章内容:
    &#8226; 究竟什么是D L L
    &#8226; 静态链接与动态链接
    &#8226; 为什么使用D L L
    &#8226; 创建和使用D L L
    &#8226; 显示D L L中的模式窗体
    &#8226; 在D e l p h i应用程序中使用D L L
    &#8226; DLL的入口和出口函数
    &#8226; DLL中的异常
    &#8226; 回调函数
    &#8226; 从D L L中调用回调函数
    &#8226; 在不同的过程中共享D L L数据
    &#8226; 引出D L L中的对象
    本章讨论了Wi n 3 2动态链接库,也就是D L L。D L L是用来编写Wi n d o w s应用程序的关键组成部分。
    本章讨论了使用和创建D L L的几个方面,它给出了D L L怎样工作的概述并讨论了怎样创建和使用D L L,
    你将学会怎样调入D L L和链接由它们引出的过程和函数的不同方法。本章还包括回调函数的使用并举
    例说明在不同调用进程中如何实现共享数据。<Delphi5开发人员指南>