Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Свои иконки у папок
Goto page Previous  1, 2, 3, 4, 5, 6  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Serge Yolkin



Joined: 25 Jul 2009
Posts: 664

Post (Separately) Posted: Thu Mar 14, 2013 00:09    Post subject: Reply with quote

ask-rus
Проверяй.
Code:
спатьХачуНимагу.quit()
Только поравь в десятой строчке путь к иконке по умолчанию - будет использоваться, если в комстроке не задана, а сразу идут папки. Там, перед ней, комментарий - всё написано.
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10420
Location: Россия, Саратов

Post (Separately) Posted: Thu Mar 14, 2013 08:17    Post subject: Reply with quote

All
Поскольку в этой теме и раньше обсуждались, и теперь обсуждаются главным образом скриптовые решения, оставлять её и далее в подфоруме "Общие вопросы" не считаю целесообразным. Переносится в "Автоматизацию".
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2077
Location: Russian Federation

Post (Separately) Posted: Thu Mar 14, 2013 10:58    Post subject: Reply with quote

Serge Yolkin wrote:
Проверяй.

Code:
TOTALCMD#BAR#DATA
T:\icon4folders.wsf %COMMANDER_PATH%\ICON\(260)Font.ico
%S
C:\Windows\System32\WScript.exe,3
icon4folders


-1

Quote:
---------------------------
Windows Script Host
---------------------------
Сценарий: T:\icon4folders.wsf
Строка: 68
Символ: 8
Ошибка: Объект не поддерживает это свойство или метод
Код: 800A01B6
Источник: Ошибка выполнения Microsoft JScript

---------------------------
ОК
---------------------------

_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
Serge Yolkin



Joined: 25 Jul 2009
Posts: 664

Post (Separately) Posted: Thu Mar 14, 2013 11:58    Post subject: Reply with quote

ask-rus
Гы... Лажанул. Исправил. (наверное, и в правду спать хотел)
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2077
Location: Russian Federation

Post (Separately) Posted: Thu Mar 14, 2013 12:24    Post subject: Reply with quote

Serge Yolkin
desktop.ini с необходимым содержимым и атрибутами успешно создаётся в файле под курсором или выделенных каталогах. Также успешно заменяет уже существующий с теми или иными атрибутами.

Иконка успешно копируется в каталог под курсором или выделенные каталоги. Однако, если в каталоге уже была иконка (был другой значок на каталоге), она остаётся, и её потребуется удалять вручную. Есть решение, привести значок к одному имени (icon.ico, а лучше desktop.ico), ведь desktop.ini всегда и везде один. Тут уж, как знаешь, просто нужен будет скрипт, снимающий иконку с каталога, а для этого нужно удалить desktop.ini, удалить иконку, снять атрибут с папки. Скрипт Batya иконку не удалит.

Как ты обновляешь файл. панель? На долю секунды делаешь окно TC неактивным? Окно мигает... Если что, я мог бы сам обновлять, дополнив скрипт командой TC с TCMC: пользовательская команда со скриптом + cm_RereadSource.
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
Serge Yolkin



Joined: 25 Jul 2009
Posts: 664

Post (Separately) Posted: Thu Mar 14, 2013 16:36    Post subject: Reply with quote

ask-rus wrote:
Как ты обновляешь файл. панель? На долю секунды делаешь окно TC неактивным?
Ты не поверишь... Никак. Вероятно, на время выполнения скрипта фокус передаётся ему.

А с переименованием проблема одна: время. Вечером подрихтую.
Скрипт снятия иконки можно объеденить с обсуждаемым. Скажем, ключ /clear первым параметром, вместо пути к иконке. И ещё. Сейчас скрипт проверяет параметры, и, если есть НЕпапка, прекращает работу (с сообщением). Можно сделать иначе: если папка - меняем иконку, если нет (сколько угодно раз) - в конце сообщим. Т.е. все переданные папки будут обработаны, а НЕпапки, если такие есть, показаны в сообщении после того, как скрипт отработает. Если нада - допилю, если нет - и Бог с ним.
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2077
Location: Russian Federation

Post (Separately) Posted: Thu Mar 14, 2013 17:06    Post subject: Reply with quote

Serge Yolkin wrote:
Ты не поверишь... Никак. Вероятно, на время выполнения скрипта фокус передаётся ему.

Ладно, это не критично.
Serge Yolkin wrote:
Скрипт снятия иконки можно объеденить с обсуждаемым. Скажем, ключ /clear первым параметром, вместо пути к иконке.

Было бы здорово.
Serge Yolkin wrote:
И ещё. Сейчас скрипт проверяет параметры, и, если есть НЕпапка, прекращает работу (с сообщением). Можно сделать иначе: если папка - меняем иконку, если нет (сколько угодно раз) - в конце сообщим. Т.е. все переданные папки будут обработаны, а НЕпапки, если такие есть, показаны в сообщении после того, как скрипт отработает. Если нада - допилю, если нет - и Бог с ним.

Надо. Wink
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
Serge Yolkin



Joined: 25 Jul 2009
Posts: 664

Post (Separately) Posted: Fri Mar 15, 2013 01:48    Post subject: Reply with quote

Не-е-е, вчера я не хотел спать...
Проверяй.
При очистке я атрибут с папки решил не снимать: ну и что, что ридонли?

И осторожнее с именем иконки (когда она уже в папке): в первой же папке, на которой я решил скрипт потестить, валялась, оказывается, иконка desktop.ico. Теперь даже не знаю, что в ней было нарисовано... Там в следующей, после иконки по умолчанию, строчке это имя и задаётся. Рекомендую что-нибудь вроде "папочнаяИконкаДляМоегоЛюбимогоТотала.ico", чтобы с существующими не пересечься.
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2077
Location: Russian Federation

Post (Separately) Posted: Fri Mar 15, 2013 07:47    Post subject: Reply with quote

Serge Yolkin
Убрал мигание! Отлично, сделаю, как говорил.

С установкой значка всё в норме, фильтр работает. Даже третья пустая строка в desktop.ini радует. Smile Дело в том, что в Листере две строки по какой-то причине выстраивались в одну, а в AkelPad у меня по умолчанию секции *.INI свёрнуты и без третьей строки вторая не скрывалась под заголовком секции - это визуально, сейчас всё в порядке.

Со снятием значка тоже всё отлично.

Serge Yolkin wrote:
При очистке я атрибут с папки решил не снимать: ну и что, что ридонли?

Не знаю, по-моему, это дополнительный ориентир, что папка помечена.
Цвет стандартной папки у меня жёлтый, в списке цветов будет и оранжевый, близкий к жёлтому. Малость будут сливаться, зато атрибут в помощь.



Если это вернёт мигание или ещё какую неприятность, то, конечно, это не нужно. В любом случае, требуемое выполнено.

Благодарю!
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
Serge Yolkin



Joined: 25 Jul 2009
Posts: 664

Post (Separately) Posted: Fri Mar 15, 2013 13:18    Post subject: Reply with quote

Ещё поправил. Доводка рашпилем, блин.

Попробуй так: поменяй иконку на папке с альтернативной системной (например, Мои документы) и потом очисть - должна вернуться системная. Атрибут r с папки снимается (должен сниматься), остальные не трогал.

Добавлено спустя 48 секунд:

На работе тестить не могу - прав никаких.
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2077
Location: Russian Federation

Post (Separately) Posted: Fri Mar 15, 2013 16:44    Post subject: Reply with quote

Serge Yolkin wrote:
Ещё поправил. Доводка рашпилем, блин.

Рашпиль жестковат для финишной обработки, напильничком надо было.

По теме, на только что созданных папках скрипт отрабатывает хорошо, т.е. всё, что мы ожидаем, выполняется.

На ранее тестируемых папках, коих уже большое количество, с различным содержимым, но, где ещё НЕ создавался desktop.ICO, при очищении атрибут с папки НЕ снимается, desktop.ini НЕ удаляется и, будучи -ahs, становится просто -a--.

Такие дела.

Добавлено спустя 9 минут:

Системная папка Contacts\
Quote:
C:\Users\Asker\Contacts\

пустая, но с desktop.ini (атр. -ahs). Очищаю - атрибут папки по-прежнему r---, атрибут desktop.ini -a--, что и требовалось доказать.

Добавлено спустя 24 минуты:

Что касается установки значка, я вижу создаётся desktop.ini.bak. Очищение после этого происходит хорошо, а desktop.ini.bak восстанавливается в desktop.ini.
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
Serge Yolkin



Joined: 25 Jul 2009
Posts: 664

Post (Separately) Posted: Sat Mar 16, 2013 00:57    Post subject: Reply with quote

В общем, всё так. Логика: если папке уже была назначена иконка, и это не desktop.ico в самой папке - бэкапим инишник, при очистке - восстанавливаем. Своё - переназначаем. Чтобы не чистить тестовые папки ручками добавил ключ /brute (правда, в подсказке его нет: недокументированный, блин). Используется так же, как /clear, но сносит инишник и его бэкап молча. Даже если вся гармония Вселенной после этого накроется медным тазом. Если всё работает, думаю, на этом можно закончить.
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2077
Location: Russian Federation

Post (Separately) Posted: Sat Mar 16, 2013 09:22    Post subject: Reply with quote

Serge Yolkin wrote:
Если всё работает, думаю, на этом можно закончить.

Всё работает. Ещё раз, спасибо!
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
SaDim



Joined: 22 May 2011
Posts: 18

Post (Separately) Posted: Sat May 04, 2013 23:29    Post subject: Reply with quote

Сделайте, пожалуйста, скрипт (а то при синхронизации слетает атрибут папок) осуществляющий поиск в текущей директории и её под директориях папки содержащие Desktop.ini и изменяющий её атрибут на “Только чтение”. Для надёги ещё и атрибут Desktop.ini на "Скрытый", "Системный", "Архивный".
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Sun May 05, 2013 00:31    Post subject: Reply with quote

SaDim
Стандартные средства ТС не годятся (найти нужное и поменять атрибуты у выделенного)?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3, 4, 5, 6  Next
Page 5 of 6

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group