VBSによるネットワークドライブ名の変更

以前、Windowsのネットワークドライブの名前を変更するスクリプトを作成した備忘録です。


色々調べましたが、ネットワークドライブ名はコマンドプロンプトやPowerShellでは変更出来ないとの情報があったので、VBSで作成してみました。


今回のスクリプトでは、ADのユーザー情報を取得してネットワークドライブ名に使用しています。

ADに登録されている属性であれば、他の属性値を名前に使用出来ます。

On Error Resume Next

‘実行前に名前変更対象のドライブ文字に変更する
strDrive = “N:\”

‘オブジェクト情報取得
Set objSysInfo = CreateObject(“ADSystemInfo”)
objUser = objSysInfo.UserName
Set objUser = GetObject(“LDAP://” & objUser)

‘社員ID抽出対象の文字列(UPN)
strString = objUser.UserPrincipalName
‘抽出位置指定用の検索文字列
strSearch = “@”

‘変更後の名前 = “フルネーム(表示名)”+”スペース”+”(“+”ユーザーログオン名”+”)”
‘LeftでUPNの左から(@の位置-1文字)を抽出 例)123456@test.local→123456
strName = (objUser.displayName & ” ” & “(” & Left(objUser.UserPrincipalName,InStr(strString,strSearch)-1) & “)” )

‘ネットワークドライブ名変更実施
With CreateObject(“Shell.Application”).NameSpace(strDrive)
.Items().Item().Name = strName
End With

コメント

タイトルとURLをコピーしました