IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

comment récupérer la fermeture d'une appli lancée avec "subprocess"


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de ptissendier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2011
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2011
    Messages : 64
    Par défaut comment récupérer la fermeture d'une appli lancée avec "subprocess"
    Bonjour,
    Je débute en python.
    J'ai écrit un module qui crée un fichier pdf (avec PyQt5) et qui lance un xdg-open pour afficher le pdf
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
        fichier="/Bureau/QGL.pdf"
                  subprocess.call(['xdg-open',fichier])
    Comment faire pour que dès que l'utilisateur a visualisé le fichier et qu'il ferme l'application d'affichage, on puisse récupérer l'information dans python pour supprimer le fichier par exemple ?
    Mettre python en boucle ou en "wait" en attendant le fermeture de xdg-open
    Merci de votre aide.

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 695
    Par défaut
    Salut,
    xdg-open se contente de poster le fichier à l'application qui va bien et éventuellement de la lancer.
    Si l'utilisateur a ouvert gedit, xdg-open d'un fichier ajoutera un fichier a la session gedit déjà ouverte.
    Pourquoi ne pas lancer directement un pdf-reader? le subprocess.call "bloquera" tant qu'il n'est pas fermé.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre confirmé Avatar de ptissendier
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2011
    Messages
    64
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Juillet 2011
    Messages : 64
    Par défaut
    Merci W,

    J'ai donc fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    subprocess.call(['evince', fichier])
    subprocess.call(['rm', fichier])
    C'est exactement ce que je voulais comme résultat
    Je met le fil à Résolu.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Comment récupérer les valeurs d'une plage nommée avec le gestionnaire de nom
    Par Mamadou79 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/09/2010, 10h50
  2. Comment récupérer le nom d'une balise XML avec DOM ?
    Par Predatorus26 dans le forum XML/XSL et SOAP
    Réponses: 6
    Dernier message: 28/05/2010, 15h54
  3. Récupérer le hwnd d'une fenetre lancé avec shellexecute sans les API?
    Par morgan47 dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 06/09/2006, 19h48
  4. Comment récupérer l'ID d'une tâche programmée avec AT ?
    Par langela94 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 23/09/2005, 11h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo