请教易语言取指定进程路径的 问题
下面的连接是取全部路径的方法http://bbs.eyuyan.com/dispbbs.asp?BoardID=124&ID=187613&replyID=&skin=1...
下面的连接是取全部路径的方法http://bbs.eyuyan.com/dispbbs.asp?BoardID=124&ID=187613&replyID=&skin=1但是我想要的不是全部路径 比如QQ.exe 的路径 是D:\QQ2009\QQ.exe 我要取的QQ.exe 路径是D:\QQ2009 不需要QQ.exe 要怎么样才能实现啊
展开
2013-10-11
展开全部
*******************************程序集********************************.版本 2.程序集 程序集1
.程序集变量 路径, 文本型
.程序集变量 进程快照, 整数型
.程序集变量 临时, 整数型
.程序集变量 进程列表, 进程信息
.程序集变量 进程数, 整数型
.程序集变量 path, 文本型
.程序集变量 进程总数, 文本型
.程序集变量 进程路径, 文本型.子程序 列举进程, 逻辑型
.参数 进程名1, 文本型进程快照 = 创建快照 (15, 0)
.如果真 (进程快照 = 0)
信息框 (“创建进程快照失败”, 0, )
返回 (假)
.如果真结束
进程数 = 0
进程列表.size = 296
临时 = 第一个 (进程快照, 进程列表)
.判断循环首 (临时 ≠ 0)
进程数 = 进程数 + 1
path = 取模块路径 (进程列表.id)
.如果真 (进程列表.id ≠ 0)
.如果 (到文本 (进程列表.exefile) = 进程名1)
进程路径 = path
.否则 .如果结束 .如果真结束
临时 = 下一个 (进程快照, 进程列表)
.判断循环尾 ()
返回 (真).子程序 取模块路径, 文本型
.参数 processid, 整数型
.局部变量 snap, 整数型
.局部变量 mod, 模块信息snap = 创建快照 (8, processid)
.如果真 (snap = -1)
返回 (“”)
.如果真结束
mod.size = 1024
模块1 (snap, mod)
返回 (取字节集数据 (到字节集 (mod.szpath), 10)).子程序 进程取路径, 文本型, 公开, 注意大小写
.参数 进程名, 文本型列举进程 (进程名)
返回 (进程路径)
**********************************自定义数据类型表***********************************.版本 2.数据类型 进程信息
.成员 size, 整数型
.成员 usage, 整数型
.成员 id, 整数型
.成员 hid, 整数型
.成员 mid, 整数型
.成员 threads, 整数型
.成员 pid, 整数型
.成员 clbase, 整数型
.成员 flag, 整数型
.成员 exefile, 字节型, , "256".数据类型 模块信息
.成员 size, 整数型
.成员 mid, 整数型
.成员 pid, 整数型
.成员 gusage, 整数型
.成员 pusage, 整数型
.成员 base, 整数型
.成员 bsize, 整数型
.成员 hmodule, 整数型
.成员 szname, 字节型, , "256"
.成员 szpath, 字节型, , "256"
**********************************DLL命令*****************************.版本 2.DLL命令 创建快照, 整数型, , "CreateToolhelp32Snapshot"
.参数 falg, 整数型
.参数 id, 整数型.DLL命令 第一个, 整数型, , "Process32First"
.参数 h, 整数型
.参数 p, 进程信息.DLL命令 下一个, 整数型, , "Process32Next"
.参数 h, 整数型
.参数 p, 进程信息.DLL命令 模块1, 整数型, , "Module32First"
.参数 hsnap, 整数型
.参数 mod, 模块信息
**************************************完成******************************************
.程序集变量 路径, 文本型
.程序集变量 进程快照, 整数型
.程序集变量 临时, 整数型
.程序集变量 进程列表, 进程信息
.程序集变量 进程数, 整数型
.程序集变量 path, 文本型
.程序集变量 进程总数, 文本型
.程序集变量 进程路径, 文本型.子程序 列举进程, 逻辑型
.参数 进程名1, 文本型进程快照 = 创建快照 (15, 0)
.如果真 (进程快照 = 0)
信息框 (“创建进程快照失败”, 0, )
返回 (假)
.如果真结束
进程数 = 0
进程列表.size = 296
临时 = 第一个 (进程快照, 进程列表)
.判断循环首 (临时 ≠ 0)
进程数 = 进程数 + 1
path = 取模块路径 (进程列表.id)
.如果真 (进程列表.id ≠ 0)
.如果 (到文本 (进程列表.exefile) = 进程名1)
进程路径 = path
.否则 .如果结束 .如果真结束
临时 = 下一个 (进程快照, 进程列表)
.判断循环尾 ()
返回 (真).子程序 取模块路径, 文本型
.参数 processid, 整数型
.局部变量 snap, 整数型
.局部变量 mod, 模块信息snap = 创建快照 (8, processid)
.如果真 (snap = -1)
返回 (“”)
.如果真结束
mod.size = 1024
模块1 (snap, mod)
返回 (取字节集数据 (到字节集 (mod.szpath), 10)).子程序 进程取路径, 文本型, 公开, 注意大小写
.参数 进程名, 文本型列举进程 (进程名)
返回 (进程路径)
**********************************自定义数据类型表***********************************.版本 2.数据类型 进程信息
.成员 size, 整数型
.成员 usage, 整数型
.成员 id, 整数型
.成员 hid, 整数型
.成员 mid, 整数型
.成员 threads, 整数型
.成员 pid, 整数型
.成员 clbase, 整数型
.成员 flag, 整数型
.成员 exefile, 字节型, , "256".数据类型 模块信息
.成员 size, 整数型
.成员 mid, 整数型
.成员 pid, 整数型
.成员 gusage, 整数型
.成员 pusage, 整数型
.成员 base, 整数型
.成员 bsize, 整数型
.成员 hmodule, 整数型
.成员 szname, 字节型, , "256"
.成员 szpath, 字节型, , "256"
**********************************DLL命令*****************************.版本 2.DLL命令 创建快照, 整数型, , "CreateToolhelp32Snapshot"
.参数 falg, 整数型
.参数 id, 整数型.DLL命令 第一个, 整数型, , "Process32First"
.参数 h, 整数型
.参数 p, 进程信息.DLL命令 下一个, 整数型, , "Process32Next"
.参数 h, 整数型
.参数 p, 进程信息.DLL命令 模块1, 整数型, , "Module32First"
.参数 hsnap, 整数型
.参数 mod, 模块信息
**************************************完成******************************************
2013-10-11
展开全部
你要是喜欢用模块我也有也..下面那句就能返回 文件夹路径了取文本左边 (“G:\aaa\qq.exe”, 取文本长度 (“G:\aaa\qq.exe”) - 倒找文本 (“G:\aaa\qq.exe”, “\”, , 假))
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-10-11
展开全部
给你个最简单的·· 呵呵···子文本替换 (编辑框1.内容, “\QQ.exe”, “”, , , 真)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询