install4j 7.0.11: при запуске установленное приложение выдает ошибку DLL - PullRequest
1 голос
/ 18 апреля 2019

Я упаковываю свое приложение с install4j 7.0.11 (в комплекте Java 9 и установлена ​​на Win7 64-bit). Почему-то при запуске установленного приложения я получаю следующую системную ошибку:

"Программа не может запуститься, потому что api-ms-win-core-timezone-l1-1-0.dll отсутствует на вашем компьютере".

Когда сообщение об ошибке отклонено, приложение все еще загружается. Первоначальный запуск из установщика работает нормально, но все последующие запуски из меню «Пуск» приводят к ошибке.

Как ни странно, пробная версия создала установщик без этой проблемы. Не уверен, что могло измениться.

Любые предложения будут очень признательны.

Саша

РЕДАКТИРОВАТЬ: У другой машины Win7 не было этой проблемы, но это все еще проблема, потому что нет никакого способа сказать, какой пользователь получит эту ошибку. Кроме того, поскольку последняя основная версия не создавала этой проблемы, было бы полезно узнать, есть ли исправление.

ДРУГОЕ РЕДАКТИРОВАНИЕ: Эта ссылка предполагает, что ошибка может быть вызвана неудовлетворительной зависимостью в установщике (распространяемый C ++). Некоторые целевые компьютеры могут уже иметь его, поэтому они не жалуются, а другие нет. Это всего лишь теория, поэтому я надеюсь услышать от разработчиков.

ЗАКЛЮЧИТЕЛЬНОЕ РЕДАКТИРОВАНИЕ: Я сравнил установленные распространяемые файлы VC ++ в двух системах и установил отсутствующий распространяемый Visual C ++ 2013 на машине с ошибками. Конечно же, это решило проблему.

Это всего лишь диагноз, и теперь он становится вопросом для разработчиков install4j: как нам избежать этого в будущем? В гетерогенной производственной среде было бы сложно и немного стыдно переходить с компьютера на компьютер и устанавливать недостающие предварительные условия. Тем более, что в предыдущих версиях этого не было необходимости.

...