递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 755|回复: 6

[视窗] DLL里怎么获取自身文件名和路径?

[复制链接]

15

主题

39

帖子

195

积分

注册会员

Rank: 2

积分
195
发表于 2026-8-30 02:44:46 | 显示全部楼层 |阅读模式
本帖最后由 1105110683 于 2026-8-30 02:46 编辑

DLL里怎么获取自身DLL文件名和路径?
回复

使用道具 举报

46

主题

430

帖子

4031

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
4031
发表于 2026-8-30 10:25:44 | 显示全部楼层
本帖最后由 cxz7411 于 2026-8-30 10:27 编辑

加载dll时参数中有模块句柄,通过模块句柄再去获取自身文件名和路径,具体使用的api去问ai就行.
回复

使用道具 举报

3

主题

48

帖子

296

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
296
发表于 2026-8-30 20:03:27 | 显示全部楼层
取模块目录()
回复

使用道具 举报

15

主题

39

帖子

195

积分

注册会员

Rank: 2

积分
195
 楼主| 发表于 2026-8-31 11:34:08 | 显示全部楼层
本帖最后由 1105110683 于 2026-8-31 11:48 编辑

取到的是DLL文件所在目录,没文件名
回复

使用道具 举报

3

主题

48

帖子

296

积分

金牌会员

Rank: 9Rank: 9Rank: 9

积分
296
发表于 2026-8-31 12:49:53 | 显示全部楼层
本帖最后由 叶孤城 于 2026-8-31 12:52 编辑
1105110683 发表于 2026-8-31 11:34
取到的是DLL文件所在目录,没文件名

通过模块句柄  调用 GetModuleBaseNameW 是 Windows API 中的一个函数,用于获取指定进程内某个模块的基本名称(Base Name)
GetModuleFileNameExW 是 Windows API 中用于获取指定进程内某个模块的完整路径的函数

用这两个函数就能实现需要的功能了.

回复

使用道具 举报

15

主题

39

帖子

195

积分

注册会员

Rank: 2

积分
195
 楼主| 发表于 2026-8-31 15:34:43 | 显示全部楼层
叶孤城 发表于 2026-8-31 12:49
通过模块句柄  调用 GetModuleBaseNameW 是 Windows API 中的一个函数,用于获取指定进程内某个模块的基本 ...

这样可以吗?


                    

                        

                           

                           
正在渲染火山代码...

                        

                    

                    复制代码
               

回复

使用道具 举报

3

主题

22

帖子

537

积分

高级会员

Rank: 4

积分
537
发表于 2026-8-31 15:52:29 | 显示全部楼层

                    

                        

                           

                           
正在渲染火山代码...

                        

                    

                    复制代码
               
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2026-9-12 08:20 , Processed in 0.093947 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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