| View previous topic :: View next topic |
| Author |
Message |
dftpnk
Joined: 27 May 2011 Posts: 2
|
(Separately) Posted: Fri May 27, 2011 15:58 Post subject: Иконка для папки |
|
|
Сегодня решал вопрос по теме. Очень удобно и наглядно выглядят папки программ. Или можно просто положить в папку иконку и применить её.
Это как замена утилитам, которые делают тоже самое, только ещё и в памяти сидят
Поискал в интернете, но кое что пришлось сделать руками
Файл folderico.cmd положил в %COMMANDER_PATH%
Курсор ставите на exe или ico файл, в той папке, иконку которой меняем.
И жмём эту кнопку:
| Code: | TOTALCMD#BAR#DATA
%COMMANDER_PATH%\folderico.cmd
%P%N
C:\Program Files\Total\Fileicons.dll,9
%P
-1 |
Работает в XP, в Win7 сегодня проверю.
Вот листинг Folderico.cmd
| Code: | ECHO OFF
REM
REM Установка иконки папки из exe-файла или ICO-файла, подставленного как параметр
REM folderico.cmd d:\folder\file.exe
REM
REM Переделанный вариант bat-файла, взятого отсюда
REM http://forum.soft32.com/win4/change-folder-icon-command-line-ftopict241201.html
REM
ECHO ON
cd %~sdp1
attrib -h -r desktop.ini
echo [.ShellClassInfo]>desktop.ini
echo IconFile=%1>>desktop.ini
echo IconIndex=0 >>desktop.ini
attrib +h +r desktop.ini
attrib +r "%CD%" |
Ну вот, собственно, и всё.
Всех благ.
ПОПРАВКА: Данная команда затрёт файл desktop.ini, который может находиться в исходной папке.
Так что - ОСТОРОЖНО! ГАРАНТИЙ НИКАКИХ НЕ ДАЮ!
Так что лучше, предварительно, посмотреть что там внутри папки.
Last edited by dftpnk on Fri May 27, 2011 16:26; edited 2 times in total |
|
| Back to top |
|
 |
MVV

Joined: 15 Oct 2009 Posts: 4815 Location: Ростов-Дон
|
|
| Back to top |
|
 |
dftpnk
Joined: 27 May 2011 Posts: 2
|
(Separately) Posted: Fri May 27, 2011 16:16 Post subject: |
|
|
| MVV wrote: | | Иногда desktop.ini содержит иную информацию помимо пути и индекса иконки. А такой бат-файл затирает старый новым. |
Спасибо за замечание. Сейчас что-нибудь подправим. |
|
| Back to top |
|
 |
Batya

Joined: 15 Dec 2004 Posts: 2236 Location: Москва, Россия
|
|
| Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10532 Location: Россия, Саратов
|
(Separately) Posted: Fri May 27, 2011 17:56 Post subject: |
|
|
Batya
Вот именно. В создании отдельной темы не вижу никакой надобности. Объединено со старой темой. _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
| Back to top |
|
 |
ask-rus

Joined: 10 Nov 2009 Posts: 2077 Location: Russian Federation
|
(Separately) Posted: Sat Mar 09, 2013 13:30 Post subject: |
|
|
IconFile, IconIndex, а разве одной строчки не будет достаточно:
| Code: | [.ShellClassInfo]
IconResource=Иконка.ico |
? _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
| Back to top |
|
 |
Avada

Joined: 01 Aug 2008 Posts: 10532 Location: Россия, Саратов
|
(Separately) Posted: Sat Mar 09, 2013 13:55 Post subject: |
|
|
ask-rus
А отчего бы не взять и самому в своей ОС не попробовать? По крайней мере, в XP вышеприведённый вариант с IconResource не работает. Там должна быть пара строк с IconFile и IconIndex (если первая строка ссылается на конкретный ICO-файл, вторая должна присутствовать со значением 0). _________________ Даже самая богатая фантазия
Не представит себе наши безобразия. |
|
| Back to top |
|
 |
ask-rus

Joined: 10 Nov 2009 Posts: 2077 Location: Russian Federation
|
(Separately) Posted: Sat Mar 09, 2013 14:04 Post subject: |
|
|
| Avada wrote: | | А отчего бы не взять и самому в своей ОС не попробовать? |
У меня на Win8 работает.
| Avada wrote: | | По крайней мере, в XP вышеприведённый вариант с IconResource не работает. Там должна быть пара строк с IconFile и IconIndex |
Во-во, понятно.
Добавлено спустя 25 минут:
Нуждаюсь в минималистичном портабельном решении по созданию desktop.ini с одним ключом:
| Code: | [.ShellClassInfo]
IconResource=%COMMANDER_PATH%\ICON\Иконка.ico |
в каталоге под курсором и каталогах выделенных с атрибутом desktop.ini - Архивный.
Пользование под ОС Windows 8 в TC и нигде более. _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Last edited by ask-rus on Sun Mar 10, 2013 17:18; edited 1 time in total |
|
| Back to top |
|
 |
Serge Yolkin
Joined: 25 Jul 2009 Posts: 664
|
(Separately) Posted: Sat Mar 09, 2013 23:23 Post subject: |
|
|
.cmd: | Code: | echo [.ShellClassInfo]> 111.txt
echo IconResource=%%COMMANDER_PATH%%\ICON\Иконка.ico>> 111.txt |
|
|
| Back to top |
|
 |
ask-rus

Joined: 10 Nov 2009 Posts: 2077 Location: Russian Federation
|
(Separately) Posted: Sun Mar 10, 2013 10:17 Post subject: |
|
|
Serge Yolkin
А с каким параметром/-ами запускать? Пробовал разные - ни один файл не смог создать. Мерцание консольного окна - явный минус, придётся его решать утилитами. _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
| Back to top |
|
 |
Serge Yolkin
Joined: 25 Jul 2009 Posts: 664
|
(Separately) Posted: Sun Mar 10, 2013 20:22 Post subject: |
|
|
ask-rus
Ключей не предусмотрено, в коде заменить 111.txt (как бы у меня это стандартный тестовый файл, извиняюсь, если это не очевидно) на desktop.ini, а путь/имя иконки - на реальные, если Иконка.ico приведена для примера.
Соответственно, при запуске создавался файл 111.txt (наверное, и сейчас валяется в том каталоге)
Если нужны параметры, давай-ка начнём с техзадания. |
|
| Back to top |
|
 |
ask-rus

Joined: 10 Nov 2009 Posts: 2077 Location: Russian Federation
|
(Separately) Posted: Mon Mar 11, 2013 07:03 Post subject: |
|
|
Моя ошибка - я создавал значок в папке, где уже есть desktop.ini (скрытый, системный). Оказывается, командник его не заменяет, а заменить как раз следует (для меня не критично).
| Serge Yolkin wrote: | | Если нужны параметры, давай-ка начнём с техзадания. |
Собственно, оно было таким:
| ask-rus wrote: | | в каталоге под курсором и каталогах выделенных |
а не в текущем каталоге, как сейчас. _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
| Back to top |
|
 |
Serge Yolkin
Joined: 25 Jul 2009 Posts: 664
|
(Separately) Posted: Mon Mar 11, 2013 12:43 Post subject: |
|
|
ask-rus
Не-не-не! Я как раз сейчас занимаюсь любовью с таким же техзаданием, когда каждый день выясняется, что заказчик совсем не то имел ввиду. Правда, за деньги.
Давай так: если алгоритм работы описывать ломает, дай, хотя бы, пример строки вызова будущего (гипотетического) скрипта со всеми передаваемыми ему параметрами (например, иконка - всегда одна и та же?) |
|
| Back to top |
|
 |
ask-rus

Joined: 10 Nov 2009 Posts: 2077 Location: Russian Federation
|
(Separately) Posted: Mon Mar 11, 2013 14:30 Post subject: |
|
|
| Serge Yolkin wrote: | | если алгоритм работы описывать ломает |
Нисколько.
1. Активная файловая панель TC;
2. Курсор TC расположен на каталоге, или же каталоги выделены, и положение курсора значения не имеет;
3. Если курсор не на каталоге - ничего не делать, но сообщить об этом.
4. Если помимо каталогов выделены файлы - ничего не делать, но сообщить об этом (должны быть выделены только каталоги).
5. Активируя скрипт, например, с панели инструментов, в каталоге под курсором или выделенных каталогах создаётся/-ются файл/-ы desktop.ini с содержимым:
| Code: | [.ShellClassInfo]
IconResource=%COMMANDER_PATH%\ICON\Иконка.ico |
и атрибутом Архивный;
6. Если каталоги выделены, после выполнения скрипта желательно выделение снимать.
7. Иконка всегда одна и та же, должна быть задана в теле скрипта или в идеале - в параметрах запуска.
8. Портабельность требуется - без регистраций утилит и библиотек, правок реестра.
9. Использование в скрипте утилит, вроде TCFS2, TCMC приветствуется. _________________ «Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица |
|
| Back to top |
|
 |
Serge Yolkin
Joined: 25 Jul 2009 Posts: 664
|
(Separately) Posted: Tue Mar 12, 2013 01:01 Post subject: |
|
|
ask-rus
Если срочность не "прям щас" (и не "ещё вчера"), то до конца недели время выберу. Надеюсь, WSF+JScript устроит? (батником - пожалуй, можно, но кривовато будет: проверок много). И обрабатывать будем %S - мне так проще, если возражений нет. Портабельность - если не запрещены скрипты в системе (встречал пару параноиков) - автоматическая, внешние утилиты не нужны, правда, с выделением из скрипта я возится не буду, но, вроде, оно и так снимается, по крайней мере, с моими предыдущими скриптами оно так и есть. |
|
| Back to top |
|
 |
|
|
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
|