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

Programmation multimédia/Jeux Python Discussion :

Recuperer le fichier lorsque 'ouvrir avec'


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 327
    Points : 257
    Points
    257
    Par défaut Recuperer le fichier lorsque 'ouvrir avec'
    Tout d'abord bonjour a tous,
    Il est est vrai que le titre de ce topic est un peu etonnant mais sa va devenir tres claire avec cette petite explication. Voila j'ai programmé un logiciel pour lire la musique, mais ce que j'aimerai savoir c'est comment par exemple recuperer le chemin ou le fichier que je lance lorsque je fais sous windows 'ouvrir avec...' -> mon programme.

    Voila j'espere que vous pourrez m'aider et vous invite a me poser des questions si cela n'est pas claire.

    Merci d'avance et bonne continuation.

  2. #2
    Membre averti Avatar de alexdevl
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 265
    Points : 344
    Points
    344
    Par défaut
    Bonjour,
    Si tu veux récupérer le répertoire en cours et le nom du programme appelé voila plusieurs pistes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    #!/usr/bin/env python
    #coding=utf-8
    import os,sys,os.path
     
    print os.getcwd()
    print sys.argv
    print sys.argv[0]
    print os.path.dirname(sys.argv[0])
    print os.path.basename(sys.argv[0])
    print os.path.split(sys.argv[0]))
    Ce qui affiche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    C:\test_dir
    ['C:\\test_dir\\test.py']
    C:\test_dir\test.py
    C:\test_dir
    test.py
    ('C:\\test_dir', 'test.py')
    Alex

  3. #3
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2004
    Messages
    723
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 723
    Points : 923
    Points
    923
    Par défaut
    Si mes souvenirs sont bons, le chemin du fichier à ouvrir est passé en argument de ligne de commande, tu devrais pouvoir le récupérer dans sys.argv[1]

  4. #4
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 327
    Points : 257
    Points
    257
    Par défaut
    Merci a vous deux, en effet c'etait bien avec sys.argv et c'etait le 1 ^^ sys.argv[1].

    Arigato

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 327
    Points : 257
    Points
    257
    Par défaut
    Eu désolé de recommencer ^^ mais il y a un petit "hic" cette fonction de crécuperer l'adresse du fichier ne marche que quand ma musique ce situe dans le meme dossier que mon logiciel, des que le dossier est défférent, il ne se lance pas :S

  6. #6
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2004
    Messages
    723
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 723
    Points : 923
    Points
    923
    Par défaut
    Fais la même chose avec un script bidon qui affiche sys.argv, juste pour voir s'il n'y aurait pas un problème à ce niveau-là, et au cas où, quand tu lances ça te sort une erreur ?

  7. #7
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2008
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2008
    Messages : 327
    Points : 257
    Points
    257
    Par défaut
    Désolé c'etait une erreur bidon, bidon car le probleme ne vennait pas du sys.argv, il faut seulement prendre en compte que lorsque que j'ouvrai ma musique directement depuis un autre repertoire, je dirai que c'est comme si l'ordinataire exécutait mon logiciel dans mon repertoir ou j'ai exécuté la musique et non la ou il se trouve, or mon logiciel ouvrait des fichiers qui se suitait dans mon dossier source du programme, donc quand je lancait une musique dans le meme repertoire pas d'erreur car les fichiers y était egalement, j'ai donc du indiqué lorsque j'execute or du repertoire du programme, de récuperer l'adresse du script (cette fois par sys.argv[0] et de lui dire d'y inclure mes fichiers a ouvrir (de sauvegarde)).

    Voila, bon c'est pas super claire ^^ mais pour moi sa marche, si quelqu'un a le meme probleme, hésitez pas a me relancer je vous aiderai comme l'on fait les autres que je remercie beaucoup

    A bientot...

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

Discussions similaires

  1. problème de recuperation de fichier avec find
    Par david_12 dans le forum Shell et commandes GNU
    Réponses: 6
    Dernier message: 28/03/2007, 14h37
  2. Réponses: 1
    Dernier message: 12/03/2007, 21h36
  3. Option des fichiers "ouvrir avec" en C++
    Par al1EnC dans le forum Windows
    Réponses: 2
    Dernier message: 28/02/2007, 11h03
  4. ouvrir un fichier en exhadecimal avec mfc
    Par nasrij dans le forum MFC
    Réponses: 2
    Dernier message: 05/10/2005, 22h01
  5. Ouvrir mon fichier d'aide avec F1
    Par stigma dans le forum Access
    Réponses: 2
    Dernier message: 20/09/2005, 08h00

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