gpt4 book ai didi

将 Windows 设备文件名转换为驱动器号

转载 作者:可可西里 更新时间:2023-11-01 14:25:12 24 4
gpt4 key购买 nike

我正在尝试获取与 C 中的进程句柄关联的文件名,并且由于我的代码需要在 Windows XP 上运行,所以我使用的是 GetProcessImageFileName(而不是 QueryFullProcessImageName).

但是,GetProcessImageFileName 返回设备形式的路径,例如\device\harddiskvolume0\- 如何将其转换为驱动器盘符?

最佳答案

我打算建议 GetModuleFileNameEx就像卢克在评论中所做的那样。

QueryDosDevice()在所有驱动器盘符上(您可以找到带有 GetLogicalDrives() 的所有驱动器盘符)将是另一个赌注,尽管从理论上讲您可以获得没有驱动器盘符的路径,或者符号链接(symbolic link)可能会搞砸直接的字符串比较。

但是.. 这个怎么样...你应该能够在 NT 路径前加上 \??\GLOBALROOT (这是来自内存,可能不完全是那样)然后使用它在类似 CreateFileW() 的函数中。 (据我所知,它必须是文件 API 的 Unicode 版本……)

关于将 Windows 设备文件名转换为驱动器号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16021898/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com