Ho uno script PowerShell che crea collegamenti alle posizioni di rete all'accesso. Sfortunatamente, sta usando una vecchia icona a bassa risoluzione. Non è un grosso problema in alcun modo, ma mi piacerebbe utilizzare le icone aggiornate nelle versioni successive di Windows.Come scegliere l'icona giusta "luogo della rete"?
Ecco la quota di competenza della funzione che crea il collegamento:
# Create the shortcut file
$shortcut = (New-Object -ComObject WScript.Shell).Createshortcut("$shortcutFolder\target.lnk")
$shortcut.TargetPath = $targetPath
if (
$shortcut.IconLocation = "%SystemRoot%\system32\SHELL32.DLL, 275"
$shortcut.Description = $targetPath
$shortcut.WorkingDirectory = $targetPath
$shortcut.Save()
# Set attributes on the files & folders
$desktopIni | Set-ItemProperty -Name Attributes -Value ([IO.FileAttributes]::System -bxor [IO.FileAttributes]::Hidden)
$shortcutFolder | Set-ItemProperty -Name Attributes -Value ([IO.FileAttributes]::ReadOnly)
Come si può vedere, è attualmente in uso Icona # 275 nella biblioteca SHELL32.DLL. In Windows 7, l'icona "corretta" sarebbe l'icona # 143 in imageres.dll. C'è un modo per ottenere i dettagli dell'icona dal sistema operativo come ottenere un riferimento a una cartella speciale nello spazio dei nomi di Explorer?
Icona # 143 a imageres.dll non è OK per tu ? – JPBlanc
Se lo script viene eseguito su un computer Windows XP, verrà visualizzata l'icona errata, poiché gli indici differiscono tra i build. – bshacklett
Perché non testare il nome del sistema operativo e modificare il numero a scelta prima di creare il collegamento? –