Serge Yolkin писал(а):НО! переменная, переданная в параметрах, должна разворачиваться системой. Т.е., ты пишешь в коде кнопки %COMMANDER_PATH%, а скрипт получает (ну, или должен получать) C:\Total (например). Поэтому в скрипте и проверяю, и заменяю, чтобы в desktop.ini переменная была, а не абсолютный путь.
Дело в том, что я бы не хотел, чтобы в кнопке (а позже команде, подвешанной на хоткей) фигурировал путь D:\TotalCmd8, ведь это уже не портабельность, даже если позже он превращается... превращается... в %COMMANDER_PATH% в
desktop.ini!
Serge Yolkin писал(а):И ещё. Я не уверен, что Тотал правильно отобразит изменённые иконки, если их не видит проводник. Ведь системные иконки для папок Тотал у проводника и запрашивает. Мои настройки и Тотала, и системы проверить всё это не позволяют, а длинный путь (поставить чистый Тотал с пустым инишником, да, желательно, на чистую же систему, и т.д.) я с удовольствием делегирую Вам, коллега
Проверим.
Serge Yolkin писал(а):В общем, предлагаю такой план действий: ты без скриптов (или с частичным их использованием) добиваешся желаемого результата (содержимое, включая вариант пути, и атрибуты файла desktop.ini, атрибуты папки, расположение иконки и т.д.), а я всё это оформлю, по возможности, быстро.
Сделаем.
Добавлено спустя 22 минуты:
Такая кнопка:
TOTALCMD#BAR#DATA
t:\icon4folders1.wsf
"d:\TotalCmd8\ICON\(302)em_Stop.ico" %S
C:\Windows\System32\WScript.exe,2
icon4folders1
-1
мне говорит:
---------------------------
Windows Script Host
---------------------------
Не задана иконка!
---------------------------
ОК
---------------------------
Что с ней не так?
Понятно,
путь должен начинаться с большой "D".
Добавлено спустя 17 минут:
Атрибут каталога под курсором и каталогов выделенных -
Только для чтения (r).
Атрибуты
desktop.ini:
Архивный (a),
Скрытый (h),
Системный (s).
Содержимое
desktop.ini:
[.ShellClassInfo]
IconResource=заданный в параметрах кнопки путь или "Вася, Привет!" (т.е. то, что напишу в параметрах кнопки должно быть здесь, ничего не раскрываем, ничего не ищем)
По поводу обновления значка можно попробовать так:
- Если в папке не было
desktop.ini, установить необходимый папке атрибут, обновить файл. панель;
- Если в папке был
desktop.ini, снять все атрибуты с папки, установить необходимый атрибут папке, обновить файл. панель.
Я не знаю, можно ли работать с прошедшим временем и можно ли средствами скрипта заставить панель TC обновиться, но установить значок сразу как-то нужно.
Добавлено спустя 50 минут:
А лучше, наверное, всегда снимать атрибуты с папок и ставить нужный, зачем что-то проверять ещё...
