问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

易语言的API里面的GetModuleFileNameA,怎么使用?

发布网友 发布时间:2022-04-29 16:06

我来回答

3个回答

热心网友 时间:2023-10-18 01:50

GetMoleFileNameA是获取一个DLL模块的路径

需要使用GetMoleHandleA,参数一为DLL的函数名或函数地址,这个函数来得到模块句柄

如果是已知窗口句柄欲获取窗口所在的进程可使用以下代码(获取窗口所在进程ID,然后通过进程ID获取该程序的路径):

GetWindowThreadProcessId,取窗口进程ID

.子程序 取进程路径, 文本型, 公开, 取指定进程的程序启动路径(成功返回路径,失败或进程不存在返回空)
.参数 进程ID, 整数型
.局部变量 快照句柄, 整数型
.局部变量 模块信息, 模块信息型
.局部变量 路径, 文本型
快照句柄 = _创建快照 (8, 进程ID)
.如果真 (快照句柄 = -1)
返回 (“”)
.如果真结束
模块信息.size = 1024
_第一个模块 (快照句柄, 模块信息)
路径 = 到文本 (模块信息.模块完整路径)
_关闭对象 (快照句柄)
返回 (路径)

.DLL命令 _创建快照, 整数型, , "CreateToolhelp32Snapshot"
.参数 falg, 整数型
.参数 id, 整数型

.DLL命令 _第一个模块, 整数型, , "Mole32First", , 第一个模块,查找模块
.参数 快照句柄, 整数型
.参数 模块信息, 模块信息型

.DLL命令 _关闭对象, 整数型, , "CloseHandle", 公开, kernel32.dll
.参数 对象句柄, 整数型

.数据类型 模块信息型, 公开, 进程模块信息
.成员 size, 整数型
.成员 mid, 整数型
.成员 pid, 整数型
.成员 gusage, 整数型
.成员 pusage, 整数型
.成员 base, 整数型
.成员 大小, 整数型
.成员 模块句柄, 整数型
.成员 模块文件名, 字节型, , "256"
.成员 模块完整路径, 字节型, , "256"

热心网友 时间:2023-10-18 01:51

GetMoleFileNameA,这个意思不懂么?Get=获取, mole=进程模块,File=文件,Name=名字,这个API是用来获取进程加载模块的路径啊,第一个不是hwnd,是要传递moleAddress。

热心网友 时间:2023-10-18 01:51

char moleFileName[MAX_PATH];
GetMoleFileNameA(NULL, moleFileName, MAX_PATH);
std::string workingFolder(moleFileName);
size_t pos = workingFolder.find_last_of("\\");
workingFolder = workingFolder.substr(0, pos+1);
std::cout<<workingFolder<<std::endl;

热心网友 时间:2023-10-18 01:50

GetMoleFileNameA是获取一个DLL模块的路径

需要使用GetMoleHandleA,参数一为DLL的函数名或函数地址,这个函数来得到模块句柄

如果是已知窗口句柄欲获取窗口所在的进程可使用以下代码(获取窗口所在进程ID,然后通过进程ID获取该程序的路径):

GetWindowThreadProcessId,取窗口进程ID

.子程序 取进程路径, 文本型, 公开, 取指定进程的程序启动路径(成功返回路径,失败或进程不存在返回空)
.参数 进程ID, 整数型
.局部变量 快照句柄, 整数型
.局部变量 模块信息, 模块信息型
.局部变量 路径, 文本型
快照句柄 = _创建快照 (8, 进程ID)
.如果真 (快照句柄 = -1)
返回 (“”)
.如果真结束
模块信息.size = 1024
_第一个模块 (快照句柄, 模块信息)
路径 = 到文本 (模块信息.模块完整路径)
_关闭对象 (快照句柄)
返回 (路径)

.DLL命令 _创建快照, 整数型, , "CreateToolhelp32Snapshot"
.参数 falg, 整数型
.参数 id, 整数型

.DLL命令 _第一个模块, 整数型, , "Mole32First", , 第一个模块,查找模块
.参数 快照句柄, 整数型
.参数 模块信息, 模块信息型

.DLL命令 _关闭对象, 整数型, , "CloseHandle", 公开, kernel32.dll
.参数 对象句柄, 整数型

.数据类型 模块信息型, 公开, 进程模块信息
.成员 size, 整数型
.成员 mid, 整数型
.成员 pid, 整数型
.成员 gusage, 整数型
.成员 pusage, 整数型
.成员 base, 整数型
.成员 大小, 整数型
.成员 模块句柄, 整数型
.成员 模块文件名, 字节型, , "256"
.成员 模块完整路径, 字节型, , "256"

热心网友 时间:2023-10-18 01:51

GetMoleFileNameA,这个意思不懂么?Get=获取, mole=进程模块,File=文件,Name=名字,这个API是用来获取进程加载模块的路径啊,第一个不是hwnd,是要传递moleAddress。

热心网友 时间:2023-10-18 01:51

char moleFileName[MAX_PATH];
GetMoleFileNameA(NULL, moleFileName, MAX_PATH);
std::string workingFolder(moleFileName);
size_t pos = workingFolder.find_last_of("\\");
workingFolder = workingFolder.substr(0, pos+1);
std::cout<<workingFolder<<std::endl;

热心网友 时间:2023-10-18 01:50

GetMoleFileNameA是获取一个DLL模块的路径

需要使用GetMoleHandleA,参数一为DLL的函数名或函数地址,这个函数来得到模块句柄

如果是已知窗口句柄欲获取窗口所在的进程可使用以下代码(获取窗口所在进程ID,然后通过进程ID获取该程序的路径):

GetWindowThreadProcessId,取窗口进程ID

.子程序 取进程路径, 文本型, 公开, 取指定进程的程序启动路径(成功返回路径,失败或进程不存在返回空)
.参数 进程ID, 整数型
.局部变量 快照句柄, 整数型
.局部变量 模块信息, 模块信息型
.局部变量 路径, 文本型
快照句柄 = _创建快照 (8, 进程ID)
.如果真 (快照句柄 = -1)
返回 (“”)
.如果真结束
模块信息.size = 1024
_第一个模块 (快照句柄, 模块信息)
路径 = 到文本 (模块信息.模块完整路径)
_关闭对象 (快照句柄)
返回 (路径)

.DLL命令 _创建快照, 整数型, , "CreateToolhelp32Snapshot"
.参数 falg, 整数型
.参数 id, 整数型

.DLL命令 _第一个模块, 整数型, , "Mole32First", , 第一个模块,查找模块
.参数 快照句柄, 整数型
.参数 模块信息, 模块信息型

.DLL命令 _关闭对象, 整数型, , "CloseHandle", 公开, kernel32.dll
.参数 对象句柄, 整数型

.数据类型 模块信息型, 公开, 进程模块信息
.成员 size, 整数型
.成员 mid, 整数型
.成员 pid, 整数型
.成员 gusage, 整数型
.成员 pusage, 整数型
.成员 base, 整数型
.成员 大小, 整数型
.成员 模块句柄, 整数型
.成员 模块文件名, 字节型, , "256"
.成员 模块完整路径, 字节型, , "256"

热心网友 时间:2023-10-18 01:51

GetMoleFileNameA,这个意思不懂么?Get=获取, mole=进程模块,File=文件,Name=名字,这个API是用来获取进程加载模块的路径啊,第一个不是hwnd,是要传递moleAddress。

热心网友 时间:2023-10-18 01:51

char moleFileName[MAX_PATH];
GetMoleFileNameA(NULL, moleFileName, MAX_PATH);
std::string workingFolder(moleFileName);
size_t pos = workingFolder.find_last_of("\\");
workingFolder = workingFolder.substr(0, pos+1);
std::cout<<workingFolder<<std::endl;

热心网友 时间:2023-10-18 01:50

GetMoleFileNameA是获取一个DLL模块的路径

需要使用GetMoleHandleA,参数一为DLL的函数名或函数地址,这个函数来得到模块句柄

如果是已知窗口句柄欲获取窗口所在的进程可使用以下代码(获取窗口所在进程ID,然后通过进程ID获取该程序的路径):

GetWindowThreadProcessId,取窗口进程ID

.子程序 取进程路径, 文本型, 公开, 取指定进程的程序启动路径(成功返回路径,失败或进程不存在返回空)
.参数 进程ID, 整数型
.局部变量 快照句柄, 整数型
.局部变量 模块信息, 模块信息型
.局部变量 路径, 文本型
快照句柄 = _创建快照 (8, 进程ID)
.如果真 (快照句柄 = -1)
返回 (“”)
.如果真结束
模块信息.size = 1024
_第一个模块 (快照句柄, 模块信息)
路径 = 到文本 (模块信息.模块完整路径)
_关闭对象 (快照句柄)
返回 (路径)

.DLL命令 _创建快照, 整数型, , "CreateToolhelp32Snapshot"
.参数 falg, 整数型
.参数 id, 整数型

.DLL命令 _第一个模块, 整数型, , "Mole32First", , 第一个模块,查找模块
.参数 快照句柄, 整数型
.参数 模块信息, 模块信息型

.DLL命令 _关闭对象, 整数型, , "CloseHandle", 公开, kernel32.dll
.参数 对象句柄, 整数型

.数据类型 模块信息型, 公开, 进程模块信息
.成员 size, 整数型
.成员 mid, 整数型
.成员 pid, 整数型
.成员 gusage, 整数型
.成员 pusage, 整数型
.成员 base, 整数型
.成员 大小, 整数型
.成员 模块句柄, 整数型
.成员 模块文件名, 字节型, , "256"
.成员 模块完整路径, 字节型, , "256"

热心网友 时间:2023-10-18 01:51

GetMoleFileNameA,这个意思不懂么?Get=获取, mole=进程模块,File=文件,Name=名字,这个API是用来获取进程加载模块的路径啊,第一个不是hwnd,是要传递moleAddress。

热心网友 时间:2023-10-18 01:51

char moleFileName[MAX_PATH];
GetMoleFileNameA(NULL, moleFileName, MAX_PATH);
std::string workingFolder(moleFileName);
size_t pos = workingFolder.find_last_of("\\");
workingFolder = workingFolder.substr(0, pos+1);
std::cout<<workingFolder<<std::endl;
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...频数和频率成正比,2频数一定时,频率与总次数成反比,对不对_百度... ...总次数之间的关系是( ) A.频数越大,频率越大 B.总次数一定时,频数越... 实验的总次数、频数及频率三者的关系是( )A.频数越大,频率越大B.频数... 嘎牙鱼的做法大全 安无线网要用多少元网费要交多少元不用用了要不要交网费,想寻求大家的... 无线网费1年多少钱 "Hbr"作为“港”的缩写,其在英语中的使用频率和应用示例如何? 【车主点评:吉利汽车帝豪GL 使我荣华富贵】 请问,如果,家用,自动挡,帝豪gl,英朗,科沃兹,卡罗拉,轩逸,同等价位,建议... ...景点?既能休闲的时候看看又能长点知识@@谢谢各位了! 英伟达GeForce210(256mb)与七彩虹GT610(1GB)那个好? 易语言怎么知道什么功能该用什么API 七彩虹GT210和铭瑄GT610哪个好 钉钉直播申请连麦点那个可以不露脸? 易语言 怎样快速掌握API学习? nvidiageforcegt610显卡和nvidiageforcegt210显卡哪个好 易语言中,如何用API读取内存里的小数,知道的给个例子,谢谢! GT710与GT610哪个好 易语言怎么接收post数据? nvidia geforce 210 和七彩虹的 NVIDIA GeForce GT 610 哪个好 技嘉gt210 与铭瑄gt610 选择谁?高分献上 易语言串口数据发送与接收问题 笔记本上的GT610显卡还不如台式机上的GT210显卡吗? GT610和GT210哪个厉害 银狐gt210加强版和gt610那个好 易语言怎样用http&#47;javascript接口取数据,或者用 web-service接口获取数据? 如何建立一个有效的绩效考核系统 索泰GT610比GT210强多少 易语言如何接受POST或者GET数据 gt210显卡和gt610哪个好? gt210,gt610.hd5450.hd6450。这四个显卡选哪个好?就这4个哪个好点?电脑速龙双 用易语言怎么处理串口数据? gt610实际1g比gt210虚拟1g实际128,两者差距大吗? 钉钉直播有人申请连麦,没接的话连麦申请人和观众能看见人脸吗? 易语言,API-取菜单条目信息,怎么用? 华硕GT610与索泰GT210哪个好 易语言用服务器组件怎么接收POST过来的图片 易语言 API setwindowpos 的所有参数请详解! 如何用ps去掉截图背景色 急!如何去掉截图底色 图片底色是绿色食品,怎么把底色去掉 怎么去除图片底色 如何去掉图片的底色,一张截图来的图,如何去掉它的底色。 截图背景是黑色的,想去掉黑色背景打印 截图怎样去掉背景 法斗可以吃海带吗? 狗狗能不能吃海带 狗能吃海带吗? 狗狗能吃海带吗? 狗狗能不能吃海带?