有可能是你说的原因,也可能是.def文件中没有定义主函数。

解决方案 »

  1.   

    动态库编写,最好是在VC提供的框架基础上开始,框架做了许多基本工作,自注册功能是最重要的功能。
    生成模板下的DLL框架,看看你缺什么!
      

  2.   

    自注册dll要3个函数DllRegisterServer和DllUnregisterServer,还有DllCanUnloadNow,你写了没有?
      

  3.   

    你首先要明白,DLL为什么要注册!通常如果你作了一个COM组件DLL,必须要用regsvr32.exe来注册,regsvr32.exe
    其实就是从DLL中找DllRegisterServer这个导出函数来执行的。因为根据COM规范,
    COM组件DLL必须导出DllCanUnloadNow,DllGetClassObject,DllRegisterServer,DllUnregisterServer等函数(这你可以从生成的框架文件中看到),所以能够注册成功!如果仅仅是作了一个导出一些函数的DLL,注册没有意义!如果你偏要注册,你必须
    导出DllRegisterServer函数!