如何修复文件路径案例?

时间:2010-06-19 04:42:25

标签: c++ winapi

我有一组本地路径,其中一些是大写的(C:\ SOMEDIR \ SOMEFILE.TXT)。我需要将它们转换为真实姓名(如资源管理器中所示)。建议一种方式PLZ。

3 个答案:

答案 0 :(得分:1)

将您的文件路径传递给FindFirstFile,生成的WIN32_FIND_DATA.cFileName在正确的情况下将从文件系统中读取。

答案 1 :(得分:0)

我想您总是可以使用OpenFile来获取句柄,然后使用方法here从该句柄中获取文件名。我没试过,但似乎可能会给出“探险家名字”

Obtaining a File Name From a File Handle

我不知道有任何直接的API调用只能在一行中执行此操作。

答案 2 :(得分:0)

您是否正在寻找that:短名称与长名称?

请注意,Explorer会对文件名应用一些棘手的转换。你最简单的方法就是测试一切并为此目的制作你自己的功能。

否则,您可以尝试通过OLE访问Explorer的函数来列出目录中的文件。但那是非常痛苦且容易出错的代码。 (为什么我猜MS最终放弃了,并在Win2K中提供了我上面链接的功能)。