列出同一目录中具有相同名称的文件夹 - Delphi

时间:2014-12-14 16:34:13

标签: delphi delphi-xe6

美好的一天...... 我正在使用Delphi列出目录中的文件夹...

if FindFirst (directory + '*. *', faAnyFile, searchrec) = 0 then

但最大的问题是Delphi XE6在Documents:

中创建了两个具有相同名称的文件夹
Embarcadero (Folder 1) (There are two folders with the same name in the same location)
Embarcadero (Folder 2)

当我使用FindFirst列出时,它只显示一个文件夹,只有第一个文件夹..但这些文件夹中的每一个都有不同的文件......

如何列出具有相同名称且位于同一位置的两个文件夹...... ???

2 个答案:

答案 0 :(得分:3)

同一目录中没有两个具有相同名称的对象。这在文件系统级别是不可能的。您所看到的是shell在同一虚拟容器中显示来自多个目录的对象。

Documents shell对象实际上是,是Windows 7中引入的shell功能。默认情况下, Documents 库包含内容您的我的文档文件夹(C:\ Users \您的用户名\我的文档)和公共文档文件夹的内容(C:\ Users \ Public \ Public Documents) )。 Embarcadero将这个名称的目录放在这两个文件系统位置的每一个中。

如果您希望复制在shell中看到的内容,则需要使用shell API枚举此库中的对象。

答案 1 :(得分:0)

enter image description here

其实你是对的。文件夹位于不同的目录中......