Я хочу архивировать файл в потоке с помощью компонента TZipMaster. Проблема, когда я запускаю программу от IDE, я получаю ошибку (от окон)
"программа больше не отвечает.-> Поиск онлайн решения-> Близкая программа"
(или что-то как этот я не знаю точное сообщение на английском языке.."
Однако zip-файлы создаются успешно. Последний вывод отладчика от Delphi 2009:
разгрузите модуль: DelZIp179.dll
Когда я выполняю .exe непосредственно, это, кажется, хорошо работает, и я не получаю эту ошибку. Однако я не уверен, могу ли я просто проигнорировать эту ошибку, или лучше зафиксировать его?
Спасибо за Вас ответы!
Вы получаете эту ошибку, потому что ваше приложение выполняет тяжелую обработку (архивирование) в основном потоке и не обрабатывает сообщения Windows.
Лучше исправить это - нужно либо обрабатывать сообщения Windows во время архивирования (если TZipMaster поддерживает это), либо переносить архивирование в фоновый поток.
Подробнее: Я проверил исходный код TZipMaster и обнаружил событие OnTick, которое периодически вызывается.
Напишите обработчик события OnTick и вызовите Application.ProcessMessages изнутри. Это должно устранить вашу проблему.