Мне нравится создавать папки и назначать изображения/обложки в качестве миниатюр папок, а не генерировать стандартный значок папки. Я делаю это очень часто(в принципе, для каждой папки, для которой я смогу найти изображение).
Я настраиваю файл script/.bat, чтобы можно было поместить любой файл изображения в папку, нажать горячую клавишу, и тогда программа запустится.(Пиксиллион)чтобы преобразовать изображение в файл .Ico и скрыть его. Это также создастрабочий стол.iniфайл, подобно тому, как это делает Windows 10, когда вы вручную устанавливаете пользовательский значок папки.
[.ShellClassInfo]
IconResource=%ico%,0
после завершения моего скрипта Windows 10 распознает, что у меня есть пользовательский значок папки(потому что он не использует сгенерированный, показывая значки внутри папки), однако вместо этого он показывает пустую папку в качестве значка. Если я помещу файл .url в папку, а затем переименую его (вручную, не работает из cmd), значок папки обновится/правильно обновится до моего пользовательского значка.
Я ищу, как сделать это без этого последнего ручного шага.
Установить иобновлятьзначок автоматически.
решение1
Настройка через desktop.ini
файл требует не только файла, но и папки, которая должна иметь свой System
или ReadOnly
установленный атрибут. Это «переключатель», который сообщает ОС искать и обрабатывать файл desktop.ini папки. Когда Windows устанавливает пользовательский значок, она устанавливает атрибут ReadOnly
— это можно проверить, добавив Attributes
столбец в Detail
представление вИсследователь. ВPowerShell, если вы находитесь в папке/каталоге, используйте:
### View attriubtes
(Get-Item .).Attributes
# OUtput
PS C:\...\Customized FOlder>( Get-Item . ).Attributes
ReadOnly, Directory
### Set ReadOnly attriubtes
(Get-Item .).Attributes += 'ReadOnly'
# no output when successful
### Clear ReadOnly attriubtes
(Get-Item .).Attributes -= 'ReadOnly'
# no output when successful
Атрибут очищен и вид обновлен: