c:\aaa.dll was loaded,but the dllRegisterServer entry point was not found.
DllRegisterServer may not be exported,or acorrupt version of c:\aaa.dll may be in memory.
consider using pview to detect and remove it.我用Delphi写得Dll,想用VB调用可是注册失败!大概是说找不到入口点。下面这个最简单的Dll都有上面的问题!!!解决了立马给分。
library Project1;{ Important note about DLL memory management: ShareMem must be the
  first unit in your library's USES clause AND your project's (select
  Project-View Source) USES clause if your DLL exports any procedures or
  functions that pass strings as parameters or function results. This
  applies to all strings passed to and from your DLL--even those that
  are nested in records and classes. ShareMem is the interface unit to
  the BORLNDMM.DLL shared memory manager, which must be deployed along
  with your DLL. To avoid using BORLNDMM.DLL, pass string information
  using PChar or ShortString parameters. }uses
  SysUtils,
  Classes;function AAA(A:integer):integer;stdcall;
begin
  result:=A;
end;
exports
  AAA;{$R *.res}begin
end.

解决方案 »

  1.   

    你写的这种dll不用注册的,直接放到该vb程序的目录下就可调用如果你要写可注册的dll, 你应该用向导生成 activex那种
      

  2.   

    RegSvr32 是注册服务的 要动态库里有一个 DllRegisterServer 完成服务的注册
      

  3.   

    你这个是传统的DLL,不是Com。不用注册,象调用API函数一样就可以了
      

  4.   

    Com对象的dll是下面这个样子的
    library ThisServer;uses
      ComServ,
      AppServer_TLB in 'AppServer_TLB.pas',
      RDMImpl in 'RDMImpl.pas' {ThisServerRDM: TDataModule} {ThisServerRDM: CoClass},
      ThisConsts in '..\Public\ThisConsts.pas',
      EventConsts in '..\Public\EventConsts.pas';{$R *.TLB}{$R *.RES}exports
      DllGetClassObject,
      DllCanUnloadNow,
      DllRegisterServer,
      DllUnregisterServer;begin
    end.