И ещё прошу Вашей помощи.После все наших манипуляций с папками и файлами все файлы в папке создаются, атрибуты к файлам и папке выставлены правильно, но иконка на папке не меняется, или может поменяться через какое то время, или так и остаться стандартным видом. Но если, например, переименовать desktop.ini а потом отменить переименование, то иконка меняется сразу.Причём влияет, как я прочитал в интернете, только именно ручное переименование.
Предлагают использовать функцию shell, которая будет уведомлять обо всех запущенных обозревателях окна, чтобы использовать обновленный desktop.ini. Этот API отображается в VBScript через Shell.Application.NameSpace( "папка\" )
Код:
for /r %%I in (*.ico) do (
attrib -h -s -r "%temp%\desktop.ini" >nul
(
echo [.ShellClassInfo]
echo IconResource="%%~nxI",0
)>"%temp%\desktop.ini"
attrib +h +s "%temp%\desktop.ini"
(
echo set shell = CreateObject^("Shell.Application"^)
echo set folder = shell.NameSpace^("%%~dpI"^)
echo folder.MoveHere "%temp%\desktop.ini", 4+16+1024
)>"%temp%\updateIcon.vbs"
cscript //nologo //b "%temp%\updateIcon.vbs"
)
Может быть Вы знаете, как применить иконку сразу после отработки vbs?