社区
进程/线程/DLL
帖子详情
想要在DLL里面修改主进程中的堆上的某个变量,可以做到吗
marklzj4
2013-10-21 09:24:55
这个变量是在exe中new出来的一个变量,由于DLL接口不能改变,所以这个变量的地址无法传递到DLL里面。那么有没有办法能够在DLL中得到这个变量的地址,并将之修改?
我知道很有难度,需要用到一些非常规的方法,请各位大虾出手帮忙。
...全文
704
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才能做
C# 调用 C++
dll
动态链接库
中
多个函数时全局
变量
的问题
本文详细探讨了在C#程序
中
调用C++语言算法库的方法,通过封装
DLL
库实现多个函数的导出,并在C#
中
利用全局
变量
实现函数间的通信。阐述了全局
变量
在
DLL
文件
中
的持久性,以及C#
主进程
与
DLL
文件之间的生命周期管理,确保函数间有效共享状态。
DLL
共享数据段
本文详细介绍了在Windows环境下,如何通过创建共享数据节实现
DLL
在多个进程间的共享数据。通过设置数据段属性并使用存储器映射文件技术,确保不同进程间全局
变量
的共享,并给出了C++实现
DLL
共享数据的代码示例,强调了C++类在共享数据段
中
的初始化问题,指出不建议共享C++对象。
内存补丁与
DLL
劫持实战:逆向工程
中
的运行时
修改
与模块注入技术
本文系统讲解内存补丁与
DLL
劫持两大逆向工程核心技术:内存补丁通过动态
修改
运行时指令实现逻辑绕过,涉及进程注入、特征码定位、内存页权限调整;
DLL
劫持利用Windows
DLL
搜索顺序,通过同名代理
DLL
实现函数监控与转发,涵盖依赖分析、函数转发、隐蔽通信等关键环节。内容覆盖原理、工具链(x64dbg/IDA/Process Hacker)、实战步骤及ASLR适配、反调试对抗、完整性校验等高级避坑方案,并延伸至防御措施如加壳、签名验证与搜索路径控制。
Electron:
dll
或dylib动态库调用处理
本文介绍了在Electron应用
中
遇到动态链接错误Win32error126和193的解决方法。通过设置全局
变量
管理SDK路径,根据平台动态加载
dll
或dylib文件。对于126错误,确保
DLL
路径正确,Windows下可同级放置,MacOS需使用otool
修改
dylib加载路径。对于193错误,需根据系统位数选择正确的
DLL
版本。此外,还提到了查看
dll
依赖和macOS工具otool的使用。
【关于
修改
注册表信息,设置软件为默认应用,实现查看器功能】
本文介绍了如何通过
修改
注册表信息,将软件设置为默认应用,包括在NSIS脚本、electron应用、Vue组件
中
实现鼠标右键自定义操作,以及使用注册表文件和C++
DLL
来更改默认软件。然而,文
中
提到的问题是,尽管注册表
修改
成功,但双击图片时默认应用会被系统自动恢复,需要考虑其他应用的抢占和系统行为。
进程/线程/DLL
15,465
社区成员
49,169
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章