首页 > 代码库 > vs2010环境下生成dll文件
vs2010环境下生成dll文件
vs2010环境下生成dll文件
1,新建win32工程,选中DLL项目,如下图:
2,分别添加头文件和cpp文件
2,分别添加头文件和cpp文件
#ifndef LIB_H
#define LIB_H
extern "C" int _declspec(dllexport)add(int x,int y); // 声明为C编译、链接方式的外部函数
#endif
#define LIB_H
extern "C" int _declspec(dllexport)add(int x,int y); // 声明为C编译、链接方式的外部函数
#endif
#include "stdafx.h"
int add(int x,int y)
{
return x+y;
}
3,新建win32控制台工程,添加头文件后,然后在main函数中写下如下的代码:int add(int x,int y)
{
return x+y;
}
#include "stdafx.h"
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
typedef int(*lpAddFun)(int,int);//宏定义函数指针类型
HINSTANCE hInst=NULL;
lpAddFun addFun; //函数指针
hInst=::LoadLibraryA("C:\\Users\\Administrator\\Documents\\Visual Studio 2010\\Projects\\Win32Study\\Debug\\test_1.dll");
if(hInst==NULL)
{
printf("Load mydll.DLL fail!\n");
return 0;
}
else
{
addFun=(lpAddFun)GetProcAddress(hInst,"add");
if (addFun!=NULL)
{
int result=addFun(2,3);
cout<<result<<endl;
getchar();
}
}
FreeLibrary(hInst);
return 0;
}
4,运行结果如下图:using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
typedef int(*lpAddFun)(int,int);//宏定义函数指针类型
HINSTANCE hInst=NULL;
lpAddFun addFun; //函数指针
hInst=::LoadLibraryA("C:\\Users\\Administrator\\Documents\\Visual Studio 2010\\Projects\\Win32Study\\Debug\\test_1.dll");
if(hInst==NULL)
{
printf("Load mydll.DLL fail!\n");
return 0;
}
else
{
addFun=(lpAddFun)GetProcAddress(hInst,"add");
if (addFun!=NULL)
{
int result=addFun(2,3);
cout<<result<<endl;
getchar();
}
}
FreeLibrary(hInst);
return 0;
}
posted on 2012-02-03 21:21 加文 阅读(3777) 评论(0) 编辑 收藏 引用 所属分类: Compile
找优秀程序员,就在博客园 | ||||||||
标题 | ||||||||
姓名 | ||||||||
主页 | ||||||||
| ||||||||
内容(提交失败后,可以通过“恢复上次提交”恢复刚刚提交的内容) | ||||||||
登录 使用高级评论 新用户注册 返回页首 恢复上次提交 | ||||||||
[使用Ctrl+Enter键可以直接提交] | ||||||||
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库 | ||||||||
相关文章:
| ||||||||
网站导航: 博客园 IT新闻 BlogJava 知识库 程序员招聘 管理 | ||||||||
vs2010环境下生成dll文件
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。