3

DFSではなくUNCパスを使用する必要のあるスクリプトがいくつかあり、DFSパスからプログラムでUNCパスを判別できるようにしたいと考えています。たとえば、次のようなものがあります。

\\domain\fs\Home\HomeFolder\MyUserID

そして、私はそれから次のようなUNCパスを取得したいと思います。

\\Server1\HomeFolder\MyUserID

DFSUtil.exeのようなユーティリティが利用できるとは思えません。VBScriptである必要があります。

WMIを使用するNETで次のコードを見つけましたが、それを使用可能なVBSに変換するために何が起こっているのかを理解できません:http: //www.codeproject.com/Tips/158829/Convert-a-file-path-to -a-UNC-Path

誰かが手を貸すことができますか?私は翻訳に迷っています(NETを話さないでください)...

4

1 に答える 1

1

これは、リンクしたものの最小限のVBScript翻訳です。

Option Explicit

Dim wmi
Dim col
DIm itm

Set wmi = GetObject("winmgmts:\\.\root\cimv2")
Set col = wmi.ExecQuery("Select DeviceID,ProviderName From Win32_LogicalDisk where DriveType=4")

With WScript
  For Each itm in col
    .Echo "========="
    .Echo "DeviceID:" & vbTab & itm.DeviceID
    .Echo "ProviderName:" & vbTab & itm.ProviderName
  Next
End With

Set wmi = Nothing
Set col = Nothing
WScript.Quit

要するに、私はそれがあなたが望むものではないと思います...これを実行する前に最初にドライブをマップする必要があると思います。

これを行うためのより適切な方法は、Active Directoryに対してクエリを実行して、DFS共有定義を見つけることですが、AD内の実際の場所を特定するのは難しい場合があります。

于 2013-10-15T09:30:11.283 に答える