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 

Single Post  Topic: Autorun 
Author Message
Orion9



PostPosted: Tue May 26, 2026 14:04    Post subject: Reply with quote

AkulaBig
Не ради спора или попыток что-то доказать, а исключительно из любви к Autorun )

 Hidden text

Пришлось целый вечер на это убить, но чего только не сделаешь ради любви Smile
AkulaBig wrote:
Вот возьмите конкретный файл и протестируйте, за сколько по нему выведется инфа:

Этот файл шифрованный и обрабатывается медленно. Для таких файлов должен быть предусмотрен таймаут. В выхлопе об этом так и сказано
Code:
[ExifTool] ExifToolVersion: 13.52
[ExifTool] Warning: [minor] Decryption is very slow for encryption V5.6 or higher
[File] FileName: mwt-2021-proceedings.pdf
[File] Directory: D:/Temp
[File] FileSize: 70 MB

AkulaBig wrote:
А в действительности работает медленнее, чем с временными файлами.

Работать может медленнее, если буфер для чтения маленький. Я специально сделал на однобайтовом буфере сначала, чтобы посмотреть скорость. Работает в 3-4 раза медленнее, чем с файлами, но раз в 10 быстрее, чем если просто exiftool.exe вызывать. Увеличив буфер до 2Кб удалось по скорости обойти режим работы с файлами на 150-200% в зависимости числа и типов файлов.
AkulaBig wrote:
Почему не получится, если у меня получилось и результаты теста я привел?

Я не знаю, что у вас именно получилось. WinScriptAdv это костыль, который создает временный скрипт для каждого файла и с нуля его запускает. Это очень ограничивает действия. В частности не получится повторить код на Autohotkey, который сразу предлагал болван, и который я повторил на Autorun.
AkulaBig wrote:
Ни одного скрипта мне запустить не удалось.

Первый скрипт с ComObject рабочий, я только заменил теги на "-G" и указал свои пути
Code:
; Формируем пакет аргументов для текущего файла.
; Каждая опция и значение должны быть на новой строке.
;cmd := "-Artist=Автор " index "`n"
;cmd .= "-Copyright=2026 Студия`n"
cmd := "-G`n"       
cmd .= targetFile "`n" ; Путь к файлу передается в конце пакета команд
cmd .= "-execute"      ; ОБЯЗАТЕЛЬНО: сообщает ExifTool, что этот пакет команд пора выполнить

Второй скрипт тоже рабочий, но только для X64. Чтобы он заработал в Autohotkey32 пришлось подкорректировать буфер
Code:
; Настройка атрибутов безопасности для наследования дескрипторов
SA := Buffer(12, 0)
NumPut("UInt", 12, SA, 0) ; nLength
NumPut("Ptr", 0, SA, 4)   ; lpSecurityDescriptor
NumPut("Int", 1, SA, 8)  ; bInheritHandle

И еще я забыл приложить второе сообщение из чата с примером вызова. Не думал все же, что займусь переводом на Autorun

 Hidden text

Файлы .ahk обязательно должны сохраняться как UTF-8, иначе они могут не работать.
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group