demon416nds
@demon416nds
Разработчик на чем попало

Почему imagemagick может менять имя выходного файла?

Запускаю imagemagick из своей программы на lazarus, в первый раз после запуска отрабатывает нормально, во второй раз добавляет к указанному имени выходного файла тире и цифру чем ломает всю последовательность
Зы имена файлов уникальные, такчто это не из-за невозможности перезаписи
  • Вопрос задан
  • 69 просмотров
Решения вопроса 1
demon416nds
@demon416nds Автор вопроса
Разработчик на чем попало
Причина осталась неизвестной, но решением оказалось пересоздание tprocessutf8 после каждого цикла обработки
cmd:=tprocessutf8.Create(nil);
cmd.Executable:=mydir+'\magick.exe';
cmd.Options := cmd.Options + [poWaitOnExit] + [poNoConsole];
cmd.Parameters.Add('"'+imgname+'" -crop '+inttostr(cs)+'x'+inttostr(cs)+'+'+inttostr(cx)+'+'+inttostr(cy)+' "'+inttostr(t)+'temp1.jpg"');
cmd.Execute;      
/*тут еще несколько операций над картинкой*/
cmd.Free;

upd
похоже причина была в необнулении переменных но проверять уже не буду
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы