VC链接库

最近在论坛看到多人都在是用到了dll制作类似QQ的动态界面,看着的确比一般的VC默认界面要好的不是一点。现在的问题是dll里面的源码别人是没有共享出来的,我们无法看到是如何实现的。那么要想学习只能从最基本的dll动态链接库学起了。

       下面这篇文章是从网上找的,主要讲述了静态链接库和动态链接库。


参考1:VC++动态链接库(DLL)编程深入浅出(一)

          http://www.pconline.com.cn/pcedu/empolder/gj/vc/0509/698632.html

参考2:VC++动态链接库(DLL)编程深入浅出(二)

         http://pcedu.pconline.com.cn/empolder/gj/vc/0509/699672_all.html#content_page_1

参考3;VC++动态链接库(DLL)编程深入浅出(三)

         http://www.pconline.com.cn/pcedu/empolder/gj/vc/0509/703607.html

参考4;VC++动态链接库(DLL)编程深入浅出(四)

         http://pcedu.pconline.com.cn/empolder/gj/vc/0511/720057_all.html#content_page_1


静态链接库( lib ):

1,打开VC6.0,new projects-->win32 static library,新建一个静态链接库的项目。方法在参考一中已经很详细,这里需要补充的是:

在libTest工程所在的工作区内new一个libCall工程。libCall工程仅包含一个main.cpp文件的方法是:在File View中,右键Workspace(而不是project)-->Add new project to worksapce :wine32 console application:名称为libCall。然后再在libCall的project中添加main.cpp文件。

需要说明的是:如果直接在当前 libTest project中直接添加main.c文件那么运行main.c不会得到输出,因为这个静态链接库的project不能直接运行。

2,下面的两条语句中,.. 类似于linux下的命令代表上一级目录。下一级目录用\\

#include "..\\lib.h"b   //main.cpp目录的上一级目录的lib.h文件

#pragma  comment(lib,"..\\debug\\libTest.lib")//指定与静态库一起连接


动态链接库(dll):

        方法参照参考二看,这里还是要提醒一次, 现在的一个WorkSpace里包含的不再是一个project,而是多个,当我们编译完main.cpp后,运行会看到程序并没有执行lib.cpp里的函数,再到project目录下的debug文件夹内查看,发现并没有生成 .dll文件。这里的问题是:

       我们编译链接的是main.cpp所在的dllCall project,而dllTest project并没有被编译,所以没有产生所需要的dll文件。这时要在Build工具框中选择dllTest 然后再编译,此时在提示信息中可以看到已经生成了dllTest.dll文件。


后续自己学习的内容会陆续更新上来。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值