vs2010创建和使用动态链接库(dll)

创建动态链接库项目

  1. 打开Microsoft Visual Studio 2010,选择文件->新建项目->Win32控制台应用程序->在应用程序设置页面选择下图所示选项:
    应用程序设置页面
  2. 向动态链接库添加类:
    • 添加新类头文件。右键单击simple项目,Add->New Item,选择Header File(.h),设置名称,单击Add。
    • 添加新类源文件。右键单击simple项目,Add->New Item,选择C++ File(.cpp),设置名称,单击Add。
      说明:
      头文件(.h)中的代码应当使用__declspec(dllexport),如图:
      这里写图片描述
      在该项目的Debug文件夹中的内容如图:
      这里写图片描述
      当头文件(.h)中的代码不使用__declspec(dllexport)时无法产生.lib文件,如图:
      这里写图片描述
      在该项目的Debug文件夹中的内容如图:
      这里写图片描述
    • 完成后点击Build->Build Solution,生成解决方案。可在该项目的Debug下查看生成的simple.lib和simple.dll.文件。

创建引用动态链接库的应用程序

  1. 打开Microsoft Visual Studio 2010,选择文件->新建项目->Win32控制台应用程序->在应用程序设置页面选择下图所示选项:
    这里写图片描述
  2. 为控制台应用程序添加main.cpp。右键单击usesimple项目,Add->New Item,选择C++ File(.cpp),设置名称为main,单击Add。
  3. 添加.lib
    • 添加路径:项目->属性
      这里写图片描述
    • 引用lib(有两种方式选择)
      1. #pragma comment(lib,”simple.lib”)
      2. 项目->属性
        这里写图片描述
  4. 包含头文件(simple.h)路径
    这里写图片描述
  5. 将生成的simple.dll文件拷入usesimple.exe文件的那个目录(一般是该项目下的Debug下)。
    未完成该步时会提示如下错误:
    这里写图片描述

关于__declspec(dllexport) __declspec(dllimport)

在动态链接库项目中的头文件中导出函数和导出类的区别:

  • 导出类
class __declspec( dllexport ) BinaryTreeNode 
{
public:
    int                    m_nValue; 
    BinaryTreeNode*        m_pLeft;  
    BinaryTreeNode*        m_pRight; 
};
  • 导出函数
__declspec( dllexport ) BinaryTreeNode* CreateBinaryTreeNode(int value);

__declspec( dllexport ) void PrintTreeNode(BinaryTreeNode* pNode);

__declspec( dllexport ) void PrintTree(BinaryTreeNode* pRoot);

__declspec( dllexport ) void DestroyTree(BinaryTreeNode* pRoot);
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值