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

Windows Forms Discussion :

Parcours des répertoires dans TreeView


Sujet :

Windows Forms

  1. #1
    Membre émérite
    Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    2 514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2008
    Messages : 2 514
    Points : 2 924
    Points
    2 924
    Par défaut Parcours des répertoires dans TreeView
    Bonjour tout le monde,
    Il me semble que j'ai dû pomper chez CodeProject.com un explorateur basé sur TreeView pour les répertoires et ListView pour les fichiers.
    Je viens de chercher, d'autres projets sont apparus sur ce thème, je ne suis pas certain que ça va apporter grand-chose d'être sûrs de partir du même.
    En fignolant quelques points j'ai réussi à faire fonctionner ce truc, c'est dans les menus déroulants qu'il y a encore à regarder.
    Il y a une commande pour chercher un répertoire par son chemin en chaîne de caractères, ça j'y suis, en tout cas pour mes répertoires de travail habituels ça fonctionne très bien.
    Il y en a une autre pour chercher par une boîte de dialogue système FolderBrowserDialog.
    Quand je prends les mêmes répertoires exemples que ceux que j'ai utilisés pour la recherche par chaîne de caractères, ça baigne. Normal, on appelle la recherche par chaîne de caractères.
    Si maintenant je cherche le répertoire de téléchargements, ça coince. C'est quand je cherche à parcourir les sous-nœuds de "C:\Users" que je ne trouve rien, alors qu'en ligne de commande, sans élévation de privilèges, par "DIR C:\Users", j'ai bien la liste des utilisateurs, en commençant par Public. D'autres nœuds avant Public n'apparaissent pas, mais ça ce n'est pas un problème.
    Si je lance Visual Studio avec élévation de privilèges, ça ne marche pas du premier coup, mais au deuxième essai si (alors que je ne vois pas trop ce que j'ai changé entre les deux).
    Pour arranger le tout, si je fais un try...catch sur cette partie, sans élévation de privilèges on va bien dans le catch mais après avoir affiché une erreur de variable non implémentée, et l'exception est nulle.
    Si try...catch donne ça, il va falloir trouver une "fine astuce". Quelqu'un a ça ?
    Alors oui je peux dire que si le nœud parent est "C:\Users" j'applique des règles différentes, par exemple je boude l'utilisateur, une image du programme suçant son pouce serait pas mal. Pour autant, je me demande si c'est l'idéal ...
    Et si c'est la voie je me demande si il y a d'autres chemins à traitement spécial.
    Ah oui je pourrais me poser la question des chemins UNC, mais là on est partis dans autre chose.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 354
    Points : 1 972
    Points
    1 972
    Par défaut
    il y a une question ?
    le Dir existe (Microsoft.VisualBasic.FileSystem.Dir) https://learn.microsoft.com/fr-fr/do...r?view=net-8.0
    mais il y aussi la classe System.IO.Directory https://learn.microsoft.com/en-us/do...y?view=net-8.0

    sans morceau de code, on ne peux pas deviner ce que tu fais dans ton try...catch

    Et dans C:\users, personne ne peut voir le contenu des profils des utilisateurs à part avec un compte administrateur après confirmation d'élévation des droits

  3. #3
    Membre émérite
    Profil pro
    Développeur Web
    Inscrit en
    Février 2008
    Messages
    2 514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2008
    Messages : 2 514
    Points : 2 924
    Points
    2 924
    Par défaut
    Oh mince je n'avais pas vu la réponse, pourtant tu as fait vite.

    Je me suis dit que le problème ne devait pas être neuf, que tenter d'ouvrir C:\Users\User\Downloads donne une erreur selon l'interface utilisée.

    Effectivement j'ai pu sous-évaluer la diversité possible des façons de s'y prendre.
    Bientôt je te résume ça, par curiosité.
    En attendant j'ai vu que on s'y prend différemment, plutôt que désigner un répertoire par son chemin d'accès on le désigne par un identifiant.
    Si on veut faire tourner ça sur plusieurs machines il faut se méfier des surprises, mais sur la mienne ça a l'air de bien fonctionner.

    Et alors un vrai bonheur, en deux réglages j'ai pu afficher ça avec la police de caractères que je voulais, avec un formulaire aux bonnes dimensions.

    Je n'ai pas encore expérimenté la récupération du répertoire sélectionné, une fois que ça sera fait il n'y aura plus qu'à s'occuper d'intégrer ça dans l'application appelante.

    Si ça s'était appelé ShBrowseForFolder on peut imaginer des intégrations où il n'y aurait rien à faire, mais c'est quand même prometteur.

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 1 354
    Points : 1 972
    Points
    1 972
    Par défaut
    On ne sait toujours pas le problème que tu rencontres ......

Discussions similaires

  1. [VBA] Parcours des CSV dans répertoires
    Par ash_rmy dans le forum Général VBA
    Réponses: 1
    Dernier message: 24/02/2011, 21h22
  2. [OL-2003] Parcours des formulaires dans la boite de reception
    Par Psycadi dans le forum VBA Outlook
    Réponses: 0
    Dernier message: 18/11/2009, 19h35
  3. parcours des classeurs dans un répertoire
    Par nsqualli dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/11/2008, 07h15
  4. Parcour des getElementById dans un formulaire imbriqué ?
    Par DrySs dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 09/10/2007, 20h03
  5. Problème de parcours des champs dans l'ordre.
    Par jyms2006 dans le forum Access
    Réponses: 1
    Dernier message: 19/04/2006, 12h08

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