我想快速检查是否在完整路径中使用了连接点.我已经有一个测试文件夹的功能,IsJunction()但也许还有一个其他解决方案不能调用IsJunction()每个子文件夹.
所以我正在寻找一个HasJunctionsInPath(string path)没有测试路径的每个文件夹的功能.
有什么能做到这一点吗?
编辑:
或更好...
是否可以解析路径中的所有联结以获取文件或文件夹的真实位置?这样可以更好地解决我的问题,我仍然可以将结果与实现bool HasJunctionsInPath(string path)函数的原始路径进行比较.
小智 2
据我所知,c# 中没有开箱即用的实现来直接处理连接/重解析点。
所以你必须与 kernel32.dll 进行一些互操作。这有点棘手,但你可以找到样本。您将需要 CreateFile() 和 DeviceIoControl() 调用。
这是一个很好的示例: http://www.codeproject.com/KB/vista/ReparsePointID.aspx ?display=Print
有用的 msdn 链接:
http://msdn.microsoft.com/en-us/library/cc232007%28PROT.13%29.aspx
http://msdn.microsoft.com/en-us/library/aa363858%28v=vs.85%29.aspx
http://msdn.microsoft.com/en-us/library/aa363216%28v=vs.85%29.aspx
| 归档时间: |
|
| 查看次数: |
3864 次 |
| 最近记录: |