远程服务器中的VB.Net保存文件

时间:2015-10-01 17:59:20

标签: vb.net

我正在尝试获取在远程服务器上保存文件的路径,但我不知道如何确保路径位于我有权访问的共享目录中。这就是我最初尝试这样做的方式:

 Dim di As DirectoryInfo = New DirectoryInfo("\\ServerName\")
 Dim diArr As DirectoryInfo() = di.GetDirectories()
 For Each d As DirectoryInfo In diArr....

我打算浏览服务器的子目录,直到找到一个我可以编写文件的文件,但是我收到了这个错误:" UNC路径应该是\ server \ share&#34的形式;。有什么我可以替换到每个服务器上都存在的\ share部分吗?谢谢你的帮助。

编辑:我使用ManagementObjectSearcher枚举服务器上的共享,如下所示:

Dim myObjectSearcher As System.Management.ManagementObjectSearcher
Dim myScope As New ManagementScope("\\" & ServerName & "\root\CIMV2")
Dim myQuery As New SelectQuery("SELECT * FROM Win32_LogicalShareSecuritySetting")

 myObjectSearcher = New System.Management.ManagementObjectSearcher(myScope, myQuery)

For Each share As ManagementBaseObject in myObjectSearcher.Get()
    MessageBox.Show(share.ToString)
Next

1 个答案:

答案 0 :(得分:1)

\ ServerName \ IPC $始终存在,但它不是目录。

\ ServerName \ C $可能永远存在,但除非您拥有管理员凭据,否则您将无法阅读它。

您可能需要枚举服务器上的共享。看看this answer