[ Обновленные темы · Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Модератор форума: Andrey_A, simup, ХарВик, chip642  
Форум » • Программы • Утилиты • » Утилиты » TCIMG - Мощное средство автоматизации (Утилиты для системы и Total Commander)
TCIMG - Мощное средство автоматизации
Andrey_AДата: Вторник, 12.06.2012, 04:41 | Сообщение № 1
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7167
Награды: 139
Репутация: 125
Аверин Андрей
TCIMG




Дата выпуска: 31.03.2024
Версия: 34.3
Автор: Averin Andrey
Скачать: Страница обновления TCIMG
Скачать 2 : Ссылка обновления TCIMG
Справка: TCIMG ONLINE

[info]'=============================== Спасибо ================================
Выражаю искреннюю благодарность всем, кто напрямую или косвенно помогал и повлиял на развитие проекта, отдельное спасибо: Loopback, LonerD, GGG8, ХарВик, shveicar, Yashied, asmadeus, amel27, madmasles, CreatoR, Ward, thesittingbull, Metchnik, InnI, wakillon, Yaroslav, Abel11, chip642, Deus-V, inververs, sims, BezDNaU, Veosys, getaumy, UEZ, homer77, wpitty, JKT, vakula, boriska, =BD=, G.Sandler, Mrakobes, mopodede, Skif_off, wpitty, Rustamer, wpitty, Mchoff, iifoks447, Andarin, oshizelly, Egorkaru, coherent, Атос, yug78, vanhallen, mopodede, Афи, Axel, addhaloka, Matros, Finn, Aleks431, Zmy, Паразит, TarasBY, Userrr, Jury Abel', VikTor1985, HA3APET, alexxxxx, konuk2007, Lupo73, Prog@ndy, Avada, monoceres, авторам библиотеки MediaInfo, авторам Carl Worth и Behdad Esfahbod библиотек Cairo, авторам библиотеки librhash, авторам библиотеки Bass, авторам библиотеки FFmpeg, автору Zenden за утилиту ImgUpload, Slava10779, maK, zep, Rako1, zzzten, Nuker-Hoax, regist123, shusler, sibirnik, Romario, Lord_NEVR, Ли Чжицзюнь (李志军), ruizone (瑞), alexostrov, CaptainFlint, Thomasmolover, eukalyptus, Tuape, Helpmister, NIKZZZZ, smit0966, rediffusion, zybrevl, Rioran, I95, Vimann, And000010, VasRoman, MonarchLFV, jktgeorge, Mario Arhivario, Songbird, Malkey, Placetoload, ziabriev, Antonij72, weaponx, Angelfuze, Pendelgrast, smit0966, Jacob, Rakosvist, Karbucho, Karolinka69, SLIM, ogenry, VladMo, моим близким друзьям и родственникам: одним спасибо, что поддерживали, другим - за то, что не мешали!
'=======================================================================[/info]
TCIMG - утилита для вызова различных команд Total Commander и выполнения дополнительных действий.
Мощное средство для расширения функциональности Total Commander и других программ.
Направлена на автоматизацию монотонных действий, связанных с файловыми, системными, программными, оконными операциями.
Полностью портабельна, т.е. не требует установки и не вносит в реестр или куда-либо ещё дополнительную информацию.
Утилита представляет из себя скомпилированный AutoIt3-скрипт.
Утилиту разрешено распространять только с указанием сайта поддержки: http://tc-image.3dn.ru




Кнопки для TCIMG

Регулярные выражения

Control Viewer - Просмотр информации элементов окна

Страница обновления TCIMG

Как правильно обновлять утилиту TCIMG?



В справке TCIMG.chm более 16.300 примеров применения.

Актуальная версия (бета версии) в последних сообщениях темы

Тема развития справки утилиты

Расширение функционала TCIMG

Помощь и советы ПОДКЛЮЧЕНИЕ ПРОГРАММ и СКРИПТОВ

Для запросов кнопок тема ЗАКАЗ КНОПОК

Дополнительное обсуждение TCIMG на forum.ru-board

Группа в Telegram


Сборки программ, в которых участвует утилита TCIMG, в них так же можно увидеть много интересных примеров:
AkelPad Image - сборка текстового редактора AkelPad (автор Andrey_A)
TC IMAGE - сборка файлового менеджера Total Commander (автор Andrey_A)
TC VIM - сборка файлового менеджера Total Commander (автор Matros)
TC Universal Edition - сборка файлового менеджера Total Commander (авторы Yaroslav & asmadeus)
TC Hot-Shot - сборка файлового менеджера Total Commander (автор ice_daemon)
TC Titan Portable - сборка файлового менеджера Total Commander (автор pcDenPro)
TC AkulaBig - сборка файлового менеджера Total Commander (автор AkulaBig)
TCnative - сборка файлового менеджера Total Commander (автор ziabriev)






 
Andrey_AДата: Суббота, 21.12.2019, 18:47 | Сообщение № 3316
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7167
Награды: 139
Репутация: 125
Аверин Андрей
asmadeus, конечно при таких списках только волшебник заменит правильно.
Я бы пошёл другим путём - с цифрами всегда есть что-то одинаковое (если этот файл подлежит автоматизации) и составлять соответственно, если имеется ввиду WCMICONS.INC, то List
Код
1=*0=
2=*1=
3=*2=
931=*3=
4=*4=
5=*5=
414=*6=
2049=*7=
2199=*8=
2198=*9=
520=*10=


Код
textt=%P%N||<srlist=c:\List.txt|#|1|1|0|1|0|*>||upd<1>


или с перенос строки вставлять...

.


 
asmadeusДата: Суббота, 21.12.2019, 19:41 | Сообщение № 3317
Генералиссимус

На сайте с: 14.12.2012
Город: Кривой Рог
Сообщений: 1375
Награды: 29
Репутация: 32
Andrey_A, не понял назначения твоего листа. Смотрю, чем пытаться автоматизировать, давно бы уже вручную записал.
Но это не наши методы
 
Andrey_AДата: Суббота, 21.12.2019, 20:02 | Сообщение № 3318
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7167
Награды: 139
Репутация: 125
Аверин Андрей
Цитата asmadeus ()
не понял назначения твоего листа

Этот лист заменяет
Код
1=0
2=1
3=2
931=3
4=4
5=5
414=6
2049=7
2199=8
2198=9
520=10

В итоге:
Код
0=0
1=1
2=2
3=3
4=4
5=5
6=6
7=7
8=8
9=9
10=10

.


 
asmadeusДата: Суббота, 21.12.2019, 20:08 | Сообщение № 3319
Генералиссимус

На сайте с: 14.12.2012
Город: Кривой Рог
Сообщений: 1375
Награды: 29
Репутация: 32
Andrey_A, типа двойной обработки?
 
Andrey_AДата: Суббота, 21.12.2019, 20:09 | Сообщение № 3320
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7167
Награды: 139
Репутация: 125
Аверин Андрей
asmadeus, Уже лет 10 прошу при текстовых операциях высылать текст ДО и ПОСЛЕ иначе получается разговор слепого с глухим...

.


 
asmadeusДата: Суббота, 21.12.2019, 20:22 | Сообщение № 3321
Генералиссимус

На сайте с: 14.12.2012
Город: Кривой Рог
Сообщений: 1375
Награды: 29
Репутация: 32
Andrey_A, так я тебе лист замен написал. Правильно ты заметил, что это wcmicons.inc. Полностью кнопку не выкладываю, дабы не вводить в заблуждение - она то не рабочая
 
chip642Дата: Суббота, 21.12.2019, 21:19 | Сообщение № 3322
Генералиссимус

На сайте с: 24.04.2013
Город: Москва
Сообщений: 1495
Награды: 62
Репутация: 58
asmadeus

В поиске замен "число=число"? Я уже не помню точно, скоро сами посмотрите как у меня (ролик снял, осталось комментариями снабдить и выложу с командами), но я там добавлял в начало значений wcmicons.dll, - далее заменял, а потом удалял wcmicons.dll. Вообще, учитывая что столько интереса лучше было бы создать отдельную тему.
 
asmadeusДата: Суббота, 21.12.2019, 21:36 | Сообщение № 3323
Генералиссимус

На сайте с: 14.12.2012
Город: Кривой Рог
Сообщений: 1375
Награды: 29
Репутация: 32
chip642, мы уже и не надеялись увидеть от тебя результат. По поводу замены иконок в главном меню у меня почти все работает
 
chip642Дата: Суббота, 21.12.2019, 21:44 | Сообщение № 3324
Генералиссимус

На сайте с: 24.04.2013
Город: Москва
Сообщений: 1495
Награды: 62
Репутация: 58
Цитата asmadeus ()
мы уже и не надеялись увидеть от тебя результат


Здоровье подводит :(
 
asmadeusДата: Суббота, 21.12.2019, 21:46 | Сообщение № 3325
Генералиссимус

На сайте с: 14.12.2012
Город: Кривой Рог
Сообщений: 1375
Награды: 29
Репутация: 32
chip642, здоровье дороже, нафиг все иконки! >(
 
alexostrovДата: Суббота, 21.12.2019, 22:13 | Сообщение № 3326
Полковник

На сайте с: 22.11.2017
Сообщений: 179
Награды: 0
Репутация: 0
Ув. chip642
Крепкого Вам здоровья в Новом году и в уходящем тоже.
Это очень хорошо, что появилась надежда на успешное завершение этого проекта.
Я уже приготовил чистый (тестовый) ТС, и готов к тестированию Вашего произведения.
Удачи Вам!
 
shveicarДата: Воскресенье, 22.12.2019, 03:33 | Сообщение № 3327
Генерал-лейтенант

На сайте с: 18.05.2012
Город: Санкт-Петербург
Сообщений: 562
Награды: 10
Репутация: 23
Цитата asmadeus ()
Список примерно так выглядит:
1=0
2=1
3=2
931=3
4=4
5=5
414=6
2049=7
2199=8
2198=9
520=10

Слева от равно - значение ключа, которое надо заменить в ини файле. Справа от равно - то, чем надо заменить


Есть один способ замены для таких случаев, с подключаемым шаблоном форматирования.
команда:
Код
slist=[tc=AM] sends=$f254\list.txt??-1||?Fstr29||#N#@#!!tnum[1|1|1] <IF> <info=t61$GLOBALSENDS[1]//> = 1 <THEN> rends=$GLOBALSENDS||?Fstr30,57||?H|1|-- vends=$GLOBALSENDS??-1||¤!!Chr(124)Chr(124) creat=$f254\||format.tcg||code<4>||content<$GLOBALVENDS>||owrite<1> formt=$f254\format.tcg textx=$GLOBALSLIST||?FGLOBALRENDS<1>||formt<1,63>||code<4> <ENDIF>

и для секции [FormatUser]
Код
str29=(?m)^(\d+)=(\d+)$||Us#@#=(?m)^$1$¤$2
str30=(?m)^(Us\d+)=.*$||$1,

list.txt - Это ваш список замен приведенный выше.
Обрабатываемые файлы, содержащие эти цифры, выделяются в активной панели.
Сам пользуюсь таким методом при сложных заменах с учетом конца и начала фраз в html.

P.s Если используется более сложные списки, то просто правите регулярку по составлению шаблонов, str29 под себя.


Сообщение отредактировал shveicar - Воскресенье, 22.12.2019, 04:25
 
Andrey_AДата: Понедельник, 23.12.2019, 15:33 | Сообщение № 3328
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7167
Награды: 139
Репутация: 125
Аверин Андрей
Последние изменения

Тестовая версия TCIMG 269_b5, в версии TCIMG 26.8 замените соответствующие файл(ы)

[helpquote]
[±] Исправлена ошибка в командах stext, opens
[+] Оптимизирован функционал параметра info (см. Дополнение №10#i)
- изменён разделитель для режимов i20 - i215
[+] Оптимизирована команда start
- добавлены параметры std<> и stdcnv<>
- добавлены глобальные переменные GLOBALSTOUT, GLOBALSTERR
- добавлено, если строка программы начинается с "cmd", то строка параметров передаётся как есть (по принципу команды cmdbt)
[+] Добавлен параметр stdcnv<> в команду cmdbt
[+] Оптимизирована UDF функция _ArrayDisplay() и отображение массивов в GLOBALNAME<a(b,z,w,e,g)>
- добавлены в секцию [InfoList] ключи с приставкой "k", позволяющие прописывать шаблон шрифта и цвета таблицы
- исправлена ошибка установки цвета шрифта
[±] Исправлена ошибка в параметре [zfold], в "infos=2||23"
[+] Дополнение №24
- в параметр ?H добавлены режимы "7"
[+] Добавлен новый диалог для выбора файлов и папок
[/helpquote]

Последние примеры:
Код

"sends=@<info=o250$f250tcimg.ini|180//> GLOBALSENDS<a>" - получить путь существующего заданного файла учитывая регистр символов

"global start=ExifTool||list<%WL>''~~-r~~-all''||begin<cmd~~/c~~''>||&&hide||std<2>||progres<> GLOBALSTOUT<a>" - получить информацию о выделенных изображений с помощью ExifTool
"global start=ExifTool||list<%WL>''~~-r~~-all''||begin<cmd~~/c~~''>||&&hide||std<2>||progres<> anf2d=$GLOBALSTOUT||2||([^\r\n]+)||begin<0> GLOBALANF2D<a>" - получить информацию о выделенных изображений с помощью ExifTool в 2D массиве
"global start=ExifTool||list<%WL>''~~-r~~-all''||begin<cmd~~/c~~''>||&&hide||std<2>||progres<> anf2d=$GLOBALSTOUT||2||([^\r\n]+)||begin<0>||tr<1> GLOBALANF2D<a>" - получить информацию о выделенных изображений с помощью ExifTool в транспонированном 2D массиве
"global start=ExifTool||list<%WL>''~~-r~~-comment''||begin<cmd~~/c~~''>||&&hide||std<2>||progres<> GLOBALSTOUT<a>" - получить комментарии для выделенных изображений с помощью ExifTool
"global start=ExifTool||list<%WL>''~~-r~~-comment''||begin<cmd~~/c~~''>||&&hide||std<2>||progres<>||stdcnv<&&([^:]+[\h:]+)(.*)!!$2> GLOBALSTOUT<a>" - получить комментарии без тега для выделенных изображений с помощью ExifTool

"global start=7-ZIP||l||list<%WL>''||begin<cmd~~/c~~''>||&&hide||std<2>||progres<> GLOBALSTOUT<a> anf2d=$GLOBALSTOUT||2||([^\r\n]+)||begin<0>||tr<1> GLOBALANF2D<a>" - получить информацию для выделенных архивов под курсором с помощью архиватора 7-Zip [••] [•arhives]

"global start=cmd~~/c~~DIR~~''list<%WL>''*.*~~/B~~/A-D~~/S||&&hide||std<2>||progres<> GLOBALSTOUT<a> anf2d=$GLOBALSTOUT||2||([^\r\n]+)||begin<0>||tr<1> GLOBALANF2D<a>" - получить список файлов выделенных папок с рекурсией
"global start=cmd~~/c~~DIR~~''list<%WL>''*.*~~/B~~/A-D~~/S||&&hide||std<2>||progres<>||stdcnv<^^::@CRLF> anf2d=$GLOBALSTOUT||2||([^\r\n]+)||begin<0>||tr<1> GLOBALANF2D<a>" - получить список файлов выделенных папок с рекурсией с добавлением в начало путь начальной папки

"start=cmd~~/c~~''''?GifSicle?''~~''list<%WL>''~~--colors~~256~~-O3~~>~~''%T\anim:NUMBER:.gif''''||&&hide||&&wait||upd<3>" - оптимизировать и уменьшить количество цветов в выделенных GIF файлах и сохранить новый файл в другую панель с помощью утилиты GifSicle

"global start=cmd~~/c~~''''?FFmpeg?''~~-i~~''list<%WL>''''||&&hide||std<8>||progres<> GLOBALSTOUT<a> anf2d=$GLOBALSTOUT||2||([^\r\n]+)||begin<0>||tr<1> GLOBALANF2D<a>" - получить информацию для выделенных медиафайлов с помощью FFmpeg [••] [•video]

"global start=cmd~~/c~~''''?PDFInfo?''~~''list<%WL>''''||&&hide||std<2>||progres<>||stdcnv<^^::@CRLF> GLOBALSTOUT<a> anf2d=$GLOBALSTOUT||2||([^\r\n]+)||begin<0>||tr<1> GLOBALANF2D<a>" - получить информацию для выделенных PDF файлов с помощью PDFInfo в 2D массиве
"global start=cmd~~/c~~''''?PDFInfo?''~~''list<%WL>''''||&&hide||std<2>||progres<>||stdcnv<^^::@CRLF;;#K25~-1~1~@CRLF!!/_> sends=$GLOBALSTOUT??-1 GLOBALSENDS<z|1|8|k1>" - получить информацию для выделенных PDF файлов с помощью PDFInfo в 1D массиве

"global cmdbt=for~~%%i~~in~~(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z)~~DO~~(if~~exist~~%%i:\~~echo~~Disk~~%%i:~~exist)||std<8>||stdcnv<&?(?m)(.*exist$)> GLOBALCMDBT<a>" - получить строки существующих дисков
"global cmdbt=for~~%%i~~in~~(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z)~~DO~~(if~~exist~~%%i:\~~echo~~Disk~~%%i:~~exist)||std<8>||stdcnv<&?(?m)(\w:)\hexist$> GLOBALCMDBT<a>" - получить буквы существующих дисков

"nlist=%WL GLOBALNLIST<z|0|iA_A1|kS1> GLOBALNLIST<e|0|iA_2|kS2>" - просмотреть пути выделенных файлов (в таблице настройки значков берутся из секции [InfoList] из ключей "iA_A1" и "iA_A2", настройки текста берутся из ключей "kS1" и "kS2")

"textt=%P%N||<srlist=c:\List.txt|#|1|1|0|1|0|*>||upd<1>" - в содержимом в текстовом файле под курсором произвести замену по списку из файла List.txt (разделитель между фразами в List "*")

"%Zdilog=<elect=Выберите~~объекты|"%P"> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге (корневая папка в диалоге - текущая папка под курсором, ар)
"dilog=<elect=Выберите~~объекты|{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге (Desktop (рабочий стол пользователя) - корневая папка в диалоге)
"dilog=<elect=Выберите~~объекты|{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}*> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге (Desktop (рабочий стол по умолчанию системы) - корневая папка в диалоге)
"dilog=<elect=Выберите~~объекты|71> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге (ярлыки lnk в корневой папке "Недавние дкументы")

"rends=Us3,Us2,Us1,Us4,Us5,Us6,Us7,Us8,Us9,Us10,Us11||?H|7|-- GLOBALRENDS<a>" - преобразовать строку в "Us1--Us11"
"rends=Us3,Us2,Us1,Us4,Us5,Us6,Us7,Us8,Us9,Us10,Us11,6,3,6,8,9,3,2,8,1,0,6,4,2,2,7,6||?H|7|-- GLOBALRENDS<a>" - преобразовать строку в "Us1--Us11,0--4,6--9"
"rends=9,8,200,Us3,Us2,Us1,Us4,Us5,Us6,Us7,Us8,Us9,Us10,Us11,6,3,6,8,9,3,2,8,1,0,6,4,2,2,7,6||?H|7|-- GLOBALRENDS<a>" - преобразовать строку в "0--4,6--9,200,Us1--Us11"
"rends=18,s10,Us3,Us2,Us1,Us4,Us5,Us6,Us7,Us8,Us9,Us10,Us11,6,3,6,8,s4,s8,s5,s7,s6,9,3,2,8,1,0,6,4,2,2,7,6||?H|7|-- GLOBALRENDS<a>" - преобразовать строку в "0--4,6--9,18,s4--s8,s10,Us1--Us11"
"rends=s11,18,s10,Us3,Us2,Us1,Us4,Us5,Us6,Us7,Us8,Us9,Us10,Us11,6,3,6,8,s4,s8,s5,s7,s6,9,3,2,8,1,0,6,4,2,2,7,6||?H|7|-- GLOBALRENDS<a>" - преобразовать строку в "s4--s8,s10,s11,Us1--Us11,0--4,6--9,18"



.


 
Andrey_AДата: Четверг, 26.12.2019, 03:51 | Сообщение № 3329
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7167
Награды: 139
Репутация: 125
Аверин Андрей
Тестовая версия TCIMG 269_b6, в версии TCIMG 26.8 замените соответствующие файл(ы)

Описание диалога elect

[helpquote]
[+] Добавлен диалог для выбора файлов и папок (см. Дополнение №18)
- в TCIMG_Russian.lng в ключ Translite добавлено описание
- добавлены ключи ElectBox1,ElectBox2 ... ElectBoxN
- добавлены глобальные переменные GLOBALELECT1, GLOBALELECT2, ..., GLOBALELECTN
[/helpquote]

Последние примеры:
Код

"%Zdilog=<elect=Выберите~~объекты|"%P"> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге (корневая папка в диалоге - текущая папка, включая открытый архив zip в Total Commander)
"dilog=<elect=Выберите~~объекты|D:\Util\TCIMG.zip\Files\Scripts\> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге (корневая папка в диалоге - заданный путь в архиве zip)

"dilog=<elect=Выберите~~объекты|{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге (Desktop (рабочий стол пользователя) - корневая папка в диалоге)
"dilog=<elect=Выберите~~объекты|{B4BFCC3A-DB2C-424C-B029-7FE99A87C641}*> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге (Desktop (рабочий стол по умолчанию системы) - корневая папка в диалоге)
"dilog=<elect=Выберите~~объекты|71> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге (ярлыки lnk в корневой папке "Недавние дкументы")

"dilog=<elect=Выберите~~значки¤TCIMG.dll,19|%%COMMANDER_PATH%%\Files\Icons\WcmIcons\|370|430|7|0|0x00020000+0x01000000|ico|1+2+4> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге, пример настройки окна для просмотра файлов ICO
"dilog=<elect=Выберите~~значки|%%COMMANDER_PATH%%\Files\Icons\WcmIcons\|370|190|8|0|0x00020000+0x01000000+0x00000800|ico|1+2+4> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге, пример настройки окна для просмотра файлов ICO
"dilog=<elect=BOX1> GLOBALELECT1<a>" - получить в массиве выбранные объекты в диалоге,







.


 
sibirnikДата: Четверг, 26.12.2019, 06:10 | Сообщение № 3330
Генерал-лейтенант

На сайте с: 27.08.2014
Сообщений: 742
Награды: 26
Репутация: 10
Andrey_A,
Спасибо за расширение возможностей TCIMG.
 
Форум » • Программы • Утилиты • » Утилиты » TCIMG - Мощное средство автоматизации (Утилиты для системы и Total Commander)
Поиск:

Интеллектуальные права и отказ от ответственности