La necesidad es distribuir un icono en los escritorios de todos los usuarios y eliminando el acceso que ya existe, el acceso actual es .lnk y el que se retira es .url
La opción es lanzar un script en el inicio de sesión a nivel de usuario mediante GPO, lo realizo con VBScript y quedaría así:
Set objFileSystem = CreateObject ("Scripting.FileSystemObject")
Set objWshNetwork = CreateObject("WScript.Network")
Set oShell = CreateObject("WScript.Shell")
Dim userFolder
Dim fileDel
Dim fileAdd
Dim pathSource
Dim pathDestination
' Identificar la ruta del perfil de usuario mediante variables de entorno
userFolder = oShell.ExpandEnvironmentStrings("%USERPROFILE%")
' Identificar el archivo obsoleto
fileDel = "AccesoIcono.url"
' Identificar el archivo añadir o sobreescribir
nameFileAdd = "AccesoIcono.lnk"
' Identificar fichero del repositorio
pathSource = "\\server\recursoCompartido\AccesoIcono.lnk"
' El control de errores lo realizas tú
On Error Resume Next
' Diferenciar entre carpeta Escritorio y Desktop
If objFileSystem.FolderExists (userFolder & "\Escritorio") = True Then
' Montar la ruta con \ antes y detras
userFolder = userFolder & "\Escritorio\"
Else
' Montar la ruta con \ antes y detras
userFolder = userFolder & "\Desktop\"
End If
' Montar el path destino del fichero
pathDestination = userFolder & nameFileAdd
' Borrado del fichero obsoleto o en desuso
If objFileSystem.FolderExists (userFolder & fileDel) = False Then
' Dejo esta linea por si se quiere realizar alguna acción
Else
' Borrado
objFileSystem.DeleteFile userFolder & fileDel
End If ' Copiar icono del repositorio al escritorio objFileSystem.CopyFile pathSource, pathDestination, true
No hay comentarios:
Publicar un comentario