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

Поэтому я иногда использую app_offline.htm, чтобы отключить приложение во время загрузки новой версии.

Тем не менее, в то время как я нахожусь в процессе загрузки больших DLL, я получаю желтый экран с ошибкой о том, что DLL не может быть загружен.

Похоже, это не соответствует моим ожиданиям относительно того, что делает app_offline.htm (полностью останавливает приложение), а также предоставляет пользователям ошибки вместо красивого app_offline.htm, который я выложил.

Я делаю что-то не так или это поведение задумано?

альтернативный текст

1 ответ

Решение

App_offline.htm завершает работу приложения, но не полностью останавливает компилятор.

Итак, на первой dll, которую вы загрузили, компилятор увидит другое и снова запустит компиляцию... поэтому, когда вы пытаетесь найти следующую dll, она, вероятно, используется компиляцией и не может быть удалена / заменена.

Существует также вероятность того, что даже если вы попросите закрыть приложение, все равно сделайте процесс и используйте эту DLL.

Что я делаю, я загружаю все файлы на сервер в другой каталог, открываю app_offline.htm, затем жду закрытия всего пула (у меня есть сообщение в конце приложения), а затем копирую с сервера все обновление файлов быстро. Разница в том, что с помощью ftp время загрузки больше, чем время, которое запускает компилятор для перекомпиляции глобальных функций из dll.

Чтобы увидеть, что даже с app_offline.htm система все еще делает компиляции, просто используйте Process Explorer и посмотрите компиляции.

Что такое компиляция? Я думаю, что компилировать dll, за исключением страниц.

Это сообщение от компилятора, который пытается скомпилировать программу, с первого dll, который вы загрузили, компилятор запускается и начинает новую компиляцию, теперь вы загружаете следующую, и пока вы пытаетесь сделать компиляцию, dll заблокирована по ftp.

Другие вопросы по тегам