社区
进程/线程/DLL
帖子详情
想要在DLL里面修改主进程中的堆上的某个变量,可以做到吗
marklzj4
2013-10-21 09:24:55
这个变量是在exe中new出来的一个变量,由于DLL接口不能改变,所以这个变量的地址无法传递到DLL里面。那么有没有办法能够在DLL中得到这个变量的地址,并将之修改?
我知道很有难度,需要用到一些非常规的方法,请各位大虾出手帮忙。
...全文
653
11
打赏
收藏
想要在DLL里面修改主进程中的堆上的某个变量,可以做到吗
这个变量是在exe中new出来的一个变量,由于DLL接口不能改变,所以这个变量的地址无法传递到DLL里面。那么有没有办法能够在DLL中得到这个变量的地址,并将之修改? 我知道很有难度,需要用到一些非常规的方法,请各位大虾出手帮忙。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
cjzzmdn
2013-11-01
打赏
举报
回复
我猜1、#pragma dataseg() 2、createfilemapping mapviewoffile
看不见的裂痕
2013-10-23
打赏
举报
回复
靠其他方法传值吧。 诸如数据库,或者INI文件
marklzj4
2013-10-23
打赏
举报
回复
楼上兄弟,需要提供dll里面的哪些东西,请明示。代码太多,没法全部贴上来
marklzj4
2013-10-23
打赏
举报
回复
回楼上各位,主程序不能改,dll可以随便改,但是不能改接口。dll对这个变量基本上得不到任何信息,唯一好处就是这个变量在进程一启动就new出来了,相对位置应该是固定的
boylafong
2013-10-23
打赏
举报
回复
除了接口不能改外,主程序跟dll程序可以改吗? 可以的话用共享内存。
神-气
2013-10-23
打赏
举报
回复
在DLL内部,对于这个变量的信息知道多少 ? 难道仅仅是知道有一个变量被其他module new出来了 ?
xiaohuh421
2013-10-23
打赏
举报
回复
主进程的程序代码不能修改, dll的代码也不能修改, 那就只能再注入一个dll, 在里面修改变量的值, 然后dll中自然就被修改了, 外挂的思想 不知道我理解得对不对.
「已注销」
2013-10-23
打赏
举报
回复
需要dll,需要知道你想调用dll的函数
marklzj4
2013-10-22
打赏
举报
回复
本来我的想法是先得到堆的起始地址,然后观察这个变量相对于起始地址的偏移量,据此算出地址。但是试过后发现,我的进程里居然有十几个堆(不是我的代码创建的),无法判断哪个堆才是这个变量所在的堆
91program
2013-10-22
打赏
举报
回复
难,关键是不知道这个变量的地址
「已注销」
2013-10-22
打赏
举报
回复
可以做。至于怎么做必须拿到dll才能做
多个进程范文
DLL
中
的函数/全局
变量
/数据共享段问题
转载请标明是引用于 http://blog.csdn.net/chenyujing1234 第一种方法:数据段共享#pragma data_seg 一、 #pragma data_seg() 1,#pragma data_seg()一般用于
DLL
中
。也就是说,在
DLL
中
定义一个共享的,有名字的数据段。最关键的是:这个数据段
中
的全局
变量
可以被多个进程共享。 否则多个进程之间无法共享
DLL
dll
多次实例化静态
变量
共享问题(linux,windows)
dll
多次实例化时,系统会为每个实例分配独立的内存空间,静态
变量
也不例外,要想多个
dll
实例共用同一静态
变量
,目前查到最好的方法是通过编译参数,实现这个目的。Linux和Windows下均有各自的方法。 以下是我觉得比较好的两篇文章,附上出处,由于是简单拷贝,失去了原文格式,建议去看原文。 声明:由于同时转载了两篇文章,若发布类型选择转载只能填写一个转载链接,故发布类型选择原创,本文章实为转载,请支持原创。 Windows下实现: 版权声明:本文为CSDN博主「zslInSz」的原创文章,遵循CC
探索
DLL
:功能丰富的函数查看工具指南
htmltable {th, td {th {pre {简介:
DLL
(动态链接库)是Windows操作系统
中
的一种共享库,用于节省内存和提高性能。
DLL
中
的函数查看工具可以帮助开发者分析和理解
DLL
文件
中
的函数及其相关信息,包括函数名、导出地址和参数类型等。这些工具在软件开发、调试和逆向工程方面非常有用。本文将介绍如何使用Depends等工具来分析
DLL
依赖性、查看导出和导入函数、解决链接问题、反汇编代码以及查看
DLL
的版本信息等。
ahk
变量
与内置
变量
变量
变量
的类型: AutoHotkey
中
没有明确的
变量
类型. 然而, 只包含数字 (可以含有小数点) 的
变量
进行数学运算或比较时, 会被自动转换为数值. (为了提高性能, 在内部会对数字进行缓存以避免与字符串之间的转换.)
变量
的作用域和声明: 除了函数
中
的 局部
变量
, 其他所有
变量
都是全局的; 即可以在脚本的任意位置读取或
修改
它们的内容. 除了在函数页面注明的情况,
变量
都
一键修复Windows系统
DLL
文件丢失问题实战指南
简单说,
DLL
是一种可被多个进程动态加载的模块化二进制文件。但它和 EXE 最大的区别在于:❌ 它没有入口点(比如main()),不能独立运行。✅ 它必须由宿主程序通过操作系统加载器(Loader)在运行时映射并调用。这意味着什么?意味着它可以按需加载、灵活替换、甚至热更新!// 示例:显式加载一个自定义
DLL
上面这段代码展示了典型的“延迟绑定”模式——只有当你真正需要某个功能时,才去加载对应的
DLL
模块。
进程/线程/DLL
15,467
社区成员
49,170
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章