Tôi có một kịch bản PowerShell tạo lối tắt đến các vị trí mạng khi đăng nhập. Thật không may, nó sử dụng một biểu tượng độ phân giải thấp cũ. Nó không phải là một vấn đề lớn bởi bất kỳ phương tiện, nhưng tôi muốn sử dụng các biểu tượng được cập nhật trong các phiên bản sau của Windows.Cách chọn biểu tượng "địa điểm mạng" phù hợp?
Dưới đây là phần có liên quan của chức năng tạo ra các phím tắt:
# 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)
Như bạn có thể thấy, phần này hiện đang sử dụng Icon # 275 trong thư viện SHELL32.DLL. Trong Windows 7, biểu tượng "thích hợp" sẽ là Biểu tượng # 143 trong imageres.dll. Có cách nào để có được các chi tiết biểu tượng từ hệ điều hành như nhận được một tham chiếu đến một thư mục đặc biệt trong không gian tên Explorer?
Icon # 143 trong imageres.dll không phải là bật đèn xanh cho bạn ? – JPBlanc
Nếu tập lệnh chạy trên máy Windows XP, nó sẽ kéo biểu tượng sai, vì các chỉ mục khác nhau giữa các bản dựng. – bshacklett
Tại sao không kiểm tra tên hệ thống tác nhân và thay đổi số để lựa chọn trước khi tạo liên kết? –