Я занимаюсь перемещением файловых серверов. После завершения мне придется изменить UNC-путь, который буквы подключенных дисков использовали по всей сети, чтобы указать на новую машину. Я хочу обработать изменение с помощью сценария входа в систему VBS, который я присоединю к подразделениям для сопоставления различных дисков.
Цель сценария - сначала получить UNC-путь для F: (или любого другого диска); если он равен «\ old_server \ files», отключите его, а затем снова подключите как «\ new_server \ files». В противном случае ничего не делайте. Всего это необходимо для 5 путей / дисков.
Я пробовал использовать Уже подключенный скрипт производительности компьютера но не смог заставить его работать. Он не отключил старый диск при тестировании на нескольких машинах.
Любая помощь приветствуется.
Если у вас есть домен, я бы посмотрел на предпочтение групповой политики для сопоставления дисков. Вы должны иметь возможность отображать данный UNC на данный диск и автоматически заменять любые старые сопоставления, которые существуют.
Поскольку вы на самом деле только проверяете наличие старого сопоставления и удаляете его, чтобы создать новое сопоставление, почему бы просто не использовать Net X: / delete для букв дисков, которые вы обычно сопоставили, а затем продолжить свою сеть Используйте операторы X :. Удаление и переназначение соединения, если оно уже существует для нового сервера, не повредит.
Немного поздно, но ты хочешь этого? это должно быть запущено локально на каждом компьютере - например, в сценарии входа в систему, как вы говорите
Set objShell = CreateObject("Wscript.Shell")
Set objNet = WScript.CreateObject("Wscript.Network")
Set objExec = objShell.Exec("net use ")
strMaps = LCase(objExec.StdOut.ReadAll)
MapArray=split(strMaps,CHR(10))
for x=1 to ubound(mapArray)
if instr(mapArray(x),"i:") AND instr(mapArray(x),"\oldserver1\sharex$") then
objNet.RemoveNetworkDrive "i:",true,true
objNet.MapNetworkDrive "I:" , "\newserver1\shareX"
end if
if instr(mapArray(x),"j:") AND instr(mapArray(x),"\\oldserver2\shareY$") then
objNet.RemoveNetworkDrive "J:"
objNet.MapNetworkDrive "J:" , "\\newserver2\shareX$"
end if
next