#774

Программа следит, чтобы её копии не работали одновременно и не растаскивали одни и те же файлы. Для этого при запуске создаётся служебный файл-замок во временной папке Windows.

Как это устроено

Замок — это маленький текстовый файл в папке %TEMP%, внутри которого записан номер процесса. Имя зависит от названия программы и заканчивается на _gui.lock, _download.lock или _convert.lock — по режиму работы:

  • окно программы — не запустится, если работает другое окно или любая из фоновых служб;
  • служба скачивания и служба конвертации — не запустятся, если открыто окно программы или уже работает такая же служба;
  • разовые режимы (один цикл, разовая конвертация) замок не создают;
  • очистка не запустится, пока работает окно программы или любая служба.

При нормальном завершении замок удаляется сам.

«Программа уже запущена», хотя окна нет

Сначала проверьте диспетчер задач — окно могло свернуться в область уведомлений или остаться висеть процессом. Если процесс есть, закройте его штатно.

Если после аварийного завершения (выключили питание, сняли задачу) файл-замок остался на диске, программа обычно справляется сама: она проверяет, жив ли записанный в нём процесс, и при необходимости перезаписывает замок. Проблема остаётся только в редком случае, когда Windows успела выдать тот же номер другому процессу — тогда файл нужно удалить вручную.

Как удалить замок вручную

  1. Убедитесь, что программа действительно не запущена.
  2. Откройте проводник и введите в адресной строке %TEMP%.
  3. Найдите файлы, оканчивающиеся на _gui.lock, _download.lock, _convert.lock, и удалите их.
  4. Запустите программу.

Что не нужно делать

  • Запускать две копии программы «для скорости» — заказы качаются и конвертируются параллельно внутри одной копии, для этого есть параметры конвертации.
  • Держать одновременно окно программы и фоновую службу на одном компьютере — они мешают друг другу и заблокируют запуск.