一直很好奇C++的Dll是个什么东西...
最近终于知道了..
1.创建project
选择Win32 Dynamic Link Library,然后 OK, 然后 选择带一个例子的那个 project
2.写一个简单的方法
在project中可以看到已经创建好的4个文件.
dlltest.cpp StdAfx.cpp dlltest.h StdAfx.h
先在dlltest.h 中生命自己要写的方法
#ifdef DLLTEST_EXPORTS
#define DLLTEST_API __declspec(dllexport)
#else
#define DLLTEST_API __declspec(dllimport)
#endif
DLLTEST_API int add(int a,int b);
然后去dlltest.cpp 中实现之
#include "stdafx.h"
#include "dlltest.h"
BOOL APIENTRY DllMain( HANDLE hModule,
DWORD ul_reason_for_call,
LPVOID lpReserved
)
{
switch (ul_reason_for_call)
{
case DLL_PROCESS_ATTACH:
case DLL_THREAD_ATTACH:
case DLL_THREAD_DETACH:
case DLL_PROCESS_DETACH:
break;
}
return TRUE;
}
DLLTEST_API int add(int a,int b)
{
return a+b;
}
这样dll就算是写完了,build 一下.
3.使用Dll
去dlltest的文件目录下的debug中,把dlltest.dll 和 dlltest.lib 复制到目标程序中,然后把 dlltest.h 也复制到目标程序中.
在目标程序 testdll.cpp 中
#include "dlltest.h"
#include <stdio.h>
int main(){
int c=add(3,5);
printf("%d\n",c);
return 0;
}
这样build.没有错误..但是运行会提示错误..
在该project的 settings 中 的 link 标签页 中间 那行 Object/Library modules: 中添加dlltest.lib 。
然后build.然后运行..
现在已经可以成功使用dll了.
ps:微软的东西真是麻烦...
分享到:
相关推荐
本例说明如何使用vc6创建和使用dll,其中dll导出函数为一些本人实现的字符串函数,可供初学这参考,详细内容可参考readme文件
一个使用创建和使用dll的示例代码,开发环境为vs2013。演示了怎么导出变量,函数和类。MyDll是一个dll项目,使用extern "C"导出内容,会生成一个dll;MyDll2也是一个dll项目,不使用extern "C"导出内容,也会生成一...
dll创建和使用工程,可借鉴作为模板。开发环境VS2012。
dll的创建与使用 dll的创建与使用 dll的创建与使用
易语言创建进程注入DLL源码,创建进程注入DLL,GetCmdLine,命令行缓冲区_,取文本内容长度_,CopyMemory,SN_CreateProcessA,SN_InjectDllA
Delphi创建Dll和调用Dll示例(包含Dll窗体调用) 网上介绍比较杂乱,特地整理了一份Demo代大家学习参考。 1.socketA_dll 为dll工程目录。 2.LoadDllDemo 为【静态调用】dll工程目录。 3.LoadDllDemo_动态调用 为...
创建和使用 C# DLL(C# 编程指南)
使用DLL创建程序快捷方式,简单,轻便~~欢迎下载!
详细讲解通过def文件创建DLL,方便初学者能快速掌握使用和创建dll
易语言创建进程注入DLL文件。@qq1347522182。
visual studio 创建dll和使用dll
C#中创建和调用DLL 含源码 学习C#调用dll的例子
一 链接库概述 二 静态链接库 三 库的调试与查看 四 一个简单的DLL 非MFC动态库 五 MFC规则DLL Regular 六 MFC扩展DLL的创建 七 让EXE导出函数及DLL木马
创建和使用一个MFC DLL 创建和使用一个MFC DLL 创建和使用一个MFC DLL
DelphiDll创建与调用源码 使用delphi生成动态连接库文件 并使用动态连接库
该资源提供MFC常规DLL的定义,与使用方法,对初学者有一定帮助
如何利用C#创建和调用DLL 一、写在前面 二、准备工作 三、创建DLL 四、 使用DLL 五、执行 六、输出 七、小结
运用DELPHI7.0创建并调用DLL计算两个数中的最大数和最小数。
纯资源(.rc)DLL创建与使用源码,使用开发开台是VS2008.
创建和使用一个Win32 DLL 创建和使用一个Win32 DLL 创建和使用一个Win32 DLL 创建和使用一个Win32 DLL