C++调用dll(c++编写)
2017-01-06 13:14
337 查看
环境:vs2015,64位win7
一、生成C++dll:
1、首先建立class library工程:
2、新建ExportDLL.h头文件:
3、新建ExportDLL.cpp文件:
4、编译生成ExportDLL.dll文件;
二、使用dll
1、新建工程(控制台程序便可);
2、新建Test.cpp文件,代码如下:
using namespace System;
using namespace std;
using std::string;
typedef void(*HelloW) ();
int main(int argc, _TCHAR* argv[]) {
HelloW hellow;
HMODULE hm = LoadLibrary(TEXT(“ExportDLL.dll”));
if (hm != NULL) {
hellow = (HelloW)GetProcAddress(hm, “helloWorld”);
if (hellow == NULL) {
FreeLibrary(hm);
return 0;
}
hellow();
}
FreeLibrary(hm);
return 0;
}
3、编译执行,控制台成功打印”hello world”
注:
1、HMODULE hm = LoadLibrary(TEXT(“ExportDLL.dll”));
使用LoadLibrary函数时,网上查询的很多都是直接使用LoadLibrary(“ExportDLL.dll”);方式,但是不知为什么,我这里总是报错,无法编译;
2、程序运行结束一定记得释放资源FreeLibrary(hm);
3、关于函数指针的使用在次不详述;
参考:
http://blog.csdn.net/g710710/article/details/7255744
http://blog.sina.com.cn/s/blog_a50d2d740101fwuq.html
一、生成C++dll:
1、首先建立class library工程:
2、新建ExportDLL.h头文件:
3、新建ExportDLL.cpp文件:
4、编译生成ExportDLL.dll文件;
二、使用dll
1、新建工程(控制台程序便可);
2、新建Test.cpp文件,代码如下:
using namespace System;
using namespace std;
using std::string;
typedef void(*HelloW) ();
int main(int argc, _TCHAR* argv[]) {
HelloW hellow;
HMODULE hm = LoadLibrary(TEXT(“ExportDLL.dll”));
if (hm != NULL) {
hellow = (HelloW)GetProcAddress(hm, “helloWorld”);
if (hellow == NULL) {
FreeLibrary(hm);
return 0;
}
hellow();
}
FreeLibrary(hm);
return 0;
}
3、编译执行,控制台成功打印”hello world”
注:
1、HMODULE hm = LoadLibrary(TEXT(“ExportDLL.dll”));
使用LoadLibrary函数时,网上查询的很多都是直接使用LoadLibrary(“ExportDLL.dll”);方式,但是不知为什么,我这里总是报错,无法编译;
2、程序运行结束一定记得释放资源FreeLibrary(hm);
3、关于函数指针的使用在次不详述;
参考:
http://blog.csdn.net/g710710/article/details/7255744
http://blog.sina.com.cn/s/blog_a50d2d740101fwuq.html
相关文章推荐
- C#调用C++编写的COM DLL
- com调用的几种方法 及 C#调用C++编写的的COM DLL收藏
- 非托管C++代码调用C#编写的dll方法
- 22.Silverlight使用WebService调用C++,Delphi编写的DLL文件
- 关于在Silverlight中调用C++编写的DLL的问题
- [编程实例]Dev-C++编写动态调用dll杀进程的程序
- C#如何调用C++编写的DLL
- 如何用java调用c++编写成的DLL
- 在C#中如何调用C++编写的DLL
- C#调用C++编写的COM DLL
- C#调用C++编写的COM DLL
- [总结]非托管C++代码调用C#编写的dll方法
- C#调用C++程序编写的dll
- C# 中调用 C++编写的 dll 的 调试
- C#调用C++编写的COM DLL
- 如何在C语言中调用C++编写的DLL中的函数
- java调用CC++编写的DLL文件问题
- C++与C#编写的DLL/COM的各种调用方法
- Silverlight实用窍门系列:22.Silverlight使用WebService调用C++,Delphi编写的DLL文件【实例源码下载】
- 用C/C++编写与调用动态链接库(DLL)文件