| Создание и редактирование библиотек значков | 
| 
				
			 | 
| 
| alexostrov | Дата: Понедельник, 30.12.2019, 16:37 | Сообщение № 76 |  | Полковник
   На сайте с: 22.11.2017
 
 Сообщений: 179 | chip642 Значения -3, -2, -1 в WCMICONS.INC - появились в тех местах, где не было значков на команды.
 Я их просто удалил и через Ultra_TC_Editors добавил в эти места. Это не есть проблема.
 Меня больше интересует BackUp файл - @bak.
 |  |  |  |  | 
| 
| chip642 | Дата: Понедельник, 30.12.2019, 17:24 | Сообщение № 77 |  |  | Поиск путей к файлам в TC, выбор типа файла в диалоговом окне 
 
 Код TOTALCMD#BAR#DATA%COMMANDER_PATH%\TCIMG.exe
 tempxx pends=@.[combo=Поиск~~путей~~файлов~~в~~TC||Выберите~~или~~введите~~расширение:||ico|exe|ini|vbs|au3|html||343||117] watch=1 slist=PS<"$f300"//1//-1//*.bar|*.tcm|*.tcg|*.ini> extra=$GLOBALSLIST||$f254//0||formt<100>||ending<0>||progres<> stext=PS<$f254//1//0>||"$f254\IcoPaths\"//0//PathsFilesGLOBALPENDS<1>TC.txt||delim<@CRLF>||code<4>||progres<> textt=GLOBALSTEXT<1>||<dellist=$GLOBALPENDS|9>||formt<63,1>||backup<0> sends=GLOBALTEXTT<1>??-1||formt<0!!(?m)^Chr(37)[^\r\n]*> alist=$GLOBALSENDS||##path<0|0|5> listx=$GLOBALALIST||2 alist=$GLOBALLISTX2||##path<0|0|1> sends=GLOBALTEXTT<1>??-1||formt<0!!(?m)^[a-zA-Z][^\r\n]*>||?F3 listx=$GLOBALSENDS||2 bends=$GLOBALLISTX2??-1 cends=$GLOBALALIST+$GLOBALBENDS??1 textt=GLOBALTEXTT<1>||##GLOBALCENDS<x1> copyy=GLOBALTEXTT<1>||"%p"//1||upd<1> tempxx
 WCMICONS.dll,1
 Найти все существующие пути (абсолютные и относительные) к отдельным файлам (выбор расширения в ДО) в TC, с записью в файл PathsFiles.xxxTC.txt в активную панель
 
 -1
 
 |  |  |  |  | 
| 
| asmadeus | Дата: Понедельник, 30.12.2019, 18:25 | Сообщение № 78 |  |  | chip642, внесу и я свои пять копеек. Пост будет длинным, скрины спрячу под спойлеры. Итак, если ничего не менять, то работает комбайн как и на работе - на выходу 916 значков без пустышек.
 Я пробовал менять кнопку вот на такой вариант:
 
 Код TOTALCMD#BAR#DATA%COMMANDER_PATH%\TCIMG.exe
 imgpr=1 copyy=$f201\ExtractUsedIcons.bar||$f300\Files_VOG\Bars\//1 slist=$f250@LF$f253@LF$f201@LF$f300||##path<0|0|1> xlist=@$f300\Files_VOG\Bars\||##path<0|0|1>||formt<path3>||%%!!%%%% textt=$f300\Files_VOG\Bars\ExtractUsedIcons.bar||@#@#@!!GLOBALXLIST<1>||@##@!!GLOBALSLIST<1> pause=700 kends=TOTALCMD#BAR#DATA@CRLFGLOBALSLIST<4>\Files_VOG\Bars\ExtractUsedIcons.bar@CRLF@CRLFTOTALCMD.EXE,35@CRLFExtractUsedIcons.bar@CRLF@CRLF1??-2 barbt=1||-1||butfrom<GLOBALKENDS<t>>
 shell32.dll,176
 Создание панели инструментов "в виде меню" ExtractUsedIcons.bar
 
 -1
 -1
Цель - чтобы панель создавалась в моей папке с панелями, а не в Files\UserBar
 Также в файле макроса AllIconsTC.txt менял так:
 
 Код slist=FOLDC<D:\ExtractUsedIcons\FileSearchFolders.txt//1//1//*.bar|*.tcm|*.tcg|TCIMGU.ini|MENUIMGS.ini|ViewMode.ini|Associations.ini|UserCmd.ini>||save<D:\ExtractUsedIcons\SelectedFilesLists.txt|1>Цель - выбрать только нужные ini файлы для замены. TCG кстати тоже надо выбирать (я считаю, что те файлы, которые идут с утилитой, трогать не следует вообще).
 Вот после таких замен и было то, что я писал утром - 1082 иконки, из которых 79 неиспользуемых пустышек
 
 Часть 2
 Создав себе очередную тестовую копию (нетронутую ранее), я решил пройти весь путь, ничего не меняя в авторской задумке.
 Итак,
 1. Неизвестно откуда берущаяся библиотека с полным путем - такой записи нет
 
 2. Говоря о черных прямоугольниках вместо подсказок, я имел в виду подсказки здесь. Но случай скорее всего от конкретной системы зависит
 
 3. Белое окно вместо подсказки в конце операций (один раз выпало на домашнем, и постоянное на рабочем)
 
 4. Специально для alexostrov. Папка с бекапом
 
 5. Восстановление с бекапа не работает. Видно по иконкам ассоциаций. Вот как они выглядят после восстановления:
 
 А вот как должны выглядеть:
 
 
 Цитата chip642 (  )  Поиск путей к файлам в TCУ меня кнопка результата не выдаст - специфика моего тотала. Типа - "фиг я тебя, хозяин, скажу, где у меня что лежит"))
 P.S. Вот так на сегодняшний день выглядят результаты моих тестов
 |  |  |  |  | 
| 
| alexostrov | Дата: Понедельник, 30.12.2019, 18:27 | Сообщение № 79 |  | Полковник
   На сайте с: 22.11.2017
 
 Сообщений: 179 | chip642 
 В TCIMGU.ini в секции [FormatUser] нужно прописывать:
 
 
 Код sico=(?:[a-zA-Z]\:).*\.ico|(?:[%]).*\.icosexe=(?:[a-zA-Z]\:).*\.exe|(?:[%]).*\.exe
 или не надо ?
 ===================
 По ходу одна просьба:
 Есть папка Programs с вложенными папками и в них программы.
 Нужна кнопка по извлечению со всех *.exe файлов значков только 0 - exe, 0
 |  |  |  |  | 
| 
| chip642 | Дата: Понедельник, 30.12.2019, 18:37 | Сообщение № 80 |  |  | asmadeus 
 Всё понятно и доступно. Что я могу сказать, допиливайте под свои сборки, у всех всё по-разному, я тестировал на сборке Маэстро и у меня всё по как по маслу, а у него сборка, уж точно не самая слабая.
 
 _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 
 
 Цитата alexostrov (  )  В TCIMGU.ini в секции [FormatUser] нужно прописывать:
 Нет, не нужно.
 |  |  |  |  | 
| 
| sibirnik | Дата: Понедельник, 30.12.2019, 18:52 | Сообщение № 81 |  |  | chip642, У меня в общее количество иконок более 3000 (несколько лет назад накидал со всяких разных dll, а потом было сложно менять). Так вот: прогнал вашим комбайном эту орду иконок(сборка моя тоже напичканная разным) из трёх dll - думал, что всё хаос будет, но нет количество уменьшилось до 705 штук и все кнопки с теми же значками. Всё прекрасно работает. Только есть одно но, которое Вы обещали решить, есть двойные иконки их бы вот ещё поудалять, вообще здорово бы было.
 |  |  |  |  | 
| 
| chip642 | Дата: Понедельник, 30.12.2019, 19:00 | Сообщение № 82 |  |  | Цитата sibirnik (  )  двойные иконки их бы вот ещё поудалять, вообще здорово бы было
 Сделаем, решение найдено. Времени нет, попозже.
 |  |  |  |  | 
| 
| sibirnik | Дата: Понедельник, 30.12.2019, 19:11 | Сообщение № 83 |  |  | chip642, Подождём мы терпиливые. Спасибо Вам и С Наступающим...
 |  |  |  |  | 
| 
| asmadeus | Дата: Понедельник, 30.12.2019, 19:13 | Сообщение № 84 |  |  | Цитата chip642 (  )  Что я могу сказать, допиливайте под свои сборкида, конечно. Не вопрос, допилим
 |  |  |  |  | 
| 
| alexostrov | Дата: Понедельник, 30.12.2019, 19:18 | Сообщение № 85 |  | Полковник
   На сайте с: 22.11.2017
 
 Сообщений: 179 | sibirnik Есть куча программ, которые очень хорошо удаляют дубли.
 Причем, есть специализированные по удалению только дублей иконок.
 |  |  |  |  | 
| 
| chip642 | Дата: Понедельник, 30.12.2019, 19:32 | Сообщение № 86 |  |  | Цитата asmadeus (  )  Восстановление с бекапа не работает. Видно по иконкам ассоциаций
 Если честно не понимаю, как это может не работать, Total Commander закрывается (это обязательно), файлы с заменой копируются, что им может помешать даже не догадываюсь.
 
 _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
 
 
 Цитата alexostrov (  )  Есть куча программ, которые очень хорошо удаляют дубли
 Тут помимо удаления дублей нужно еще записать информацию с комментариев удаляемых и передать оставшемуся первому файлу в группе дубликатов, всё не так просто.
 |  |  |  |  | 
| 
| sibirnik | Дата: Понедельник, 30.12.2019, 19:59 | Сообщение № 87 |  |  | chip642, 
 Цитата chip642 (  )  в группе дубликатов, всё не так просто.Вот - вот ....
 alexostrov, я бы их и вручную удалил, не считал примерно штук 40-50 двойных, а нумерация то пропадёт.
 Великий Мастер кнопок знает уже, как это решить.
 |  |  |  |  | 
| 
| alexostrov | Дата: Понедельник, 30.12.2019, 20:30 | Сообщение № 88 |  | Полковник
   На сайте с: 22.11.2017
 
 Сообщений: 179 | sibirnik Я думал Вам надо удалить дубли в папке, а оказывается что Вы хотите удалить их в рабочей библиотеке.
 Конечно просто так их не удалишь т.к. "поплывут" номера.
 |  |  |  |  | 
| 
| chip642 | Дата: Понедельник, 30.12.2019, 23:40 | Сообщение № 89 |  |  | Цитата alexostrov (  )  Есть папка Programs с вложенными папками и в них программы.Нужна кнопка по извлечению со всех *.exe файлов значков только 0 - exe, 0
 В выделенных папках найти все файлы EXE, извлечь из них первые значки, скопировать все значки в неактивную панель в папку(с именем текущей даты) \YYYYMMDDHHMMSS\ProgramIcon\ , далее в папке YYYYMMDDHHMMSS\ создать библиотеку значков из извлечённых значков, перейти в папку YYYYMMDDHHMMSS\ .
 
 
 Код watch=1||delbut<1> tends=[info=s30] tempxx exics=FOLDC<%L//1//-1//*.exe>||$f254||infold<> slist=PS<$f254//2//0> <FOR> 1 <TO> GLOBALSLIST<0> sends=PS<GLOBALSLIST<:INDEX:>//1//-1//ico//0//0//1//1>!!:INDEX: <NEXT> copys=GLOBALSENDS<t>||"%t\GLOBALTENDS<1>\ProgramIcon\"//1 lbicl=GLOBALSENDS<t>||"%t\GLOBALTENDS<1>\ProgramIcon.dll"||progres<> patht=[tc=TP]\GLOBALTENDS<1> tempxx |  |  |  |  | 
| 
| alexostrov | Дата: Вторник, 31.12.2019, 01:24 | Сообщение № 90 |  | Полковник
   На сайте с: 22.11.2017
 
 Сообщений: 179 | chip642 Премного благодарен! Я на такую работу, в ручном режиме, тратил 1,5-2 часа.
 А тут за несколько минут есть результат. Супер.
 С вашего позволения, еще один вопрос - есть кнопка:
 
 Код bufsr=?T|a,1:-1!!:NUM:.~~ ;; пронумеровать строки в буфере обменанумерация строк начинается с 1. Как сделать, что-бы нумерация начиналась с 0.
 Справку по команде bufsr проутюжил, но ничего не нашел.
 Добавлено (31.12.2019, 01:27)---------------------------------------------
 Кстати я совсем забыл, я Вам отправил ссылки на тестовый ТС.
 |  |  |  |  |