如何使用标准用户检索Junction或Symlink的目标

时间:2010-02-10 22:11:28

标签: c# ntfs resolve junction reparsepoint

我试图在我的程序中获得联结的目标,但我管理的唯一方法是:

  1. 请求备份权限
  2. 使用特殊参数调用CreateFile以获取文件/目录的句柄。
  3. DeviceIoControl调用get get target。
  4. 第一步不适用于普通用户帐户,因为它们没有备份权限,我不希望每次执行此操作时都获得UAC用户同意窗口。

    我认为这是可行的,因为正常的“dir / A:L”命令可以解析链接的目标。

1 个答案:

答案 0 :(得分:0)

我认为stackoverflow中的这个答案对你有帮助吗? How do I programmatically access the target path of a windows symbolic link? 应该可以在c#程序中通过DllImport属性包含对函数的引用。

可以从a FileStream实例获取所需的句柄。有点搞笑,它被标记为过时,但也许警告说明你还能做什么。