所以我正在编写一个遍历指定目录树的应用程序,我正在尝试处理文件夹访问权限的异常,并且我遇到了一个文件夹,编译器返回的目录为C:\ ProgramData \申请数据
有谁知道这个文件夹是什么?它似乎不存在于Windows资源管理器中。就像,文件夹不在那里。它没有被隐藏。它就在那里。我能够使用提升的命令提示符进入文件夹,但是当我使用" dir"命令查看文件夹包含的内容,CMD返回:
" C:\ ProgramData \ Application Data目录
找不到文件"
我很想知道这个文件夹是什么.....
答案 0 :(得分:3)
dir /a
命令是你的朋友:
C:\ProgramData>dir /a
Volume in drive C has no label.
Volume Serial Number is 848A-BBB7
Directory of C:\ProgramData
23/05/2015 03:38 pm <DIR> .
23/05/2015 03:38 pm <DIR> ..
14/05/2015 10:28 pm <JUNCTION> Application Data [C:\ProgramData]
如您所见,Application Data是一个指向ProgramData的连接点。 Windows包含许多类似的连接点,以便与旧应用程序向后兼容。
联结点上的安全权限明确禁止列出文件,这就是为什么你无法获得其内容列表的原因:
C:\ProgramData>icacls "Application Data" /L
Application Data Everyone:(DENY)(S,RD)
Everyone:(RX)
NT AUTHORITY\SYSTEM:(F)
BUILTIN\Administrators:(F)
此外,连接点标记为System and Hidden:
C:\ProgramData>attrib /L "Application Data"
SH I C:\ProgramData\Application Data
这就是Explorer没有显示它的原因。 (看起来资源管理器不显示标记为隐藏和系统的交接点,即使配置为显示隐藏项目。)