Sobald sich bei der Migration eines Fileservers die Pfade ändern, kommt es schnell zu Problemen mit Links und Verknüpfungen. In diesem Artikel geht es um die Verknüpfungen, die sich die User selber auf den Desktop gelegt haben. Diese könnten auf Dateien oder auf Verzeichnisse zeigen.
Ändern sich die Laufwerksstrukturen bei einer Migration funktionieren diese nicht mehr.
In Umgebungen, in denen UNC-Pfade (Bsp.: \\server\share\verzeichniss) als direkter Weg zum
Fileserver genutzt werden, haben wir einen Weg gefunden,die Probleme für die Endnutzer zu
minimieren, auch wenn die Pfade geändert werden. Es ist üblich, dass die Endnutzer Links auf
ihren Desktops haben, die ihnen den Weg zu Ordnern und Dokumenten auf den Servern weisen.
Ich will Ihnen ein einfaches Script vorstellen, dass die Pfade für sie ersetzt.
Dieses Script ist in VBScript geschrieben. In den ersten Zeilen stehen alter und neuer Pfad.
++++++++++++++++++++++++++++++++++++++++++++++++++
‚Define paths
strFind = „\\oldserver\share1\“
strReplace = „\\newserver\share2\“
Set objWsh = CreateObject(„WScript.Shell“)
Set objWshSysEnv = objWsh.Environment(„PROCESS“)
strProfilePath = objWshSysEnv(„USERPROFILE“)
Set objFSO = CreateObject(„Scripting.FileSystemObject“)
Set objFolder = objFSO.GetFolder(strProfilePath & „\Desktop“)
‚Loop through all files on the desktop
For Each file In objFolder.Files
if right(file.Name,3)=„lnk“ then
‚If a shortcut is found
Set objLink = objWsh.CreateShortcut(file.Path)
objLink.Arguments = Replace(objLink.Arguments,strFind,strReplace,1,-1,1)
objLink.TargetPath = Replace(objLink.TargetPath,strFind,strReplace,1,-1,1)
objLink.WorkingDirectory = Replace(objLink.WorkingDirectory,strFind,strReplace,1,-1,1)
objLink.Save
end if
Next
++++++++++++++++++++++++++++++++++++++++++++++++++
Binden Sie dieses Script in ihr Login-Script ein und Sie werden ein Problem weniger am Tag nach Ihrer Fileserver-Migration haben.
Quelle: http://365lab.net/2014/02/17/fix-broken-shortcuts-during-file-server-migrations/