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

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




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

'=============================== Спасибо ================================
Выражаю искреннюю благодарность всем, кто напрямую или косвенно помогал и повлиял на развитие проекта, отдельное спасибо: 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, jentoso, Kindom, Megakrok, Altruumann, vaskamy, Alizadombej, Krasovskii, Kurolesova, Svetka99, AkulaBig, Proudhawk, Yymn7, vruzin, Xprajs, Danyfirex, Party Hu, Lost Zombie, derrikF, Karabush, aorist, o2candoo, goog0le, P8gonyajlo, destiny child, Alex Penguin, Broken_Brain, rupinskiy, FedorLashchenko, destiny_child, JenTOSO, моим близким друзьям и родственникам: одним спасибо, что поддерживали, другим - за то, что не мешали!
'=======================================================================
TCIMG - утилита для вызова различных команд Total Commander и выполнения дополнительных действий.
Мощное средство для расширения функциональности Total Commander и других программ.
Направлена на автоматизацию монотонных действий, связанных с файловыми, системными, программными, оконными операциями.
Полностью портабельна, т.е. не требует установки и не вносит в реестр или куда-либо ещё дополнительную информацию.
Утилита представляет из себя скомпилированный AutoIt3-скрипт.
Утилиту разрешено распространять только с указанием сайта поддержки: http://tc-image.3dn.ru




Кнопки для TCIMG

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

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

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

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



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

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

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

Расширение функционала 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)






 
ПаразитДата: Вторник, 15.11.2016, 13:41 | Сообщение № 2026
Майор

На сайте с: 27.02.2016
Город: Быково
Сообщений: 86
Награды: 0
Репутация: 0
Не получается вызвать диалог сохранения.
Как надо правильно?

Код
global lists=%L asave=GLOBALLISTS!![ssave]
 
shveicarДата: Вторник, 15.11.2016, 15:17 | Сообщение № 2027
Генерал-лейтенант

На сайте с: 18.05.2012
Город: Санкт-Петербург
Сообщений: 570
Награды: 10
Репутация: 23
Цитата Паразит ()
Как надо правильно?


Судя по справке так:
Код
global lists=%L asave=GLOBALLISTS||"%pList.txt"


но на мой взгляд, asave больше подходит для сохранения списка из цикла.
А в данном случае, проще будет так:
Код
lists=%L||save<"%pList.txt">


Сообщение отредактировал shveicar - Вторник, 15.11.2016, 15:21
 
ПаразитДата: Вторник, 15.11.2016, 19:57 | Сообщение № 2028
Майор

На сайте с: 27.02.2016
Город: Быково
Сообщений: 86
Награды: 0
Репутация: 0
shveicar, мне нужно вызвать диалог сохранения файла, который вызывается с помощью параметра ssave, что в справке / Дополнения № 18
 
shveicarДата: Вторник, 15.11.2016, 21:40 | Сообщение № 2029
Генерал-лейтенант

На сайте с: 18.05.2012
Город: Санкт-Петербург
Сообщений: 570
Награды: 10
Репутация: 23
тогда, как то так-
Код
global slist=%L||[ssave=Выберите~~что~~нужно!!C:\!!*.*!!newname!!txt]

Только сохранения не происходит.
Возможно там какие то глюки.
Андрей придет, подскажет..


Сообщение отредактировал shveicar - Вторник, 15.11.2016, 21:43
 
ПаразитДата: Среда, 16.11.2016, 05:26 | Сообщение № 2030
Майор

На сайте с: 27.02.2016
Город: Быково
Сообщений: 86
Награды: 0
Репутация: 0
Цитата shveicar ()
Возможно там какие то глюки.


Вот и я несколько часов пытался это побороть
 
Andrey_AДата: Среда, 16.11.2016, 08:48 | Сообщение № 2031
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7212
Награды: 144
Репутация: 132
Аверин Андрей
Цитата Паразит ()
Не получается вызвать диалог сохранения.
Как надо правильно?

В команде просто не были подключены диалоги - подключил...

Доступно только для пользователей

_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

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

Ещё дополнения в команду prevw

Код
- добавлено отображение информации фа    йлов MP3, M4A, WAV, OGG, FLAC, а так же показ изображения (если таковое есть в файле)
- исправлено в информации отображение символа "&"
- добавлен просмотр случайного кадра из видеофайлов 3GP, AVI, DVR-MS, FLV, M2TS, MKV, MOV, MP4, MPG, MTS, OGV, VOB, WEBM, WMV с помощью FFmpeg.dll  
- добавлен в TCIMG.ini в секцию [DLL] ключ FFmpeg в который прописывается путь к файлу библиотеки FFmpeg.dll


Библиотеку можно скачать FFmpeg
И прописать в TCIMG.ini (TCIMGU.ini) в секции [DLL] в ключе FFmpeg

Код
[DLL]
...
FFmpeg=%COMMANDER_PATH%\Utilities\Images\FFmpeg\FFmpeg.dll




.


 
АтосДата: Среда, 16.11.2016, 15:12 | Сообщение № 2032
Лейтенант

На сайте с: 24.12.2014
Город: Ростов-на-Дону
Сообщений: 43
Награды: 0
Репутация: 0
Привет. У меня появилась полезная задача.

Вот у меня есть в папке много разных файлов с разными расширениями.
Я заранее пометил все файлы.
Среди них есть имена, которые начинаются одиннаково, но окончания они имеют совершенно разные.

Пример. Есть такие файлы.

122.QQQ.fdfdfe.txt
122.QQQ.eeee.txt
122.QQQ.ggggggggg.txt
315.QQQ.fwefwefwef.txt
315.QQQ.ffff.txt
315.QQQ.fwjjjj.txt

Ну так вот, такая задача.
Я выделяю файл, который начинается с "315.", нажимаю кнопку, и выделяются все файлы, которые начинаются с "315.".
Я выделяю файл, который начинается с "122.", нажимаю кнопку, и выделяются все файлы, которые начинаются с "122.".
И т.д.
Я специально сделал метку "QQQ.", чтобы к нему было легче подобрать регулярное выражение.
Что-то типа, (^\d{3}\.)(QQQ\.)(.+?\..{3}).
Т.е, мы к каждой группе должны присвоить переменные, и с помощью параметра markp или marks произвести выделение.
 
chip642Дата: Среда, 16.11.2016, 16:59 | Сообщение № 2033
Генералиссимус

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

Недавно в теме TCIMG такая задача рассматривалась. Только не понимаю для чего в данном случае метки понадобились, можно и без них.

Код
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\TCIMG.exe
global sends="%O"||&&^(.{4}).*!!$1 marks=0||test<1n!!\QGLOBALSENDS<1>\E>
Wcmicons.dll,19
Выделить в активной панели объекты начало имен которых совпадает с первыми 4-мя символами имени объекта под курсором

-1


Если надо оставить в активной панели, для удобства визуализации, только выделенное то:

Код
TOTALCMD#BAR#DATA
%COMMANDER_PATH%\TCIMG.exe
global sends="%O"||&&^(.{4}).*!!$1 marks=0||test<1n!!\QGLOBALSENDS<1>\E> tcimg=$cm2023
Wcmicons.dll,19
Выделить в активной панели объекты начало имен которых совпадает с первыми 4-мя символами имени объекта под курсором и оставить только выделенное

-1
-1
 
АтосДата: Среда, 16.11.2016, 18:23 | Сообщение № 2034
Лейтенант

На сайте с: 24.12.2014
Город: Ростов-на-Дону
Сообщений: 43
Награды: 0
Репутация: 0
chip642, спасибо за ответ.
У меня не так много выпадает свободного времени, и поэтому я не мог просматривать предыдущие темы.
А насчёт меток, то я подумал, что так было бы удобнее составлять регулярки.
 
Andrey_AДата: Четверг, 17.11.2016, 04:00 | Сообщение № 2035
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7212
Награды: 144
Репутация: 132
Аверин Андрей
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

TCIMG 16.4 от 17.11.2016

Скачать TCIMG 16.4





 
Andrey_AДата: Четверг, 17.11.2016, 05:39 | Сообщение № 2036
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7212
Награды: 144
Репутация: 132
Аверин Андрей
Из темы "Расширение функционала" http://tc-image.3dn.ru/forum/5-964-17129-16-1478988481

Цитата shveicar ()
Есть предложение, сделать способ "бокового" сложения двух списков, через разделитель.


Реализовано: Тестовая версия TCIMG 165_b2, в версии TCIMG 16.4 замените соответствующие файл(ы)

Синтаксис:
Код
$GLOBAL...@$GLOBAL...@Delimeter


Примеры:
Код

"global wlist=%L xlist=%L $GLOBALWLIST@$GLOBALXLIST@=== GLOBALWLIST<a>" - объединить поэлементно данные 2-х глобальных массивов и записать результат в 1-й


.


 
Andrey_AДата: Пятница, 18.11.2016, 08:43 | Сообщение № 2037
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7212
Награды: 144
Репутация: 132
Аверин Андрей
Из темы "Расширение функционала" http://tc-image.3dn.ru/forum/5-964-17184-16-1479399763

Цитата shveicar ()
А можно для рандомного генератора, добавить выбор из определенного диапазона чисел и букв, как например в этом случае:


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

[helpquote][+] Оптимизирован параметр rndm<> см. Дополнение №30
- в режимы 1,2,3,4,5,6,8,23,12,13 добавлен диапазон длины строки M-N
- добавлен режим "26"[/helpquote]

см. Дополнение №30

Примеры:
Код

"bufsr=##rndm<2|5-9>" - записать в буфер обмена строку со случайными символами (случайная длина строки в диапазоне 5-9)
"bufsr=##rndm<2+|5-9>" - записать в буфер обмена строку со случайными символами (случайная длина строки в диапазоне 5-9) в верхнем регистре
"bufsr=##rndm<2-|5-9>" - записать в буфер обмена строку со случайными символами (случайная длина строки в диапазоне 5-9) в нижнем регистре

"bufsr=##rndm<23|25-50>" - записать в буфер обмена строку со случайным набором русских символов и цифр (случайная длина строки в диапазоне 5-9)
"bufsr=##rndm<23+|25-50>" - записать в буфер обмена строку со случайным набором русских символов и цифр (случайная длина строки в диапазоне 5-9) в верхнем регистре
"bufsr=##rndm<23-|25-50>" - записать в буфер обмена строку со случайным набором русских символов и цифр (случайная длина строки в диапазоне 5-9) в нижнем регистре

"bufsr=##rndm<12|0:65535:20-60>" - записать в буфер обмена случайный набор из юникодных символов (случайное количество в диапазоне 20-60)
"bufsr=##rndm<12+|0:65535:20-60>" - записать в буфер обмена случайный набор из юникодных символов (случайное количество в диапазоне 20-60) в верхнем регистре
"bufsr=##rndm<12-|0:65535:20-60>" - записать в буфер обмена случайный набор из юникодных символов (случайное количество в диапазоне 20-60) в нижнем регистре

"bufsr=##rndm<13|65:70:40>" - записать в буфер обмена случайный набор из 40 символов (A-F)
"bufsr=##rndm<13|65:70:10-50>" - записать в буфер обмена случайный набор символов (A-F) (случайное количество в диапазоне 10-50)
"bufsr=##rndm<13-|65:70:10-50>" - записать в буфер обмена случайный набор символов (A-F) (случайное количество в диапазоне 10-50) в нижнем регистре

"bufsr=##rndm<26|сТрОкА:30>" - записать в буфер обмена случайный набор 30 символов из заданной строки
"bufsr=##rndm<26+|сТрОкА:30>" - записать в буфер обмена случайный набор 30 символов из заданной строки в верхнем регистре
"bufsr=##rndm<26-|сТрОкА:30>" - записать в буфер обмена случайный набор 30 символов из заданной строки в нижнем регистре

"bufsr=##rndm<26|сТрОкА:20-60>" - записать в буфер обмена случайный набор символов из заданной строки (случайное количество в диапазоне 20-60)
"bufsr=##rndm<26+|сТрОкА:20-60>" - записать в буфер обмена случайный набор символов из заданной строки (случайное количество в диапазоне 20-60) в верхнем регистре
"bufsr=##rndm<26-|сТрОкА:20-60>" - записать в буфер обмена случайный набор символов из заданной строки (случайное количество в диапазоне 20-60) в нижнем регистре



И ещё пример для последнего добавления:

Код

"global wlist=%L xlist=%L glist=$GLOBALWLIST@$GLOBALXLIST@=== GLOBALGLIST<a>" - передать поэлементное объединение данных 2-х глобальных массивов в команду glist


.


 
shveicarДата: Пятница, 18.11.2016, 16:58 | Сообщение № 2038
Генерал-лейтенант

На сайте с: 18.05.2012
Город: Санкт-Петербург
Сообщений: 570
Награды: 10
Репутация: 23
Спасибо за расширение функционала.
Отличные дополнения up
 
Andrey_AДата: Суббота, 19.11.2016, 04:18 | Сообщение № 2039
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7212
Награды: 144
Репутация: 132
Аверин Андрей
Из темы "Расширение функционала" http://tc-image.3dn.ru/forum/5-964-16995-16-1477632488

Цитата VikTor1985 ()
есть возможность добавить еще один файл TCIMGU1.lng в которых будут прописаны еще необходимые секции с ключами? + возможность изменить его (файла TCIMGU1.lng) местоположение?
к примеру в файле TCIMGU.ini сделать доп ключик "LNG=" в секции [Setting] (напримере секции "TCG=") и этот ключ будет отвечать за пользовательские файлы *.lng!


Реализовано: Тестовая версия TCIMG 165_b7, в версии TCIMG 16.4 замените соответствующие файл(ы)

Всё надо тестировать, возможны непредвиденные ошибки...

Доп. файлы LNG:
1. аналогичны TCIMG.lng (т.е. секция к примеру [Russian] и далее ключи)
2. только для ключей диалогов
3. кодировка желательно UTF-16 LE 1200

Примеры:
Код

[Setting]
; LNG - подключение пользовательских файлов lng с командами утилиты. Прописывается либо полный путь, либо имя файла, который находится в папке с утилитой. Разделитель /
; LNG=TCIMAGU.lng/MY.lng/%COMMANDER_PATH%\Personal\commands\HTML.lng
LNG=


.


 
Andrey_AДата: Суббота, 19.11.2016, 13:20 | Сообщение № 2040
Генералиссимус

На сайте с: 26.01.2012
Город: Сочи, Хоста
Сообщений: 7212
Награды: 144
Репутация: 132
Аверин Андрей
         E-Mail


Задача:
Сравнить размер выделенных объектов с оставшимся местом диска противоположной панели, если место на диске превышает выделенный объем то разрешить копирование, если нет, то выдать окно с предупреждением.



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

Пример реализации:

Доступно только для пользователей

Для этого добавлено ряд подпараметров в info , доп. примеры:

Код
"bufsr=<info=s150C|B>" - записать в буфер обмена размер диска С:\ в байтах
"bufsr=<info=s150C|K>" - записать в буфер обмена размер диска С:\ в килобайтах
"bufsr=<info=s150C|M>" - записать в буфер обмена размер диска С:\ в мегабайтах
"bufsr=<info=s150C|G>" - записать в буфер обмена размер диска С:\ в гигагабайтах

"bufsr=<info=s151C|B>" - записать в буфер обмена размер свободного места диска С:\ в байтах
"bufsr=<info=s151C|K>" - записать в буфер обмена размер свободного места диска С:\ в килобайтах
"bufsr=<info=s151C|M>" - записать в буфер обмена размер свободного места диска С:\ в мегабайтах
"bufsr=<info=s151C|G>" - записать в буфер обмена размер свободного места диска С:\ в гигагабайтах

"bufsr=<info=s152C|B>" - записать в буфер обмена размер занятого места диска С:\ в байтах
"bufsr=<info=s152C|K>" - записать в буфер обмена размер занятого места диска С:\ в килобайтах
"bufsr=<info=s152C|M>" - записать в буфер обмена размер занятого места диска С:\ в мегабайтах
"bufsr=<info=s152C|G>" - записать в буфер обмена размер занятого места диска С:\ в гигагабайтах

"bufsr=<info=o300%L|1|B>" - записать в буфер обмена размер выделенных объектов в байтах (только файлов)
"bufsr=<info=o300%L|1|K>" - записать в буфер обмена размер выделенных объектов в килобайтах (только файлов)
"bufsr=<info=o300%L|1|M>" - записать в буфер обмена размер выделенных объектов в мегабайтах (только файлов)
"bufsr=<info=o300%L|1|G>" - записать в буфер обмена размер выделенных объектов в гигагабайтах (только файлов)

"bufsr=<info=o300%L|2|B>" - записать в буфер обмена размер выделенных объектов в байтах (только папок)
"bufsr=<info=o300%L|2|K>" - записать в буфер обмена размер выделенных объектов в килобайтах (только папок)
"bufsr=<info=o300%L|2|M>" - записать в буфер обмена размер выделенных объектов в мегабайтах (только папок)
"bufsr=<info=o300%L|2|G>" - записать в буфер обмена размер выделенных объектов в гигагабайтах (только папок)

"bufsr=<info=o300%L|3|B>" - записать в буфер обмена размер выделенных объектов в байтах
"bufsr=<info=o300%L|3|K>" - записать в буфер обмена размер выделенных объектов в килобайтах
"bufsr=<info=o300%L|3|M>" - записать в буфер обмена размер выделенных объектов в мегабайтах
"bufsr=<info=o300%L|3|G>" - записать в буфер обмена размер выделенных объектов в гигагабайтах


.


 
Поиск:

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