开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 3534|回复: 16
打印 上一主题 下一主题
收起左侧

[易源码分享] JAVA 辅助模块【公测版】脚本与内存都可操作

[复制链接]
结帖率:50% (1/2)
跳转到指定楼层
楼主
发表于 2021-12-2 17:37:29 | 只看该作者 回帖奖励 |正序浏览 |阅读模式   福建省泉州市
分享源码
界面截图: -
是否带模块: -
备注说明: -
本帖最后由 失败D宏 于 2021-12-2 17:45 编辑

内附demo
https://125.confly.eu.org/forum.php?mod ... 14699447&extra=
https://gitee.com/SnailcatMall/JscmAPIjava
下载地址:  https://gitee.com/SnailcatMall/JscmAPIjava






<h1>JAVA 基于JNA SDK1.8 Win32 API 调用库</h1>
<h3>我们的宗旨是:让JAVA更加便捷高效的开发窗体</h3>
<h3>易语言代码转JAVA</h3>
<h3>模块引用基于火山语言库</h3>
<hr>
<h1>更新日志表</h1>

<table>
    <tr>
        <td>更新API函数,重构项目</td>
        <td>2021年10月3日10:45:15</td>
    </tr>
    <tr>
        <td>更新API函数,重构项目</td>
        <td>2021年10月2日10:18:34</td>
    </tr>
    <tr>
        <td>更新API函数,重构项目</td>
        <td>2021年9月25日23:27:18</td>
    </tr>
</table>
<hr>
<h3>API 函数列表</h3>
<h1>进程线程类</h1>
<table  style="font-size: 10px">
    <tr >
        <td>返回值</td>
        <td>调用函数</td>
        <td>参数表</td>
        <td>方法名</td>
    </tr>
</table>
<table  style="font-size: 10px">
    <tr >
        <td>String</td>
        <td>ProcessAndThread.getProcessName(Integer th32ProcessID)</td>
        <td>参数1:进程ID</td>
        <td>进程ID取进程名</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.getProcessNameToProcessID(String ProcessName)</td>
        <td>参数1:进程名</td>
        <td>进程名取ID</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.processOpen(Integer dwProcessID)</td>
        <td>参数1:进程ID</td>
        <td>打开进程ID</td>
    </tr>
    <tr>
        <td>boolean</td>
        <td>ProcessAndThread.processClose(Integer dwProcessID)</td>
        <td>参数1:进程句柄</td>
        <td>关闭进程句柄</td>
    </tr>
    <tr>
        <td>boolean</td>
        <td>ProcessAndThread.processOver(Integer dwProcessID)</td>
        <td>参数1:进程ID</td>
        <td>结束进程</td>
    </tr>
    <tr>
        <td>boolean</td>
        <td>ProcessAndThread.processOver(String ProcessName)</td>
        <td>参数1:进程名</td>
        <td>结束进程</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.getProcessID ()</td>
        <td>参数1:无</td>
        <td>取自身进程ID</td>
    </tr>
    <tr>
        <td>boolean</td>
        <td>ProcessAndThread.whetherProcessThereAre(String ProcessName)</td>
        <td>参数1:进程名</td>
        <td>进程是否存在</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.processGetWindow(String ProcessName)</td>
        <td>参数1:进程名</td>
        <td>进程名取窗口句柄</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.processNameGetThreadID(String ProcessName)</td>
        <td>参数1:进程名</td>
        <td>进程名取线程ID</td>
    </tr>
    <tr style="background-color: aliceblue">
        <td>String</td>
        <td>ProcessAndThread.getProcessToPath(String ProcessName)</td>
        <td>参数1:进程名</td>
        <td>取启动进程路径</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.getModuleHandle(String lpModuleName)</td>
        <td>参数1:模块名 DLL 或 EXE</td>
        <td>取模块句柄</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.getTopProcessID(String ProcessName)</td>
        <td>参数1:进程名</td>
        <td>进程名取父进程ID</td>
    </tr>
    <tr>
        <td>boolean</td>
        <td>ProcessAndThread.memoryTuning()</td>
        <td>无</td>
        <td>内存优化</td>
    </tr>
    <tr>
        <td>boolean</td>
        <td>ProcessAndThread.processSuspended(String ProcessName,boolean flag)</td>
        <td>参数1:进程名<br/>参数2:<br/>true->暂停<br/>false->释放</td>
        <td>进程暂停</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>enumThread(String ProcessName,List:THREADENTRY32 threadentry32List)</td>
        <td>参数1:进程名<br/>参数2:返回线程集合</td>
        <td>进程名枚举线程ID</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>openThreadID(Integer threadID)</td>
        <td>参数1:线程ID<br/></td>
        <td>打开线程</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>getThreadID()</td>
        <td>无</td>
        <td>取自身线程ID</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>gethTread()</td>
        <td>无</td>
        <td>取自身线程伪句柄</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>threadConsumption(Integer hTread)</td>
        <td>参数1:线程句柄</td>
        <td>线程销毁</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>threadSuspended(Integer hTread,boolean flag)</td>
        <td>参数1:线程句柄<br/>参数2:真挂机-假释放<br/></td>
        <td>线程挂起</td>
    </tr>
    <tr>
        <td>MODULEINFO</td>
        <td>ProcessAndThread.selectModuleInfo(String ProcessName, Integer moduleHandle)</td>
        <td>参数1:进程名<br/>参数2:模块地址</td>
        <td>查询模块信息</td>
    </tr>
    <tr>
        <td>boolean</td>
        <td>ProcessAndThread.elevatePrivileges(String ProcessName,Integer TokenIndex)</td>
        <td>参数1:进程名<br/>参数2:权限选择</td>
        <td>提升权限</td>
    </tr>
</table>
<h1>内存操作类</h1>
<table  style="font-size: 10px">
    <tr >
        <td>返回值</td>
        <td>调用函数</td>
        <td>参数表</td>
        <td>方法名</td>
    </tr>
</table>
<table  style="font-size: 10px">
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.createMemoryZero(String ProcessName,long dwSize)</td>
        <td>参数1:进程名<br/>参数2:长度</td>
        <td>创建申请内存</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.releaseMemoryZero(String ProcessName,Integer address)</td>
        <td>参数1:进程名<br/>参数2:内存地址</td>
        <td>释放申请内存</td>
    </tr>
    <tr>
        <td>boolean</td>
        <td>ProcessAndThread.memoryAddressIsValid(String ProcessName,Integer address)</td>
        <td>参数1:进程名<br/>参数2:内存地址</td>
        <td>内存地址是否有效</td>
    </tr>
    <tr>
        <td>boolean</td>
        <td>ProcessAndThread.memoryAddressIsStatic(String ProcessName,Integer address)</td>
        <td>参数1:进程名<br/>参数2:内存地址</td>
        <td>内存地址是否为静态地址</td>
    </tr>
    <tr>
        <td>boolean</td>
        <td>ProcessAndThread.memoryAddressIsBaseAddress(String ProcessName,Integer address)</td>
        <td>参数1:进程名<br/>参数2:内存地址</td>
        <td>内存地址是否为基地址</td>
    </tr>
    <tr>
        <td>PMEMORY_BASIC_INFORMATION</td>
        <td>ProcessAndThread.selectMemoryAddressAttribute(String ProcessName,Integer address)</td>
        <td>参数1:进程名<br/>参数2:内存地址</td>
        <td>查询内存保护</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.updateMemoryAddressAttribute(String ProcessName, Integer address,Integer attribute, Integer dwSize)</td>
        <td>参数1:进程名<br/>参数2:内存地址<br/>参数3:属性<br/>参数4:长度</td>
        <td>修改内存保护</td>
    </tr>
    <tr>
        <td>short</td>
        <td>ProcessAndThread.ReadProcessMemoryShort(String ProcessName, Integer address)</td>
        <td>参数1:进程名<br/>参数2:内存地址</td>
        <td>内存读短整数</td>
    </tr>
    <tr>
        <td>float</td>
        <td>ProcessAndThread.ReadProcessMemoryFloat(String ProcessName, Integer address)</td>
        <td>参数1:进程名<br/>参数2:内存地址</td>
        <td>内存读小数型</td>
    </tr>
    <tr>
        <td>float</td>
        <td>ProcessAndThread.ReadProcessMemoryDouble(String ProcessName, Integer address)</td>
        <td>参数1:进程名<br/>参数2:内存地址</td>
        <td>内存读双精度型</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.ReadProcessMemoryInt(String ProcessName, Integer address)</td>
        <td>参数1:进程名<br/>参数2:内存地址</td>
        <td>内存读整数型</td>
    </tr>
    <tr>
        <td>long</td>
        <td>ProcessAndThread.ReadProcessMemoryLong(String ProcessName, Integer address)</td>
        <td>参数1:进程名<br/>参数2:内存地址</td>
        <td>内存读长整数型</td>
    </tr>
    <tr>
        <td>String</td>
        <td>ProcessAndThread.ReadProcessMemoryString(String ProcessName, Integer address,Integer dwSize)</td>
        <td>参数1:进程名<br/>参数2:内存地址<br/>参数3:文本长度</td>
        <td>内存读文本型</td>
    </tr>
    <tr style="background-color: aliceblue">
        <td>String</td>
        <td>ProcessAndThread.RReadProcessMemoryByteHex(String ProcessName, Integer address,Integer len)</td>
        <td>参数1:进程名<br/>参数2:内存地址<br/>参数3:返回长度</td>
        <td>内存读字节数组HEX【内存读字节集】</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.WriteProcessMemoryShort(String ProcessName, Integer address,short lpBuffer)</td>
        <td>参数1:进程名<br/>参数2:内存地址<br/>参数3:写入数据</td>
        <td>内存写短数型</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.WriteProcessMemoryFloat(String ProcessName, Integer address,float lpBuffer)</td>
        <td>参数1:进程名<br/>参数2:内存地址<br/>参数3:写入数据</td>
        <td>内存写小数型</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.WriteProcessMemoryDouble(String ProcessName, Integer address,double lpBuffer)</td>
        <td>参数1:进程名<br/>参数2:内存地址<br/>参数3:写入数据</td>
        <td>内存写双精度小数型</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.WriteProcessMemoryInt(String ProcessName, Integer address,int lpBuffer)</td>
        <td>参数1:进程名<br/>参数2:内存地址<br/>参数3:写入数据</td>
        <td>内存写整型</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.WriteProcessMemoryLong(String ProcessName, Integer address,long lpBuffer)</td>
        <td>参数1:进程名<br/>参数2:内存地址<br/>参数3:写入数据</td>
        <td>内存写长整型</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.WriteProcessMemoryString(String ProcessName, Integer address,String lpBuffer)</td>
        <td>参数1:进程名<br/>参数2:内存地址<br/>参数3:写入数据</td>
        <td>内存写文本整型</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ProcessAndThread.WriteProcessMemoryHex(String ProcessName, Integer address,String lpBuffer,Integer len)</td>
        <td>参数1:进程名<br/>参数2:内存地址<br/>参数3:写入数据<br/>参数3:长度</td>
        <td>内存写字节数组HEX【内存写字节集】</td>
    </tr>
</table>
<h1>转换操作类</h1>
<table  style="font-size: 10px">
    <tr >
        <td>返回值</td>
        <td>调用函数</td>
        <td>参数表</td>
        <td>方法名</td>
    </tr>
</table>
<table  style="font-size: 10px">
    <tr>
        <td>Integer</td>
        <td>CodeConversion.HexToInt(String content)</td>
        <td>参数1:十六进制文本->009AF51C</td>
        <td>十六进制转十进制</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>CodeConversion.String IntToHex(Integer n) </td>
        <td>参数1:十进制文本->10155292</td>
        <td>十进制转十六进制</td>
    </tr>
</table>
<h1>模块操作类</h1>
<table  style="font-size: 10px">
    <tr >
        <td>返回值</td>
        <td>调用函数</td>
        <td>参数表</td>
        <td>方法名</td>
    </tr>
</table>
<table  style="font-size: 10px">
    <tr>
        <td>Integer</td>
        <td>ModuleOperation.getDLLFunctionAddress(Integer ModelAddress,String Fun)</td>
        <td>参数1:模块句柄<br/>参数2:函数名<br/></td>
        <td>取库函数地址</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ModuleOperation.getLoadDLL(String DLLFile)</td>
        <td>参数1:DLL文件地址</td>
        <td>加载DLL</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ModuleOperation.getDLLModelAddressZero(String ModuleName)</td>
        <td>参数1:DLL文件地址</td>
        <td>取DLL模块地址1</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>ModuleOperation.getDLLModelAddressOne(Integer ModuleName)</td>
        <td>参数1:DLL文件地址</td>
        <td>取DLL模块地址2</td>
    </tr>
</table>
<h1>窗口操作类</h1>
<table  style="font-size: 10px">
    <tr >
        <td>返回值</td>
        <td>调用函数</td>
        <td>参数表</td>
        <td>方法名</td>
    </tr>
</table>
<table  style="font-size: 10px">
    <tr>
        <td>Integer</td>
        <td>WindowOperation.windowTop(Integer hwnd ,boolean flag)</td>
        <td>参数1:窗口句柄<br/>参数2:是否置顶<br/></td>
        <td>窗口置顶</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>WindowOperation.windowAlpha(Integer hwnd,Integer Alpha,boolean flag)</td>
        <td>参数1:窗口句柄<br/>参数2:透明度<br/>参数3:是否穿透<br/></td>
        <td>窗口透明度</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>WindowOperation.windowThrough(Integer hwnd, boolean flag)</td>
        <td>参数1:窗口句柄<br/>参数2:是否穿透</td>
        <td>窗口穿透</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>WindowOperation.windowMaxTop(Integer hwnd,boolean flag)</td>
        <td>参数1:窗口句柄<br/>参数2:是否置顶</td>
        <td>总在最前</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>WindowOperation.windowFocus(Integer hwnd)</td>
        <td>参数1:窗口句柄<br/></td>
        <td>窗口焦点</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>WindowOperation.windowMin(Integer hwnd)</td>
        <td>参数1:窗口句柄<br/></td>
        <td>窗口最小化</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>WindowOperation.windowMax(Integer hwnd)</td>
        <td>参数1:窗口句柄<br/></td>
        <td>窗口最大化</td>
    </tr>
    <tr>
        <td>Integer</td>
        <td>WindowOperation.windowIsMin(Integer hwnd)</td>
        <td>参数1:窗口句柄<br/></td>
        <td>是否最小化</td>
    </tr>
</table>

具体可以参考其他之前的贴子  :  前提需要有java基础!!


评分

参与人数 2好评 +1 精币 +3 收起 理由
ghost12 + 1 支持开源~!感谢分享
动鸡不淳 + 1 + 2 gitee 打不开了

查看全部评分


签到天数: 2 天

17
发表于 2025-3-14 18:37:44 | 只看该作者   福建省莆田市

此处应该有鼓励~
回复 支持 反对

使用道具 举报

16
发表于 2022-3-20 22:50:07 | 只看该作者   江苏省南京市
链接无了,什么时候补一下
回复 支持 反对

使用道具 举报

结帖率:79% (27/34)

签到天数: 16 天

15
发表于 2022-3-4 19:01:41 | 只看该作者   上海市上海市
此处应该有鼓励~
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)
14
发表于 2022-3-1 12:59:27 | 只看该作者   山东省青岛市
66666666666666666666666666666666666666666666666666666666666666666666666666666
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)
13
发表于 2022-3-1 12:59:10 | 只看该作者   山东省青岛市
6666666666666666666666666666
回复 支持 反对

使用道具 举报

结帖率:81% (13/16)
12
发表于 2022-1-4 21:14:22 | 只看该作者   浙江省嘉兴市
感谢楼主分享,支持一下~~!!!
回复 支持 反对

使用道具 举报

11
发表于 2021-12-9 08:41:33 | 只看该作者   江苏省南通市
66666666666666666666666666666666
回复 支持 反对

使用道具 举报

结帖率:50% (1/2)
10
 楼主| 发表于 2021-12-7 16:45:48 | 只看该作者   福建省泉州市

我最近在增加方法和功能,后面会在此贴更新
回复 支持 反对

使用道具 举报

9
发表于 2021-12-3 23:04:43 | 只看该作者   江苏省南京市
你发了个寂寞
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:[email protected]
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表