C++ 编写、 调用 dll 简单例子
2009-10-28 19:13
681 查看
C++创建DLL:
1. 创建win32控制台程序, 选择DLL
2. 添加头文件
头文件中定义宏 如下:
#ifdef DYNAMICLIBRARY_EXPORTS //该dll的定义宏工程属性->c/c++->preprocessor
#define DLL_DEF _declspec(dllexport) // 导出
#else
#define DLL_DEF _declspec(dllimport) // 导入
#endif
extern "C" DLL_DEF int AddInt(int a, int b);
// 函数声明 extern "C" 表示C语言标准
class DLL_DEF MyClass // 类声明成员函数不用再加DLL_DEF
{
...
...
}
3. cpp文件:
包含头文件:
#include "xxoo.h"
添加函数定义:
DLL_FUNC int AddInt(int a, int b) // 定义时也要 添加 导入 导出 宏
{
return a + b;
}
C++中调用动态连接库DLL的步骤:
1. 将dll的头文件拷至工程目录下,或者设置 工程属性->C/C++->additional include directories 添加头文件目录
2. include 指定头文件
3. 工程属性->Linker->general->additional library directories 添加Lib文件目录
4. 工程属性->Linker->input->additional dependencies 添加Lib文件,或者,也可以在代码中使用预编译命令 #pragma comment(lib, libname.lib)
5. 使用 函数
1. 创建win32控制台程序, 选择DLL
2. 添加头文件
头文件中定义宏 如下:
#ifdef DYNAMICLIBRARY_EXPORTS //该dll的定义宏工程属性->c/c++->preprocessor
#define DLL_DEF _declspec(dllexport) // 导出
#else
#define DLL_DEF _declspec(dllimport) // 导入
#endif
extern "C" DLL_DEF int AddInt(int a, int b);
// 函数声明 extern "C" 表示C语言标准
class DLL_DEF MyClass // 类声明成员函数不用再加DLL_DEF
{
...
...
}
3. cpp文件:
包含头文件:
#include "xxoo.h"
添加函数定义:
DLL_FUNC int AddInt(int a, int b) // 定义时也要 添加 导入 导出 宏
{
return a + b;
}
C++中调用动态连接库DLL的步骤:
1. 将dll的头文件拷至工程目录下,或者设置 工程属性->C/C++->additional include directories 添加头文件目录
2. include 指定头文件
3. 工程属性->Linker->general->additional library directories 添加Lib文件目录
4. 工程属性->Linker->input->additional dependencies 添加Lib文件,或者,也可以在代码中使用预编译命令 #pragma comment(lib, libname.lib)
5. 使用 函数
相关文章推荐
- java中调用C/C++编写的生成的动态连接库dll文件接口的简单例子
- Vc编写和调用Dll的简单例子
- C#调用C++编写的COM DLL
- 在VB中调用C/C++语言编写的dll,数组参数的传递
- 通过C#去调用C++编写的DLL
- 供LoadRunner调用的一个简单Dll例子
- 用servlet实现jnative调用c++写的dll的例子
- 【C#语法】C#中调用C++编写的dll
- C#调用C++编写的dll
- 在java web项目中调用c++的dll程序简单案例
- C++如何调用C#编写的DLL
- Eclipse、MinGW、JNI编写C++生成dll, Java端调用的完整示例(附java.lang.UnsatisfiedLinkError解决方法)
- VB.NET中的DLL编写和调用的最简单示例
- VS2010使用C#调用C++编写的dll,在其他电脑上无法运行的解决办法
- [2014.1.31] Eclipse、MinGW、JNI编写C++生成dll, Java端调用的完整示例(附java.lang.UnsatisfiedLinkError解决方法)
- 在VB中调用C/C++语言编写的dll,数组参数的传递
- lua调用c++dll 简单案例
- CSharp调用C++编写的DLL的方法
- Java调用C/C++编写的第三方dll动态链接库
- 用jna实现调用c++的dll简单示例