易语言源码这个Wow64子系统本质上是由4个64位的Dll(ntdll.dll,wow64.dll,wow64win.dll,wow64cpu.dll)模拟了一个32位的程序。(这个进程虽然是运行的32位代码,但API接口核心由64位完成,甚至这个进程有64位的PEB、TEB和32位的PEB、TEB,系统判断进程是否为32位无非是检查TEB->WowTebOffset的值)
所以本质上64位系统下的32位程序是有64位进程的特性。
所以只要突破系统对于进程的限制,申请大内存的问题就迎刃而解了。
如何突破?直接用64位的NtAllocateVirtualMemory就可以了。
理论上使用这个方法后,64位系统下的32位进程就可以申请到高于32位的地址,实现真正意义上的32位可用内容的突破。
注意:申请到的内存地址必须使用x64的命令进行访问
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系贝贝进行处理。本站默认解压密码:www.hibbba.com