现在我有一个问题,指向使用“路径”的物理和网络 我在服务器机器上有一个SQL服务器,我有一个用作客户端的台式机 我正在从我的客户端计算机上运行存储过程以添加流数据库 但是在我运行这个程序之前,我运行另一个准备所需“路径”的程序,这个程序需要:
myPath="\\Server\SharedFolder\SQL\
为了运行第一个程序,我必须在每个物理名称中转换myPath:
myPath="DriveLetter:\Public\WorkFiles\SQL\"
现在我的问题是我将如何拥有物理路径,它是在服务器上构建的,并且从非常困难(到不可能)知道它?
基本上我需要一个函数,它将返回物理路径,这是我不知道的实现。我的开发环境是vb.net 2010
有人帮我这个吗?
答案 0 :(得分:1)
您可以使用NetShareEnum Windows API,将服务器名称作为第一个参数传递,级别为2或502.然后,您可以根据返回的路径进行匹配。
当然,您需要特殊的组成员资格(管理员,高级用户,打印操作员或服务器操作员)才能成功。
答案 1 :(得分:0)
像这样的东西
Dim foo As String = "\\DLINK_NAS\Volume_1"
Dim dirInfo As New IO.DirectoryInfo(foo)
For Each drv As IO.DriveInfo In My.Computer.FileSystem.Drives
If drv.IsReady AndAlso dirInfo.Name = drv.VolumeLabel Then
'match here
End If
Next