dans le tutoriel de PyGTK on nous apprends à faire un programme qui permet de lister tout les fichiers/dossiers (une fenetre windows basique quoi) (code : http://python.developpez.com/cours/pygtktutorial/php/pygtkfr/exemples/listefichiers.py ).
Avec ce programme nous affichons aussi les fichiers caché de windows (exemple : Application Data).
Le problème c'est que si on clique dessus pour l'ouvrir et bien notre programme plante car nous n'avons pas l'accés autorisé.
Je suis entrain de faire un programme qui utilise un TreeStore basique, qui liste tout les dossiers de mon pc, pour pouvoir le remplir, il est obligé de passer pas Application Data (et les autres dossiers qui vont bloquer aussi après).
J'aimerais savoir si il n'y a pas une solution pour pouvoir les passer.
Voici ma fonction qui permet de gerer ça :
def creer_liste(self, dossier=None):
self.treeview = gtk.TreeView()
if not dossier:
self.nomrep = os.path.expanduser('~')
else:
self.nomrep = os.path.abspath(dossier)
fichiers = [f for f in os.listdir(self.nomrep) if f[0] <> '.']
self.modeleliste = gtk.TreeStore(str)
for f in fichiers:
self.m_iter = self.modeleliste.append(None, [f])
self.nomfichier = os.path.join(self.nomrep, f)
statsfichier = os.stat(self.nomfichier)
nomrep = os.path.abspath(self.nomfichier)
if stat.S_ISDIR(statsfichier.st_mode):
fichier = [f for f in os.listdir(nomrep) if f[0] <> '.']
for f in fichier:
self.modeleliste.append(self.m_iter, [f])
Avec ça il me sort l'erreur :
fichier = [f for f in os.listdir(nomrep) if f[0] <> '.']
WindowsError: [Error 5] Access is denied: 'C:\\Users\\Typpex\\Application Data/*.*'
Enfaite, qu'il le soit ou non, ça vient de windows directement. en affichant les fichiers cachés je n'ai pas le droit non plus de rentrer dedans.
[PyGTK] + [Windows] = tout casser !
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.