`
aigo
  • 浏览: 2681656 次
  • 性别: Icon_minigender_1
  • 来自: 宜昌
社区版块
存档分类
最新评论

VC++ DLL工程同时生成dll和lib文件

 
阅读更多

1,在自己的DLL工程中新建一个Module-Definition File(.def)名字随意,例如:mydef.def。

2,工程属性 -> 连接器 -> 输入 -> Module Definition File,输入刚才新建的def文件名。

 

这样一个dll工程就可以同时生成dll和lib两个文件了,这个lib可以用于其他项目的动态库依赖。

 

 

如何让dll中的函数接口公布给外部使用:

在工程中找到需要给外部接口的函数,改为类似于int __stdcall addetection(int argc, char *argv)的形式,即增加__stdcall 。新建一个.h头文件,在头文件中加入这个函数的声明__declspec(dllexport) int __stdcall addetection(int argc, char *argv);

如果是一个类,则用__declspec(dllexport)修饰,例如:class __declspec(dllexport) MyClass{}

分享到:
评论

相关推荐

    用vc++6.0生成的zlib.lib和zlib.dll文件

    在项目设置中,选择“Win32 Dynamic-Link Library”(如果需要生成dll文件)或者“Win32 Static Library”(如果需要生成lib文件)。接下来,我们需要将Zlib的源代码文件添加到项目中。在“Project”菜单中选择“Add...

    vc++ 6.0使用dbghelp.dll生成dmp内存转储文件

    总的来说,通过VC++ 6.0和dbghelp.dll生成DMP内存转储文件,能够帮助开发者在无法复现问题的情况下,从DMP文件中获取关键信息,从而定位并修复程序中的错误,提高软件的稳定性和可靠性。对于学习和实践C++的调试技术...

    VC_DLL.rar_dll_lib调用_vc dll_vc lib_vc++ dll

    DLLs是可执行文件的一种形式,允许代码和资源在多个应用程序之间共享,而LIB文件则包含编译器生成的函数和对象代码,用于链接到应用程序。这篇知识分享将深入探讨如何在VC环境下使用DLL以及调用LIB库的方法。 首先...

    在vc++6.0下如何生成Dll

    在VC++ 6.0环境下生成DLL(动态链接库)是一项常见的编程任务,它允许代码复用和模块化设计。DLL文件是Windows操作系统中的一个重要组件,它们包含可由多个应用程序共享的函数和数据。以下是一个详细的步骤指南,...

    VC++创建Dll与显示加载Dll

    4. **编译项目**:确保配置正确,编译生成`.dll`文件和对应的`.lib`文件。`.lib`文件是导入库,用于告诉链接器DLL中的导出函数地址。 **显式加载DLL** 显式加载DLL是指在运行时使用API函数手动加载DLL,而不是在...

    DLL导出生成lib文件

    在Windows操作系统中,动态链接库(DLL)是包含可由多个程序同时使用的代码和数据的文件。DLL文件的一个重要特点是,它们不包含完整的可执行代码,而是作为其他应用程序的插件,只提供特定的功能。然而,为了在编译...

    VC++生成DLL与静态加载DLL代码

    4. **编译DLL**:完成上述步骤后,编译项目生成DLL文件和相应的.lib导入库文件。 接下来,我们将讨论如何在控制台应用程序中静态加载这个DLL: 1. **创建控制台应用**:新建一个控制台应用程序项目,确保选择“空...

    VC++DLL 供java调用

    生成的DLL和对应的LIB文件需要提供给Java应用程序,以便在运行时加载和调用。 7. **Java端的使用**:在Java端,需要使用`System.loadLibrary`或`Class.getSystemClassLoader().loadLibrary`加载生成的DLL,并通过`...

    matlab生成DLL并用VC++调用

    本文将详细介绍如何使用MATLAB 2009b生成DLL文件,并使用VC++ 2008进行调用。 #### 二、实验环境配置 **操作系统:** Win7 **MATLAB 版本:** 2009b (安装路径: E:\Program Files\MATLAB\R2009a) **VC++ 版本:** ...

    vc++ DLL应用实例

    使用`#pragma comment(lib, "MyDll.lib")`来链接到生成的.lib文件,然后就可以像调用普通函数一样调用DLL中的函数了。 5. **编译和运行**: 编译两个项目,确保DLL项目编译为.lib和.dll文件,然后将这两个文件复制...

    VC++DLL精讲.pdf

    具体步骤包括创建一个名为libTest的static library工程,定义头文件lib.h和实现文件lib.cpp,最后编译工程生成.lib和对应的头文件。 ### 学习和实践的重要性 本文不仅提供了理论知识,还附带源代码例程,涵盖了DLL...

    VC++ 生成DLL的MD5 加密算法代码

    3. **VC++开发环境**:Microsoft Visual C++是微软提供的C++集成开发环境,它包含了编译器、调试器和其他工具,支持创建Windows应用程序,包括生成DLL文件。 4. **生成DLL**:在VC++中,创建DLL项目,需要选择适当...

    VC++DLL编程入门

    **动态链接库(Dynamic Linkable Library,DLL)** 是一种可被多个程序同时使用的代码和数据集合,它为应用程序提供了可重用的功能。通过使用DLL,可以实现代码的模块化管理,减少应用程序的体积,并允许在运行时...

    DLL动态加载 生成窗口的方法

    因为要用到扩展MFC导出dll类型,来导出窗口类,但是这样的话,必须用静态加载lib文件方式来实现。降低了灵活性。因为有可能某个窗口还在开发中,而其他的可以用,这时我们想让能用的跑起来,这时,需要动态加载dll...

    VC dll编程和使用例子

    - **编译DLL**:使用VS2005编译该工程,生成.dll和.lib文件。.lib文件是导入库,用于链接时定位DLL。 2. **DLL使用工程** - **引入DLL**:在使用DLL的项目中,包含DLL的头文件,并链接对应的导入库。如果使用静态...

    VC++动态链接库(DLL)编程深入浅出 中老鳥必備.pdf

    例如,创建一个名称为 libTest 的静态链接库工程,并新建 lib.h 和 lib.cpp 两个文件,lib.h 和 lib.cpp 的源代码如下: // 文件:lib.h #ifndef LIB_H #define LIB_H extern "C" int add(int x,int y); // 声明为...

    vc++ 6.0 DLL 示例

    设置好工程名称和位置后,点击"确定",系统会生成默认的DLL项目框架,包括一个头文件(.h)和一个实现文件(.cpp)。 2. **定义导出函数**: 在头文件中,我们需要声明将被外部程序调用的函数,并使用`__declspec...

    VC++编写DLL供C#使用

    3. **编译与生成**:完成函数定义后,编译生成DLL文件。DLL文件和对应的.lib文件(导入库)将被创建。 **C#调用VC++ DLL** 1. **添加引用**:在C#项目中,我们需要引用DLL。右键点击“解决方案资源管理器”中的...

    VC++ dll C#

    - 编写完成DLL的源代码后,编译并生成DLL文件,通常为`.dll`和`.lib`两个文件。`.lib`文件是导入库,供调用方链接使用。 3. **C#调用DLL** - 在C#项目中,首先需要添加对DllImport特性引用,以指示C#调用非托管...

    VC++动态链接库(dll)编程深入浅出-----PDF和源码

     静态链接库与动态链接库都是共享代码的方式,如果采用静态链接库,则无论你愿不愿意,lib中的指令都被直接包含在最终生成的EXE文件中了。但是若使用DLL,该DLL不必被包含在最终EXE文件中,EXE文件执行时可以“动态...

Global site tag (gtag.js) - Google Analytics