注册动态链接库(dll文件),提示找不到入口点

来源:互联网 发布:融合网络 英文 编辑:程序博客网 时间:2024/03/29 21:54

    编写的动态链接库项目,编译生成debug版本没有问题,使用regsvr32可以成功注册。release版本可以编译,也能生成dll文件,可是在用regsvr32注册时,却提示“已加载文件,但找不到入口点”。

    通过对比debug和release生成的文件,发现release下没有生成lib文件。而生成的dll是需要注册的,所以必然会有导出函数,通常,导出函数都是在def文件中定义。有导出函数就会生成lib文件。可是为什么没有release版本的没有lib文件呢?

    通过对比两个版本的属性,原来,在release的输入中,少了模块定义文件,也就是def文件。在 配置属性—链接器—输入:模块定义文件中输入def文件。生成,这时候有lib文件了,注册,OK,问题解决。

总结:

     1:动态链接库项目,有导出函数就会生成lib文件。

     2:出现上述情况,可查看输入中是否有def文件。

     3:学会对比。不同的版本下,如果其中一个版本有问题,则可以通过对比来找出问题并解决。

原创粉丝点击