DLL编写

在 windows程序中,不同exe间不能随意访问彼此的内存,那么若想实现此功能,怎么办?dll登场。

何为dll?

DLL是Dynamic Link Library的缩写,意为动态链接库。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可有多个DLL文件,一个DLL文件也可能被几个应用程序所共用,这样的DLL文件被称为共享DLL文件。(百度百科)其实就是封闭好的函数库。

如何生成dll文件

  1. 在VS2013中,新建项目选择Win32控制台应用程序,输入项目名字。
    在这里插入图片描述
  2. 选择dll,空项目。
    在这里插入图片描述
  3. 在正常声明的函数前,增加_declspec(dllexport) 即可 。
    以下是一个通过动态库修改其他程序内存地址值的例子。
    A程序如下:
    在这里插入图片描述
    运行结果如下:
    在这里插入图片描述
    编写的动态库:
    在这里插入图片描述
    生成dll。
    使用dll注入工具,将生成的dll注入到原来的程序a中,修改内存值,发现原来a程序的值发生了变化。
    在这里插入图片描述
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值