如何在98下向其他进程申请内存?就向VirtualAllocEx一样。

verybigbug 2002-01-01 08:37:39
如何在98下向其他进程申请内存?就向VirtualAllocEx一样。
我不能用CreateFileMapping,因为该函数得到的是0x80000000以上
的地址,而我不能用这些地方,(我的程序有特殊要求,就是不能用
高端内存)。
...全文
157 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
verybigbug 2002-01-04
  • 打赏
  • 举报
回复
VirtualAlloc不能向别的进程申请内存。
verybigbug 2002-01-02
  • 打赏
  • 举报
回复
不可以用DLL的方法的,因为我的程序要对目标进程进行调试,这样,产生断点时
目标程序根本就不能动,也没办法运行DLL。我就希望在调试时向目标进程申请内存。
哈哈,要求比较高。。。
hujun614 2002-01-02
  • 打赏
  • 举报
回复
原则上来讲是不行的,但要是你是用DLL的话,只要进入了那个进程空间,就可行了,
如注入DLL技术,有很多这样的文章的,
verybigbug 2002-01-02
  • 打赏
  • 举报
回复
upupupupupup
AntGhazi 2002-01-02
  • 打赏
  • 举报
回复
VirtualAlloc在98下可用。
pdsinfo 2002-01-02
  • 打赏
  • 举报
回复
up



`
_xiaolifeidao 2002-01-02
  • 打赏
  • 举报
回复
upp
AntGhazi 2002-01-02
  • 打赏
  • 举报
回复
sorry,这里有个笔误:
0x00001000 至 0x003fffff间为16位程序装载区
AntGhazi 2002-01-02
  • 打赏
  • 举报
回复
保护模式下进程间通讯大都在2GB以上共享数据。在此以外,我也没有更好的办法。
这里是一点建议:
1、98下从0x00001000到0x00ffffff间4M的空间不受保护。这是16位DOS程序的特殊区。如果你所调试的程序是DOS程序的话,可使接读写内存。如果不是,是否有方法使操作系统误认为是16程序,而装载到共享4M空间???我也不知

2、参考softice或CIH将权限调到0级。网上有许多调到0级的例子。
verybigbug 2002-01-01
  • 打赏
  • 举报
回复
for(int i = 0; i<1000; i++)
upup();
verybigbug 2002-01-01
  • 打赏
  • 举报
回复
upup
Star_Desert 2002-01-01
  • 打赏
  • 举报
回复
Up,菜鸟一只

1,649

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 非技术类
社区管理员
  • 非技术类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧