Я пытаюсь выпустить простое приложение с PyInstaller
для работы на windows7-X64 без каких-либо зависимостей.Но у меня возникла проблема с Microsoft VCRedist
.На моем хост-компьютере я установил VCRedist 2015 и сгенерировал исполняемый файл нормально (не автономно).DLL-файлы VCRedist api-ms-win*.dll
были включены в сгенерированный каталог, как и ожидалось, и отлично работали на целевой машине без VCRedist.Затем я попытался сгенерировать автономное приложение, но на этот раз, когда я запустил его на целевой машине, я получил эту ошибку:
Точка входа в процедуру ucrtbase_putch не может быть расположена в библиотеке динамических ссылок api-ms-win-crt-conio-l1-1-0.dll.
Я проверил сгенерированную временную папку (_MEI *) и обнаружил, что правильные библиотеки DLL прямо там и каким-то образом исполняемый файл не может их использовать.Я создал копию папки (_MEI *) и положил рядом с ней автономный исполняемый файл, и он неожиданно сработал.Кажется, что некоторые из этих библиотек DLL существуют в каталоге Windows на целевой машине, и он пытается загрузить их вместо каталога (_MEI *).
Я также прочитал docs , но не сделал этого.не очень поможет с этим.