【问题标题】:How can I identify if a directory is a symbolic link (in contrast to a "real" local directory)?如何识别目录是否是符号链接(与“真实”本地目录相反)?
【发布时间】:2014-10-23 12:25:29
【问题描述】:

我需要阻止对基于网络的目录的访问。但是,通过使用“mklink”之类的工具,用户可以创建看起来像本地目录的映射目录。我使用基于 .net 的代码来获取目录的 UNC 路径以识别网络文件夹。但这不适用于映射文件夹。 DirectoryInfo 类中是否有我可以使用的信息?

【问题讨论】:

    标签: c# .net directory network-drive mklink


    【解决方案1】:

    免责声明:我没有在网络驱动器上测试过符号链接 - 无权创建符号链接。我稍后会在家里尝试并更新我的答案。 但我可以告诉你,在本地磁盘上:

    • 对于“普通”目录,Attributes 属性将设置Directory 位。
    • 对于符号链接——我猜也是连接——DirectoryReparsePoint 位已设置。

    所以请尝试检查ReparsePoint 位。

    更新:
    网络文件夹仅设置了 Directory 位。
    卷上的根目录似乎有些奇怪——无论是本地驱动器还是网络驱动器——它还设置了HiddenSystem 位。不知道为什么。
    但看起来网络文件夹的行为就像本地文件夹一样(这是有道理的)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-02-12
      • 2019-08-16
      • 2014-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-14
      • 1970-01-01
      相关资源
      最近更新 更多