VC/VC++的学习之路二生成动态库和静态库

来源:互联网 发布:网络摄像头id 编辑:程序博客网 时间:2024/05/20 09:47

PS:

     我也才接触,只是把自己一些简单的理解写出来,理解不深,甚至有些可能理解有误,如果朋友们发现了@我修改,谢谢!


开发平台:visual studio 2015

条件:生成的动态库要是本机方式,不是托管的


一:托管和非托管的简单介绍

      简单的说,就是代码被编译成MSIL后在.net的Framework下运行,同操作系统底层的交互都交给framework去做,这就是托管,托管给framework。

      所谓非托管,就是脱离了Framework的管制,直接同底层API打交道,自己管理自己的内存和安全机制等东西。而托管代码就不管这些,全都由Framework去完成


     visual studio 下 c#编写的代码,就是托管代码,它必须依托framework框架,也就是说,如果我用c#写了一个winform的应用程序,如果把这个运行文件拷贝到另一台没有framework框架的电脑上,则该运行文件文能运行起来;

     visual studio下vc++编写的就是非托管代码(本机形式的),它的运行文件可以直接拷贝到任何电脑上运行。


二:动态库和静态库

      动态库:如果配置成生成动态库的话,会编译出 .dll文件和 .lib文件;

      静态库:如果配置成生成静态库的话,置会编译出 .lib文件。


三:生成动态库和静态库的步骤

   1:打开visual studio2015,新建一个“ win32项目 ”,然后点“下一步”,然后按照下图选择“DLL”(此处就是要求生成动态库),最后点击“完成”

    



 二:接着就会出现下图界面,这就是编辑代码的界面


 三:创建 .c 文件和头文件 .h ,并写写简单的函数


四:接着就配置项目,让其生成的库是动态库或静态库

在窗体的解决方案管理器中,鼠标右键新建的项目“win32project_lib”,选择属性,会弹出下面界面,选择动态库,完后buid,就会生成 .dl文件,如选择静态库,build就会生成 .lib文件。l