Como faço para deixar meu arquivo executável disponível para instalação em diversas versões do Windows?
Fiz uma aplicação com interface gráfica (PyQt5) em Python no Windows 11, converti para executável utilizando o pyintaller versão 4.3 e utilizo o InnoSetup para criar um arquivo msi para instalar essa aplicação no Windows.
Em micros que também tem Windows 11 funciona perfeitamente, mas em micros com Windows 10 não funciona.
O código Pyinstaller que estou usando:
C:\venv\virtual_pyqt5\Scripts\pyinstaller main.py --onedir --icon=icone.ico --noconsole
Como faço para que essa aplicação possa rodar em sistemas operacionais diferentes? Nesse caso é a versão do Windows (Windows 10 e Windows 11)
Obs.: Também tenho esse problema com a versão 32bits e 64bits, quando meu micro era Windows10 64bits, as aplicações não rodavam em windows 32bits
Já procurei em diversos lugares mas não consegui a solução para esse problema
Deixa eu ver se eu entendi: a aplicação é instalada corretamente no Windows 10, mas na hora de rodar o programa ele não funciona, certo? Isso pode ter várias causas, é preciso de uma análise mais aprofundada pra saber o que aconteceu. É exibido alguma mensagem de erro na tela? O que acontece exatamente quando você dá dois cliques, o programa chega a abrir e depois fecha, ou nem abre?
A primeira coisa que eu tentaria é executar o programa no terminal do Windows, para ver alguma mensagem de erro que possa aparecer lá. Você faz isso indo na pasta onde o programa foi instalado, segurando shift e clicando com o botão direito, e abrindo um terminal lá -- depois é só digitar start NomeDoPrograma.exe
.
Dito isto, a causa de erro mais comum é o seu programa precisar de alguma dll que você tem no Windows 11 mas não tem no Windows 10. Existe um programa chamado dependency walker que pode diagnosticar esse tipo de situação.
Outra coisa é que o PyQt5 pode ter problema por conta do UAC no Windows 10. Você está com o UAC desabilitado? Se sim, tente habilitar, se não, tente desabilitar, rs.