【发布时间】:2010-08-25 14:43:08
【问题描述】:
我正在尝试获取本地 Intranet 服务器上所有可用共享文件夹的列表。
System.IO.Directory.GetDirectories() 适用于\\myServer\myShare 之类的路径,但是对于\\myServer 之类的路径,我遇到了异常:
未处理的异常:System.ArgumentException:UNC 路径的格式应为 \server\share。
有没有办法获取服务器的所有共享文件夹列表?最终,我正在寻找一种可以根据给定路径处理这两种情况的方法 - 返回给定服务器的所有共享列表并返回给定网络共享文件夹的所有子目录的列表。
【问题讨论】:
-
@kbrimington 这个 Q 要求远程,那个 Q 只要求本地。
-
@Richard:接受的答案也包括远程。
-
@kbrimington - 出于某种原因,我通过
NetShareEnum仅在本地...避免需要 P/Invoke。 -
@Richard:已接受答案中的 CodeProject 链接提供了“枚举本地和远程机器上的网络共享的类,并将本地文件路径转换为 UNC 路径。” (强调补充)。 @ajay_whiz 的回答引用了同一篇文章。