511遇见易语言API模块制作进程取程序路径
易语言API模块制作进程取程序路径,提高进程的PID获取程序的所在路径。
视频链接:
511遇见易语言模块API教程
进程_取程序路径
1、CreateToolhelp32Snapshot
快照句柄 = CreateToolhelp32Snapshot (8, 进程ID)
2、CloseHandle (快照句柄)
3、目录_取system32目录
GetSystemDirectoryA(成功返回system32目录的全路径)
4、Module32First(此函数检索与进程相关联的第一个模块的信息)
5、Win7的80端口默认是被System进程占用的
模块信息
https://baike.baidu.com/item/MODULEENTRY32/926525?fr=aladdin
https://technet.microsoft.com/zh-cn/library/ms886756
数据类型
.版本 2.数据类型 进程模块信息, 公开, 进程模块信息modBaseAddr和hModule的成员只有在指定的th32ProcessID进程中才有效。
.成员 dwSize, 整数型, , , 1指定结构的长度,以字节为单位。在调用Module32First功能,设置这个成员SIZEOF(MODULEENTRY32)。如果你不初始化的dwSize,Module32First将失败。
.成员 th32ModuleID, 整数型, , , 2此成员已经不再被使用,通常被设置为1
.成员 th32ProcessID, 整数型, , , 3正在检查的进程标识符。这个成员的内容,可以使用Win32 API的元素
.成员 GlblcntUsage, 整数型, , , 4全局模块的使用计数,即模块的总载入次数。通常这一项是没有意义的,被设置为0xFFFF。
.成员 ProccntUsage, 整数型, , , 5全局模块的使用计数(与GlblcntUsage相同)。通常这一项也是没有意义的,被设置为0xFFFF。
.成员 modBaseAddr, 整数型, , , 6模块的基址,在其所属的进程范围内。
.成员 modBaseSize, 整数型, , , 7模块的大小,单位字节。
.成员 hModule, 整数型, , , 8所属进程的范围内,模块句柄。
.成员 szModule, 字节型, , "256", NULL结尾的字符串,其中包含模块名。
.成员 szExePath, 字节型, , "256", NULL结尾的字符串,其中包含的位置,或模块的路径。
Module32First
.版本 2.DLL命令 Module32First, 整数型, "KERNEL32.DLL", "Module32First", , 进程_取程序路径
.参数 hSnapshot, 整数型, , 快照句柄
.参数 lpme, 进程模块信息
进程_取程序路径 源码
.版本 2.子程序 进程_取程序路径, 文本型, 公开, 取指定进程的程序路径,成功返回程序路径,失败返回空
.参数 进程ID, 整数型
.局部变量 快照句柄, 整数型
.局部变量 模块信息, 进程模块信息
.局部变量 路径, 文本型快照句柄 = CreateToolhelp32Snapshot (8, 进程ID)
.判断开始 (进程ID = 4)
CloseHandle (快照句柄)
返回 (目录_取system32目录 ())
.判断 (进程ID = -1)
返回 (“”)
.默认.判断结束
模块信息.dwSize = 1024
Module32First (快照句柄, 模块信息)
路径 = 到文本 (模块信息.szExePath)
.判断开始 (取文本左边 (路径, 11) = “\SystemRoot”)
路径 = 读环境变量 (“SystemRoot”) + 子文本替换 (路径, “\SystemRoot”, “”, , 1, 假).判断 (取文本左边 (路径, 4) = “\??\”)
路径 = 子文本替换 (路径, “\??\”, “”, , 1, 假)
.默认.判断结束
CloseHandle (快照句柄)
返回 (路径)
易语言调用
.版本 2
.支持库 spec.程序集 窗口程序集_启动窗口, , , 511遇见(www.511yj.com).子程序 _按钮1_被单击, , , 进程_取程序路径
.局部变量 路径, 文本型路径 = 进程_取程序路径 (9780)
标签1.标题 = 路径
调试输出 (路径)
源码:511遇见易语言模块API制作
易语言API模块制作进程取程序路径
易语言模块API制作系列视频教程
511遇见易语言API模块制作进程取程序路径相关推荐
- 易语言取java路径模块_易语言API模块制作进程取程序路径
易语言API模块制作进程取程序路径,提高进程的PID获取程序的所在路径. 进程_取程序路径 1.CreateToolhelp32Snapshot 快照句柄 = CreateToolhelp32Snap ...
- 511遇见易语言API模块视频教程进程取ID数组
本课是完成大漠多线程的必须写封装的命令,因为线程我们要同时获取多个窗口的句柄,那么我们可以先获取多个窗口的进程ID数组,再根据进程ID分别获取窗口句柄. 视频链接 511遇见易语言模块API教程 思路 ...
- 511遇见易语言API模块进程创建CreateProcess
封装进程创建的原因主要是易语言自带的运行和执行命令不能启动游戏,当我们写一键启动,批量启动游戏时,便用到了进程_创建的命令.易语言里的运行(),执行()有时候并不能直接运行一些游戏,而采用进程创建才可 ...
- 511遇见易语言API模块进程ID取窗口句柄
通过进程ID取得该进程的窗口句柄,超时的时候返回 0 511遇见易语言模块API教程 FindWindowExA .版本 2.DLL命令 FindWindowExA, 整数型, "user3 ...
- 易语言取java路径模块,511遇见易语言API模块进程创建CreateProcess
封装进程创建的原因主要是易语言自带的运行和执行命令不能启动游戏,当我们写一键启动,批量启动游戏时,便用到了进程_创建的命令.易语言里的运行(),执行()有时候并不能直接运行一些游戏,而采用进程创建才可 ...
- 511遇见易语言API模块通过进程名获取进程句柄
上节课通过进程名称获取进程ID,然后再通过进程ID来获取窗口句柄,本课直接通过进程名称来获取窗口句柄,其实是对 进程_名取ID 和 进程_ID取窗口句柄 一个应用组合封装.通过进程名称取得相应的窗口的 ...
- 511遇见易语言API模块线程创建许可证(InitializeCriticalSection)
许可证是易语言特有的一次词语,我们首先了解一下许可证的作用,务必指定什么时候使用许可证,在那个地方使用许可证.易语言多线程许可证的几点理解 1.许可证的添加一般是子程序变量或者是全局变量 2.一般用许 ...
- 511遇见易语言API模块线程初始化com库(CoInitialize)
首先了解一下com组件,这样我们才能明白初始化com库的作用,用到两个API:CoInitialize,CoInitializEX 一.什么是COM组件 1.COM是Component Object ...
- 511遇见易语言API模块线程销毁TerminateThread
线程销毁用到两个API(GetExitCodeThread)(TerminateThread) 511遇见易语言模块API教程 API 1.GetExitThread 说明 获取一个已中止线程的退出代 ...
最新文章
- 桌子上有个盘子_日本留学生活:留学生在餐厅刷盘子的传闻,竟然在自己身上上演...
- confluence未授权模板注入/代码执行 cve-2019-3396
- _splitpath,_makepath分析路径
- 一、学爬虫前,你需要知道的爬虫常识
- java断点续传 http_http断点续传简单实现(java)
- HTML5 classList使用
- linux查看程序写文件内容,Linux 文件内容查看命令
- 是男人就下100层【第五层】——2048游戏从源码到发布市场
- tl r402路由器设置_记一次TP-LINK路由器问题排查
- 最新版的Python写春联,支持行书隶书楷书,不再有缺失汉字
- 卢菲菲数字编码表_学技树
- 城轨车辆段联锁设备采用计算机联锁,车辆段计算机联锁设备
- PDF+word生成pdf+嵌入所有字体
- 有关于反走样的理解(学习笔记仅供参考)
- 中文文本蕴含计算项目(88万中文文本蕴含数据集+中文文本蕴含模型)
- REUSE_ALV_GRID_DISPLAY_LVC函数输入参数属性的应用
- 阿里p8年薪85W到底是什么样的存在?
- c语言中sign的用法,sign函数用法和实例详解
- mybatis-学习笔记-联系我获取md文档
- The table xxxx is full处理