Advertisement

eWOW64Ext v1.1 - 支持加载任意 32/64 模块和64位汇编及进程读写-易语言

  •  5星
  •     浏览量: 0
  •     大小:None
  •      文件类型:None


简介:
eWOW64Ext v1.1 是一个强大的工具,支持在64位系统中加载任意32位或64位模块,并提供64位汇编功能及进程读写操作,适用于易语言开发环境。 模块原理:wow64 是在 64 位操作系统上允许运行32位程序(例如用易语言编写的程序)的模拟器子系统;无论是在64位还是32位的操作系统中,都存在两个地址空间。正常情况下,32位应用程序访问的是其对应的32位地址空间,而64位的应用则使用自己的64位地址空间。然而,在这两种环境之间可以进行切换,并且本模块正是利用这一特性来在程序内部从一个32位的wow环境中进入x64模式以调用ntdll.dll中的函数(这些基址是针对64位应用而言),然后返回到原来的wow环境;这个过程必须在一个子程序内完成。部分实现代码参考了c++开源项目:wow64ext,在此感谢作者 rewolf。 模块功能包括: - 实现易语言纯 64 位汇编置入代码; - 允许调用易程序中的所有ntdll.dll的函数,即使在开发32位应用程序时也能使用许多原本只属于64位的应用才能实现的功能; - 可以直接通过64位函数读写(注入)其他进程的数据; - 提供了部分常用的ntdll.dll函数,并且这些功能也有对应的32位版本以便兼容不同的需求;在非64位系统中,该模块不会启用任何可能引起异常的64位特性,但依然支持所有32位的功能; - 支持加载任意 32/64 位 DLL 文件(包括kernel32.dll),使得易语言可以调用外部 64 位动态链接库成为可能; 辅助函数: - fn_WOW64Enabled:用于检查当前运行环境是否为一个支持wow64的系统; - fn_ProcessIsX64:检测指定进程是否是64位应用程序。 内部命令(适用于处理64位数据)包括但不限于以下几种: - X64Call: 通用函数调用,用于直接执行任意64位函数; - GetNtdll64, GetModuleHandleEx64 和 GetProcAddressEx64:这些命令分别提供ntdll.dll在当前进程中的内存地址、通过哈希值获取模块的基址以及根据索引或名称查找函数地址的功能。 - NtQuerySystemInformation64: 查询系统信息,可以用于收集有关系统的各种数据; - OpenProcess64, HeapAlloc64 等等:这些命令提供了对其他进程进行操作(如打开/关闭句柄)和内存管理的能力。

全部评论 (0)

还没有任何评论哟~
客服
客服
  • eWOW64Ext v1.1 - 32/64 64-
    优质
    eWOW64Ext v1.1 是一个强大的工具,支持在64位系统中加载任意32位或64位模块,并提供64位汇编功能及进程读写操作,适用于易语言开发环境。 模块原理:wow64 是在 64 位操作系统上允许运行32位程序(例如用易语言编写的程序)的模拟器子系统;无论是在64位还是32位的操作系统中,都存在两个地址空间。正常情况下,32位应用程序访问的是其对应的32位地址空间,而64位的应用则使用自己的64位地址空间。然而,在这两种环境之间可以进行切换,并且本模块正是利用这一特性来在程序内部从一个32位的wow环境中进入x64模式以调用ntdll.dll中的函数(这些基址是针对64位应用而言),然后返回到原来的wow环境;这个过程必须在一个子程序内完成。部分实现代码参考了c++开源项目:wow64ext,在此感谢作者 rewolf。 模块功能包括: - 实现易语言纯 64 位汇编置入代码; - 允许调用易程序中的所有ntdll.dll的函数,即使在开发32位应用程序时也能使用许多原本只属于64位的应用才能实现的功能; - 可以直接通过64位函数读写(注入)其他进程的数据; - 提供了部分常用的ntdll.dll函数,并且这些功能也有对应的32位版本以便兼容不同的需求;在非64位系统中,该模块不会启用任何可能引起异常的64位特性,但依然支持所有32位的功能; - 支持加载任意 32/64 位 DLL 文件(包括kernel32.dll),使得易语言可以调用外部 64 位动态链接库成为可能; 辅助函数: - fn_WOW64Enabled:用于检查当前运行环境是否为一个支持wow64的系统; - fn_ProcessIsX64:检测指定进程是否是64位应用程序。 内部命令(适用于处理64位数据)包括但不限于以下几种: - X64Call: 通用函数调用,用于直接执行任意64位函数; - GetNtdll64, GetModuleHandleEx64 和 GetProcAddressEx64:这些命令分别提供ntdll.dll在当前进程中的内存地址、通过哈希值获取模块的基址以及根据索引或名称查找函数地址的功能。 - NtQuerySystemInformation64: 查询系统信息,可以用于收集有关系统的各种数据; - OpenProcess64, HeapAlloc64 等等:这些命令提供了对其他进程进行操作(如打开/关闭句柄)和内存管理的能力。
  • -eWOW64Ext v1.21 - 32/64|动态调用|64功能
    优质
    eWOW64Ext是一款强大的易语言扩展库,版本v1.21支持同时加载32位和64位模块,并提供动态调用、64位汇编以及进程读写等高级功能。 没有任何实质性内容更新,仅内部架构调整以提高模块的易用性和派生能力;精易的易语言全功能 SQLite3 数据库接口模块必须升级到当前版本才能正常使用。 本次更新包括对64位操作系统的支持改进。在64位操作系统中运行32位程序时(如通过易编译器生成的应用),会使用一个名为wow64的模拟子系统,它创建两个地址空间:一个是用于32位应用的传统32位地址空间;另一个是专为调用64位函数设计的64位地址空间。本模块利用这一机制切换到64位地址空间以访问ntdll.dll中的相关功能。 具体来说,该模块允许在维持wow环境的同时进入x64模式执行部分代码或汇编指令,并最终返回至原始状态;此过程必须在一个独立的子程序内完成。此外,通过借鉴c++开源项目wow64ext的部分实现逻辑(作者为rewolf),本模块实现了易语言纯64位汇编插入功能。 更新后的版本能够直接调用ntdll.dll中的所有函数,即使开发的是32位应用也不例外;这使得开发者可以利用大量原本仅适用于64位程序的功能。例如:可以直接使用64位函数读写(注入)其他进程的内存空间,而无需借助NtWow64xxx系列API。 新版本还提供了一些特定于ntdll.dll功能的支持,包括但不限于: - 检测目标进程是否为64位 - 计算模块或函数哈希值以实现高效的动态调用机制 - 通过X64Call通用方法访问未直接提供的其他64位API 同时,为了确保兼容性,在32位系统上运行时不会启用不支持的64位功能;但依旧保留了所有适用于该平台的功能。 此外,新版本还增强了对加载任意格式(包括但不限于动态链接库)的支持,并且可以处理本地文件或内存中的对象。通过这些改进,现在易语言程序可以直接调用外部64位DLL,如kernel32.dll等系统核心组件。 最后,请在发现任何错误时提供详细的复现步骤及环境信息以便于后续的调试与修复工作。
  • -用于64序的内存
    优质
    简介:该模块为易语言开发者提供了一套针对64位系统的内存操作解决方案,支持高效、便捷地进行进程内或跨进程的读取与修改内存数据,助力开发更为强大和稳定的软件应用。 最近我在为一个64位的游戏开发第三方软件,并需要进行内存操作。我发现常规方法无法满足需求后,在网上查找了一些资料,但关于易语言这方面的内容不多。因此我整理并编写了一份源码,希望能供其他网友学习参考。
  • 6432译的HighSpeedChartCtrl
    优质
    HighSpeedChartCtrl是一款兼容32位与64位系统的图表控件,专为快速高效地生成动态图表设计,适用于各类数据可视化需求。 CodeProject上有highspeed charting cotrol的开源代码,但只能编译生成32位的程序。最近工作需要稍微修改了源代码,使其既能编译成32位也能编译成64位版本。使用教程等资料较多,请自行搜索获取相关信息。
  • -用于64序的内存操作纯
    优质
    本模块专为易语言设计,提供在64位系统中进行高效、安全的内存读取和写入功能。适用于需要直接访问和修改进程内存的应用开发场景。 易语言是一种专为初学者设计的编程语言,其语法简单且易于学习使用,降低了编程入门门槛。本段落主要探讨在64位操作系统环境中如何利用易语言进行内存读取与写入操作。这种技能对于调试、数据抓取或逆向工程等领域至关重要。 由于64位系统支持更大的地址空间(理论上可达2^64个地址),传统的32位内存处理方法不再适用,需要新的解决方案来满足需求。易语言通过提供独立的代码模块实现了这一功能,使开发者可以轻松地进行内存访问而无需深入了解底层细节。 理解基本概念是掌握这项技能的关键所在:在易语言中执行64位内存操作时通常需要用到特定函数或命令(例如“读内存”和“写内存”),这些命令涉及到指针类型及地址处理。此外,代码模块可能包含以下关键部分: 1. **内存读取**:通过指定目标进程的句柄、所需数据在内存中的位置以及需读取的数据长度使用“读内存”函数来实现。 2. **内存写入**:同样需要提供目标进程句柄和待修改内容的具体地址,然后利用“写内存”命令完成操作。所写入的信息可以是变量值或预定义的字节序列。 3. **指针管理**:在64位架构下,指针占用8个字节空间,因此应使用适合该环境的数据类型,并确保其正确转换和应用。 4. **错误处理**: 内存操作可能因权限问题、无效地址等原因失败。为此,在易语言模块中需要加入相应的异常处理代码来应对各种潜在的问题。 5. **进程管理**:在执行内存访问之前,通常需先获取目标程序的句柄,并验证是否具有所需的读写权限。 为了确保跨平台和不同版本下的兼容性,设计时还需考虑这些因素。通过学习并应用易语言提供的64位内存操作模块源码,开发者能够提升自身技能水平,在实际项目中进行更高效、底层级别的编程工作。
  • Win7 64隐藏与保护
    优质
    易语言Win7 64位隐藏与保护进程模块是一款专为Windows 7 64位系统设计的安全工具。该模块能够实现对关键进程的隐藏和保护,防止未经授权的操作干预,确保系统的稳定性和安全性。 易语言隐藏进程模块支持Win7 64位系统,具备保护进程、防破解、防注入及防止Ce、WPE等功能。
  • Delphi内存,兼容3264DLL文件
    优质
    本Delphi组件可实现高效内存加载与管理32位及64位DLL功能,适用于各类软件开发需求,提升应用灵活性与性能。 在IT行业中,Delphi是一种基于Pascal语言的集成开发环境(IDE),用于创建Windows桌面应用程序。内存加载模块是软件开发中的一个技术,它允许程序在运行时动态地加载DLL(动态链接库)文件,而不是在编译时静态链接。这种技术在某些场景下非常有用,比如实现插件系统、避免修改原始程序文件或者处理跨版本兼容性问题。 标题提到的“Delphi内存加载模块,支持32.64 DLL文件”意味着这个模块是为Delphi开发者设计的,能够帮助他们在32位(x86)和64位(x64)环境下加载DLL。这通常涉及到使用低级别的API调用来实现,如`LoadLibrary`、`GetProcAddress`和`FreeLibrary`等Windows API函数。 1. **内存DLL的使用**:内存DLL与常规DLL的主要区别在于,它们不是在程序启动时由操作系统加载到进程空间的,而是在程序运行期间通过代码动态加载到内存中的。这样可以实现运行时的灵活性,例如在程序运行过程中根据需要加载特定功能的库。 2. **32位和64位兼容性**:在64位系统上运行32位程序时,需要确保加载的DLL也是32位的,反之亦然。这个模块支持跨平台操作,使得开发者无需为不同架构编写不同的加载代码。 3. **`thunk`技术**:在内存加载模块中,`thunk`通常是指转换代码,它用于处理32位和64位之间的调用约定差异。当32位代码尝试调用64位DLL或反之时,通过使用这种桥梁代码可以确保函数调用的正确性。 4. **安全性和稳定性**:内存加载DLL虽然提供了很大的灵活性,但也增加了潜在的安全风险。因为动态加载的代码可能未经验证,所以必须小心处理以防止恶意代码注入。同时,由于内存管理更加复杂,可能会导致内存泄漏或其他稳定性问题。 5. **代码实现**:在Delphi中实现内存加载DLL通常包括以下几个步骤: - 使用`LoadLibrary`函数来加载DLL。 - 利用`GetProcAddress`获取所需功能的地址。 - 调用得到的函数指针执行相应的操作。 - 通过调用`FreeLibrary`卸载不再需要的DLL。 6. **应用示例**:内存加载模块可用于创建插件系统,使得用户可以在不重启主程序的情况下安装、更新或移除插件;也可以用于调试目的,动态替换或者增强现有程序的功能;还可以处理版本间的兼容性问题,当新旧版本之间的库文件不兼容时可以使用这种技术。 Delphi内存加载模块为开发者提供了一种强大的工具,在运行时灵活地加载和利用DLL。然而这要求开发人员对底层操作系统原理有深入理解,并且在实际操作中需特别注意安全性和稳定性的问题。
  • 最新MG-SOFT MIB-BrowserLicense(3264)下
    优质
    简介:MG-SOFT MIB-Browser是一款功能强大的SNMP管理工具,适用于32位和64位系统。本页面提供该软件及其许可证的最新版本下载。 MG-SOFT MIB-Browser 2017 提供了32位和64位两种安装方式,并包含为期30天的试用许可证。
  • mfc42d.dll 【通用版,3264
    优质
    MFC42D.DLL是一款适用于Windows操作系统的动态链接库文件,提供对Microsoft Foundation Classes (MFC) 4.2的支持。此版本为通用型DLL,兼容32位及64位系统环境,确保应用程序在不同架构下的正常运行与稳定表现。 mfc42d.dll 适用于32位和64位系统。
  • 64序的技巧
    优质
    本教程详细介绍使用易语言开发环境创建64位应用程序的方法和技巧,帮助开发者轻松掌握针对Windows 64位系统的编程技术。 在本段落中,小编分享了关于使用易语言编写64位程序的方法和步骤,需要的朋友可以参考一下。