Bonjour à tous,
Je suis en train de travailler sr la V2.0.0 de mon logiciel Open Source PYXMAKER.
Je suis confronté à un petit soucis pour lequel je n'ai pas vraiment trouvé de solution et pour lequel je sollicite votre aide.
Ce logiciel permet d'automatiser et simplifier la generation de standalone windows et de setup d'install, via IHM, à partir de code source python via un interfacage avec cx_freeze et inno setup.
Tout se passe de manière graphique, plus de script à créer. Lors de la validation (bouton du dernier ecran, puis bouton de la fenetre pop up qui suit), l'IHM se fige.
Lors de cette validation, j'appelle une fonction qui fait d'abord appel à cx_freeze, puis à inno setup. Pour ces appels, j'utilise subprocess.popen. Pour etre sur que ces taches s'exécute de manière procedurale, j'utilise egalement un subprocess.wait.
Le probleme est que cela freeze mon IHM, normal me direz vous, on attend la fin de l'execution des commande avant de rendre la main à l'IHM.
La solution est d'appeler cette fonction dans un thread séparé de mon thread normal, puis de capturer la fin de ce thread parallele afin d'avertir l'utilisateur.
Jusqu'ici je n'ai pas reussi (utiliser de threading.thread), d'ou ce post.
Les sources sont en PJ, si certaines personnes veulent regarder de plus près. J'ai également joint un autre de mes logiciels pour avoir un exemple de sources compatibles (un certains formalisme est obligatoire pour que pyxmaker fonctionne).
Merci beaucoup d'avance.
EDIT: l'appel se fait dans ihm_pyxmaker.py, aux alentour de la ligne 1690 (rtr = ...)
Partager