VS2013 如何创建动态库和使用

创建动态库具体的步骤是:(以DLL为例)

1、创建一个win32项目

 2、选择应用程序类型:DLL;

        附加选项:导出符号,勾上;

 3、点击完成,就会生成动态库

4、 由于是导出库,要添加模块定义文件(.def)

这个文件,就是导出对应的接口,供外部调用的(详细解释可以百度了解)

 5、编写这个模块自定义文件:

 根据这个接口,实现功能即可;

6、调用动态库需要注意的地方:

(1)调用的约定:

动态库的调用约定:指调用程序和动态库之间协商的一种规则,用于确定函数参数传递的方式、返回值的传递方式、堆栈的维护方式等。

常用的调用约定有以下几种:

1. cdecl:函数参数从右到左依次压入栈中,调用者清理栈空间。

2. stdcall:函数参数从右到左依次压入栈中,被调用函数清理栈空间。

3. fastcall:函数的前两个参数通过寄存器传递,其余参数通过栈传递。

4. vectorcall:函数的前两个参数通过寄存器传递,其余参数通过栈传递,返回值也通过寄存器返回。

不同的操作系统和编译器可能使用不同的调用约定,因此在使用动态库时需要根据实际情况选择正确的调用约定。

 (2)确认下动态库中是否把模块定义文件填好

有次别人调用动态库,说接口名称不对,后面看下原来项目少填了模块自定义文件。

想要查看当前动态库的接口名字,可以用Depends.exe这个软件进行查看。

猜你喜欢

转载自blog.csdn.net/bigger_belief/article/details/131230952