`

vc6.0里使用lib(静态库)的方法

    博客分类:
  • VC++
 
阅读更多

博主:下面内容的“导入lib库方法2”教会了我调用动态库(DLL)时,是如何导入DLL的lib的。

摘自:http://www.cnblogs.com/webcyz/p/3525166.html

 

vc6.0里使用lib(静态库)的方法

 

vc6.0 中使用lib文件 使用库的方法如下:
1. 包含库的头文件(把库的头文件包含到项目中)
在应用程序工程中使用
#include "file path"
file path可以为绝对路径,也可以为相对于工程所在目录的相对路径

如果头文件比较多,可以在project>settings>c/c++>preprocessor的Additional include directories中填入你的头文件所在目录

 

2. 导入lib库。导入的方法很多
方法1) 直接用project>add to project>files的方式将.lib加入工程
方法2) 使用#pragma指令,如
#pragma comment(lib, "your lib path and name")
与前面头文件一样,也可以不在这里指定路径,而是在project>settings>link>input的Additional library path中输入.lib文件所在路径
方法3) 还可以在project>settings>link>general的ojbect/library modules中输入.lib的名字

 

3. 编译执行程序,如果是静态库,编译后就可直接执行(lib的二进制代码和用户代码一起链接到了exe文件中
如果是动态库,需要将dll放到可执行文件所在目录下,或者系统目录下,如system32或者windows目录,或者其它任何一个位于环境变量PATH中的目录

 

Note:.h头文件是不能编译的,所以lib文件里是不包含.h文件的,如果你生成.lib文件的源程序里有.h文件和.cpp(.c)文件,除了加入lib文件(上面的三种方法,个人建议第2种)外,你还需要手动的将.h文件加入到新项目里, 如果你生成.lib的源代码只有.c或.cpp文件,则不需要。

 

===========================================================

 

lib的一般使用

本文介绍用VC建立static lib,并且如何使用自己创建的库。

1)        新建一个win32 static library工程,默认“ok”-〉“finish”即可
 
 
2)        新建文件add.cpp和add.h到此工程
add.h文件如下
----------------------------------
#include <stdio.h>
int add(int x, int y);
----------------------------------
add.cpp文件内容如下
-----------------------------------------------------------------
#include "add.h"
int add(int x, int y)
{
 printf("This sum is caculated in a static lib:");
 return (x+y);
}
------------------------------------------------------------------
3)        编译库,成功编译后,可以在工程的“debug”文件夹中得到libproject.lib文件
4)        另外新建一个工程来使用这个lib,在这,我建立一个win32 console工程,命名为“libtest”,将add.h和生成的libproject.lib文件拷贝到libtest工程目录下,在libtest工程中添加库的add.h文件,
      在test.cpp文件内容如下
----------------------------------------------
#include "add.h"
#pragma comment(lib,"libproject.lib")
void main()
{
     int x=1, y=2;
     printf("%d/n",add(x,y));
}
 -----------------------------------------------

     编译libtest工程,并运行就可以看到输出结果如下:This sum is caculated in a static lib:3

分享到:
评论

相关推荐

    PCRE8.12动态库和静态库带VC6.0对库使用的一个工程

    其实最重要的是调用静态库时在 工程—设置—C/C++—预处理程序添加PCRE_STATIC 至于为什么要添加是PCRE库的说明里写的,自己看 当然还要在 工程—设置—连接—输入—忽略库 里添上 MSVCRT.LIB 就没问题了

    tinyxml_2.6.2 官方源码以及基于VC6.0生成的静态库

    ①tinyxml_2.6.2官方源码②基于VC6.0生成的动态库③已经测试通过,简单方便读写xml文件④同时提供了将xml格式的字符串转化为xml文档的接口⑤使用过程无需要安装其他辅助软件,只需要导入tinyxml.lib 、tinyxml.h,...

    libiconv vc++ 6.0 实例代码 包含 动态dll 静态lib

    libiconv vc++ 6.0 实例代码 包含 动态dll 静态lib libiconv使用静态lib 工具-&gt;选项-&gt;目录 include加上include文件夹, lib加上lib 文件夹 项目里#include,并在工程-&gt;设置-&gt;link里 对象/模块里加入 libiconv.lib c/...

    vc6.0 libCurl 简单使用

    个人编译的 libcurl静态库,并且附带使用例子!

    VC 6.0下的Dll(显示调用和隐式调用)

    十分简单的隐式调用和显示调用实例: 其中Lib工程文件用于生成动态连接库 D..Dll是动态调用 S..Dll是静态调用

    VC6环境中LIB与DLL文件的使用

    有 关动态库和静态库在vc6.0下的使用

    opencv静态库 可直接拷贝到lib目录下使用

    很多lib文件。安装完Opencv及编译opencv.dsw后,仍有些库文件生成不了。可以直接拷贝到lib目录下使用。我使用的是vc6.0

    my_oRTP_lib_13_1.rar_ORTP-0._VC ortp_or_ortp_ortp lib

    在VC6.0上ORTP0.13.1版本静态库的编译

    krnlnex-fne:使用 C++ (VC6.0) 开发的易语言枚举文件子目录支持库(原“辅助调试支持库”)

    使用 C++ (VC6.0) 开发的易语言枚举文件子目录支持库(原“辅助调试支持库”) 从2.0#0版开始支持静态编译,并隐藏多个与易语言官方特殊功能支持库重复的命令(如“调试输出”“调用子程序”“取变量数据地址”等)...

    VC6中OpenGL开发环境配置

    VC6.0中OpenGL开发环境配置 第一步:在Windows系统的安装VC++ 6.0作为学习OpenGL的环境。 第二步:运行OpenGL2.exe,安装OpenGL2.0 第三步:安装GLUT工具包 (1)“c:\Program Files\Microsoft Visual Studio\...

    exosip_builtby_vcPP6.0.rar_exosip_osip lib库

    exosip协议栈在VC下编译通过,包含VC的下osipparser、osip、exoip的动态dll、静态库lib工程。

    openGL配置组件 glut库

    在VC6.0环境下使用openGL的配置方法 Windows环境下安装GLUT的步骤: 1、将下载的压缩包解开,将得到5个文件(glut.h glut.lib glut32.lib glut.dll glut32.dll) 2、把解压得到的glut.h复制到VC的“include\gl”文件夹...

    opencv1.0静态链接库

    可在vc6.0下使用,包括cv、cxcore、highgui三个模块的debug和release版本的lib

    OpenGL安装包加配置 一看就懂

    3、把解压得到的glut.lib和glut32.lib放到静态函数库所在文件夹,如果是Visual Studio2005,则应该是其安装目录下面的“C:\Program Files\Microsoft Visual Studio 8\VC\lib”文件夹。 4、把解压得到的glut.dll和...

    zlib 用于数据压缩和内存压缩,采用c++实现

    zlib 把下载的源代码解压打开,VC6.0的工程已经建好了,在projectsvisualc6. 双击zlib.dsw, 可以在VC++6.0中看到里面有3个工程: zlib 是库文件(编译设置选中 win32 lib debug / release), 工程example 是如何使用 zlib...

    文件保险箱(动态库实现)

    Enc_Dec_File动态库的生成需要调用openssl库中的相关函数,可采用两种方法导入:(我的Enc_Dec_File.rar中是采用的静态库) 1、如要导入静态库,就需要静态编译openssl,我附加的文件夹中有这个文件,只需要文件夹中...

    winpcap常见安装和运行错误.docx

    在使用VC6.0编译WinPcap程序时,可能会出现编译错误,提示无法找到pcap.h文件。这是因为开发包中的Include目录没有正确指定。解决方法是通过菜单Tool-Options-Directories选项卡,选择WinPcap中的开发包目录中的...

    ffmpeg 5.1,可以直接使用visual studio 2019编译

    visual studio 2019成功编译出了静态库lib与动态库dll 代码生成设置是需要依赖vc运行库的 改的话所有工程文件都要修改'代码生成'选项为MTd或MT 先使用脚本安装YASM与NASM VSNASM\install_script.bat VSYASM\install...

    MP3解码器 MP3播放器

    用vc6.0编写的MP3播放器和MP3解码器。 单独将MP3解码器编译成静态链接库lib文件, 然后MP3播放器中再调用lib。 很有参考价值。。。

    一个功能强大的MFC界面处理扩展库

    使用方法: 在Project Settings中选择General标签,Microsoft Foundation Class设置为 Use MFC in a shared DLL。 在Project Settings中选择Link标签,设置Category为Input,增加../Lib到Additional Library Path...

Global site tag (gtag.js) - Google Analytics