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 

Autorun
Goto page Previous  1, 2, 3 ... 233, 234, 235, 236  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
AkulaBig



Joined: 03 Dec 2008
Posts: 582

Post (Separately) Posted: Fri May 22, 2026 08:06    Post subject: Reply with quote

Orion9
Разобраться-бы с -@ -. Не понятно, почему в вашем примере на ahk нет параметра -stay_open. Думаю болван ошибся.
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 1155

Post (Separately) Posted: Fri May 22, 2026 11:38    Post subject: Reply with quote

AkulaBig wrote:
Разобраться-бы с -@ -

Это всего лишь один параметр, а вам придется изучать всю документацию, никуда вы от этого не денетесь Laughing
AkulaBig wrote:
Не понятно, почему в вашем примере на ahk нет параметра -stay_open. Думаю болван ошибся.

Нет, в этом случае болван не ошибся. Он сделал пример для одиночного запроса через stdin и получения одиночного ответа через stdout, о чем и написал
Болван wrote:
Критические правила при работе с -@ -Закрытие потока: Метод exec.StdIn.Close() обязателен. Пока поток открыт, ExifTool будет бесконечно ждать продолжения ввода и зависнет.Кавычки не нужны: Внутри строки argsContent пути к файлам и текстовые значения с пробелами нельзя оборачивать в кавычки.Символы перевода строки: Каждая опция и её значение должны разделяться стандартным символом новой строки (``n`).Если вам необходимо развить этот скрипт, уточните:Нужно ли обрабатывать несколько файлов по очереди в одном долгоживущем процессе ExifTool (режим -stay_open)?Требуется ли обрабатывать ошибки, возникающие при работе утилиты (чтение потока StdErr)?Какого формата данные вы хотите извлечь из файла (строки, JSON или XML)?
https://forum.wincmd.ru/viewpost.php?p=141380

А так-то да, он может и чушь иногда написать, нужно быть к этому готовым.
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 582

Post (Separately) Posted: Fri May 22, 2026 11:47    Post subject: Reply with quote

Orion9 wrote:
никуда вы от этого не денетесь

Почему вы думаете, что я не изучаю документацию? Но одна строчка про -@ - не особо помогла.
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 1155

Post (Separately) Posted: Fri May 22, 2026 12:46    Post subject: Reply with quote

AkulaBig wrote:
Почему вы думаете, что я не изучаю документацию?

Я прикалываюсь. Но если вы серьезно хотите в этом разбираться, то от изучения именно всей документации exiftool вам не уйти. Нужно знать все теги, форматы, ключи. А это процесс небыстрый, быстрого результата не будет. Поэтому... я бы бросил Laughing
AkulaBig wrote:
Но одна строчка про -@ - не особо помогла.

Самый простой вариант: Google -> Поиск -> "exiftool" -> Режим ИИ:

 Запрос

 Ответ

И т.д. пока болван не треснет

Быстрее бы уже Loopback или кто-нибудь научил болвана понимать язык Autorun — вот тогда мы заживём Cool
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 582

Post (Separately) Posted: Fri May 22, 2026 13:01    Post subject: Reply with quote

Orion9 wrote:
И т.д. пока болван не треснет

У меня толком ничего не получается. Составлять правильно запрос тоже надо уметь. Собственно простой поиск тоже не мало инфы выдает. Но с ИИ не сравнить.
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 1155

Post (Separately) Posted: Fri May 22, 2026 13:13    Post subject: Reply with quote

AkulaBig wrote:
Составлять правильно запрос тоже надо уметь.

Да бросьте вы. Болван заводится с полпинка понимает с полуслова Smile

 Запрос

 Ответ
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 582

Post (Separately) Posted: Sat May 23, 2026 10:43    Post subject: Reply with quote

Orion9
Забил запрос в Гугл, нажал Режим ИИ. Ничего похожего на ваш ответ. Напишите подробней, как вы ищите.
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 1155

Post (Separately) Posted: Sat May 23, 2026 12:08    Post subject: Reply with quote

AkulaBig wrote:
Ничего похожего на ваш ответ.

Ответ может быть непохожим, т.к. он зависит от контекcта чата, но в общих чертах должен совпадать.
AkulaBig wrote:
Напишите подробней, как вы ищите.

Так я и написал подробно, куда же еще подробнее. Не знаю, что у вас не получается. Ну попробуйте других болванов, их там сейчас вагон с телегой. Из самых простых и доступных:
https://duck.ai/
https://search.brave.com/ask
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 582

Post (Separately) Posted: Sat May 23, 2026 12:22    Post subject: Reply with quote

Orion9
Вы вроде про Гугл ИИ писали. Я в нем и попробовал. А до этого и в Алисе ИИ пробовал и еще в каком-то. Ладно, спасибо за консультацию.
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 1155

Post (Separately) Posted: Sat May 23, 2026 14:10    Post subject: Reply with quote

AkulaBig wrote:
в Алисе ИИ пробовал

Loopback + Алиса? Нет...)) Салтычиха такого не выдержит. Она и так себе места в сарайчике не находит, весь сельхозпродукт перевела Mr. Green так скучает по топикстартеру ))
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 582

Post (Separately) Posted: Sat May 23, 2026 15:38    Post subject: Reply with quote

Orion9
Однака, пропал сансей Rolling Eyes
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 582

Post (Separately) Posted: Mon May 25, 2026 06:48    Post subject: Reply with quote

Orion9
Наконец-то я разобрался с опцией -@ - и вообще с обработкой потоков. Есть еще проблема с определением наполненности потока. Но пока это не важно. Решил через временную задержку.
А теперь серьезная проблема. Оказывается с потоками можно работать, только если обработку завершать строкой:
Code:
StdinWrite($iPID, "-stay_open" & @LF & "False" & @LF)

Собственно как и показано в примерах. Но для wdx-плагина это означает, что exiftool надо запускать каждый раз. ПИД процесса каждый раз новый. Но при этом не требуется завершение процесса функцией ProcessWaitClose. Соответственно скорость становится такая-же, как при запуске каждый раз exiftool.
Может у вас есть какая-нибудь идея, как решить эту проблему? То-есть не выполнять:
Code:
StdinWrite($iPID, "-stay_open" & @LF & "False" & @LF)

(Конечно без помощи двух промежуточных файлов, это и сейчас у меня в сборке сделано).
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 582

Post (Separately) Posted: Mon May 25, 2026 10:13    Post subject: Reply with quote

Уф, ну вот и все. Тестирование разных вариантов ExifTool закончено. Все работает с любыми опциями. Вот сводная табличка скорости:
Сравнение скорости работы ExifTool:
Code:

1. ExifTool -stay_open $sArgFile $sOutFile - 10 c
2. ExifTool -stay_open -@ - - 20 c
3. ExifTool -stay_open $sArgFile Std - 30 c
4. ExifTool Std - 20 c

Таким образом самый быстрый вариант через временные файлы. Его и оставляю в сборке.
Back to top
View user's profile Send private message
Orion9



Joined: 01 Jan 2024
Posts: 1155

Post (Separately) Posted: Mon May 25, 2026 13:02    Post subject: Reply with quote

AkulaBig wrote:
Может у вас есть какая-нибудь идея, как решить эту проблему?

Не всегда на костылях можно решить проблему, а WinScriptAdv это и есть костыль.
AkulaBig wrote:
Таким образом самый быстрый вариант через временные файлы

Это хороший вариант, но не самый быстрый. Через stdin/stdout должно быть быстрее, но через WinScriptAdv это проверить не получится

 Hidden text

Если верить болвану, придется использовать AttachConsole (подключение к чужой консоли) или Named Pipes (именованные каналы), но эти методы тоже приведут к задержкам.

На Autorun можно было попробовать, но лень. Как-то не тянет переводить DllCall для CreateProcess

 Hidden text

А потом еще избавляться от однобайтового буфера

 Hidden text

В общем, нее... Ну его на фиг. Вот если бы Loopback сделал объект ComObject, как в Autohotkey, тогда можно было попробовать, всё свелось бы к нескольким строкам )
AkulaBig wrote:
Сравнение скорости работы ExifTool:

Не совсем понятное сравнение. При разрешении 1920х1080 на панели помещается около 50 файлов. Прирост скорости от опции -stay_open с использованием временных файлов составляет где-то 2000%. Т.е. если без этой опции exitool обрабатывает 50 файлов за 20 сек., то с этой опцией у неё уйдёт на это всего 1 сек.

 Hidden text

И файловые операции не самое слабое здесь звено, их точно бояться не стоит

 Hidden text

А вот от Sleep никуда не деться, он-то как раз и задерживает. 50 файлов по Sleep(10) это целые полсекунды. Взаимодейстие через stdin могло бы теоретически ускорить этот процесс.
Back to top
View user's profile Send private message
AkulaBig



Joined: 03 Dec 2008
Posts: 582

Post (Separately) Posted: Mon May 25, 2026 13:38    Post subject: Reply with quote

Orion9 wrote:
Не совсем понятное сравнение.

Потому что мы с вами не можем прийти к общему знаменателю. У вас теоретические выкладки. А у меня практическое применение для пользовательских колонок. Где файлы обрабатываются по одному, а не кучей. И файлы разные, а не подогнанные для тестирования. Вот возьмите конкретный файл и протестируйте, за сколько по нему выведется инфа:
https://www.dropbox.com/scl/fi/yhfooga76m8m880pb4ixw/mwt-2021-proceedings.pdf?rlkey=o1hfz5x65svzr9e2mh0q40c98&st=3vnpc0nb&dl=1
Orion9 wrote:
Взаимодейстие через stdin могло бы теоретически ускорить этот процесс.

А в действительности работает медленнее, чем с временными файлами. И без слип тоже не обойтись. Еще и маркер конца данных требуется ввести.
Orion9 wrote:
И файловые операции не самое слабое здесь звено, их точно бояться не стоит

А чего их бояться, если они работаю быстрей потока.
Orion9 wrote:
Через stdin/stdout должно быть быстрее, но через WinScriptAdv это проверить не получится

Почему не получится, если у меня получилось и результаты теста я привел?
Orion9 wrote:
#Requires AutoHotkey v2.0

ahk для меня как ру-борда для вас. Ни одного скрипта мне запустить не удалось. Даже просто ET запустить не удалось. А вот алгоритмы скриптов на ahk помогли понять некоторые тонкости.
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 ... 233, 234, 235, 236  Next
Page 234 of 236

 
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