Bonjour @ tous.
Un léger problème s'oppose à moi, depuis plusieurs heures maintenant.
Je cherche à lancer un fichier Batch File à partir de Python.
Jusque là, pas de problème, ces 2 codes fonctionnent :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 import os os.system('D:/restore_tmp.bat')Le fichier Batch File effectue l'enregistrement d'une base de données Postgres via cette commande :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 import subprocess subp = subprocess.Popen('D:/restore_tmp.bat') subp.communicate()
Si je lance directement mon Batch File en double cliquant sur le fichier, la restauration s’effectue correctement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part pg_dump -i -h localhost -p 5432 -U user -E UTF8 -F c -b -v -f "D:\test.backup" my_bdd
Si je le lance par l'intermédiaire du Python dans la commande, ça fonctionne également.
En revanche si je lance le code Python à partir du code PHP qui suit, le fichier se crée mais le fichier de sauvegarde nouvellement créé, ne se remplit pas, comme s'il était bloqué à une forme d'étape fantôme...
Ce code de PHP je l'ai déjà éprouvé sur d'autres lancement de fichiers Python et tout a toujours fonctionné, mais là, je n'arrive pas à comprendre ce qui peut bloquer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part system("cmd /c python D:/launch_batchfile.py");
Auriez-vous une piste de déblocage ?
Par avance merci.
Geo-x
Partager