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 Discussion :

linsting de fichier


Sujet :

Windows

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Points : 1
    Points
    1
    Par défaut linsting de fichier
    Bonjour, j'utilise la fonction BrowseForFolder pour parcourir et selectionner seulement les dossier, jusque la pas de souci,
    par la suite j'ai eu besoin de lister/parcourir seulement les fichiers, j'ai essayer tous les paramettre de la msdn, BIF_BROWSEINCLUDEFILES est le paramettre qui autorise non seulement les fichier et les dossier, je voudrai empecher les dossier, quelqu'un t'il une solution siouplé ?

  2. #2
    Membre éprouvé Avatar de Jérémy Lefevre
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juin 2004
    Messages
    898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2004
    Messages : 898
    Points : 969
    Points
    969

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    non mais attend la ...
    Je demande comment on fait pour lister seulement des fichiers, j'ai bien preciser que c'etait une fonction comme BrowseForFolder, s'il te plait avant de repondre lit bien les post ...

    Je vais etre plus precis , pour ceux qui voudrons repondre sans connaitre SHBrowseForFolder, ce que je cherche exactement c'est a créer un bouton parcourir ou j'aurais acces a un arbre me permettant la selection des fichier mais qui grisera la case ok en cas ou je voudrais selectionner un dossier.

    Comme je viens de le dire cette fonction existe deja, c'est seulement un soucis au niveaux du parametre Ulflags,
    Il doit soit exister un parametre que je connais pas, et qui ne se trouve pas dans la msdn la ou j'ai chercher ... (msdn VA)
    ou sinon je pense que l'on doit pouvoir créer ce paramettre ...

    S'il vous plait pas de reponses irreflechis, ce n'est pas un probleme de manipulation de fichier !!!

    Edit: j'utilise deja BrowseForFolder pour lister des dossier, les paramettre de Ulflags sont :BIF_RETURNONLYFSDIRS | BIF_STATUSTEXT;

  4. #4
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 381
    Points : 41 578
    Points
    41 578
    Par défaut
    Je ne sais pas quelle API tu utilises, mais dans l'API du shell utilisable en C et C++, SHBrowseForFolder sert, comme son nom l'indique, à sélectionner un dossier.

    Si tu veux des fichiers seulement, la bonne fonction est GetOpenFileName().

  5. #5
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Merci pour ta reponse medinoc,
    j'avais entrevu cette solution mais c'est vrai que pour optimiser mon code je compter utiliser deux fois la meme fonction pour parcourir fichier et dossier
    exemple de mon code (qui malheuresement dans la deuxieme condition laisse la possibilité de selectioner des dossiers cad : BIF_BROWSEINCLUDEFILES)


    BOOL BrowseForFolder(const HWND pHandle, char **pzBuffer, int browsetype)
    {

    BROWSEINFO bi;
    ITEMIDLIST *pidl;
    char folder[MAX_PATH];
    BOOL bReturn = FALSE; // Renvoie FALSE en cas d'échec

    bi.hwndOwner = pHandle;
    bi.pidlRoot = 0;
    bi.pszDisplayName = folder;
    bi.lpszTitle = "Sélection d'un répertoire ...";
    if (browsetype == 0)
    bi.ulFlags = BIF_RETURNONLYFSDIRS | BIF_STATUSTEXT;

    else

    bi.ulFlags = BIF_BROWSEINCLUDEFILES;

    bi.lpfn = 0;
    bi.lParam = 0;

    // Affiche la fenêtre
    pidl = SHBrowseForFolder(&bi);

    // Si un répertoire à été sélectionner et qu'il n'y à pas ' d'erreur '
    if (SHGetPathFromIDList(pidl, folder) == TRUE)
    {

    // Alloue de la mémoire pour pzBuffer
    *pzBuffer = new char[MAX_PATH];

    // Copie le nom du répertoire sélectionner dans pzBuffer
    strcpy(*pzBuffer, folder);

    // Renvoie TRUE (succès)
    bReturn = TRUE;

    }
    return bReturn;
    }

    Sa me permettais donc d'eviter de devoir appeler une autre fonction ...

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    /*bah, la tu a de la chance si il taide encore un jour, un petit 'non c'est pas ca, je souhate manupuler les fichier, mais merci quand meme...
    c'est plus agreable et en lisant on ce dit pas quel tete de ..
    */

    J'ai préféré faire un post a part pasque cela n'a aucun rapport avec le topic,
    Je pense que quelqu'un qui se dit programmeur doit etre quelqu'un de reflechis,
    si tu veux vraiment aider quelqu'un, tu cherche, tu n'envois pas un message pour envoyer un message (pour certains ce sera pour aquerir un meilleur status sur le forum), Il ya tellement de source mal programmer voir non fonctionnel sur le net, parce que les gens copi colle des bout de code par ci par la sans meme en avoir appris les subtilité, et le pire c'est qu'ils se disent programmeurs ..

    c'est comme le fais de relire ton post, je te demande pas qu'il n'y est aucunes fautes d'orthographes mais au moins qu'ils soit lisible, j'ai du mettre trois reprise a lire ton post, cela prouve un manque d'attention, et nous montre un manque de serieux.

    Après je pense que je prèfere me passer de son aide plutot qu'il m'envoi relire 3 fois une page qui n'a aucun rapport.

    Cordialement

    Ps: La prochaine fois ne vien pas poluer le topic s'il te plait, et envoi un mp, c'est fais pour sa, a moins que tu est besoin de t'exprimer devant tous le monde pour etre vu ...

    LOOK AN AIGLE (shooooooooooooot)

  7. #7
    Membre éprouvé
    Avatar de SnakemaN
    Profil pro
    Bidouille-tout Android
    Inscrit en
    Juillet 2006
    Messages
    871
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Bidouille-tout Android

    Informations forums :
    Inscription : Juillet 2006
    Messages : 871
    Points : 1 118
    Points
    1 118
    Par défaut
    J'espere ne pas m'éloigner du sujet en répond, bon je tente une ébauche de réponse, je prend le risque de me faire lapider....


    Avez-vous bien regardé :BrowseForFolder Method

    plus précisement :BROWSEINFO Structure

    ou vous pouvez lire :

    Citation Envoyé par msdn
    BIF_RETURNONLYFSDIRS
    Only return file system directories. If the user selects folders that are not part of the file system, the OK button is grayed.
    ou il doit etre possible d'en tirer quelque chose pour votre application.

    ps: Je vous suggere néanmoins d'arreter le café ou/et autre produit illicite sur votre lieu de travail ca vous rend tres irritant et impoli....

    Cordialement

  8. #8
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 381
    Points : 41 578
    Points
    41 578
    Par défaut
    Sauf que c'est l'inverse, qu'il demande...

  9. #9
    Membre éprouvé
    Avatar de SnakemaN
    Profil pro
    Bidouille-tout Android
    Inscrit en
    Juillet 2006
    Messages
    871
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Bidouille-tout Android

    Informations forums :
    Inscription : Juillet 2006
    Messages : 871
    Points : 1 118
    Points
    1 118
    Par défaut
    Citation Envoyé par melusinechan
    .... ce que je cherche exactement c'est a créer un bouton parcourir ou j'aurais acces a un arbre me permettant la selection des fichier mais qui grisera la case ok en cas ou je voudrais selectionner un dossier.....
    T'es sur Médinoc ?

    [edit] en effet, mon annotation ne permet que de spécifier qu'un certain type de repertoire et de griser, la case OK en cas de selection du mauvais repertoire.
    Et je suppose qu'il/elle ne veut utiliser que des méthodes issues de ( Windows Shell ) ?
    Comment je vais morfler moua ....

  10. #10
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 381
    Points : 41 578
    Points
    41 578
    Par défaut
    Oui. Il veut empêcher le choix d'un dossier, n'autorisant que les fichiers.
    Évidemment, BrowseForFolder n'est pas fait pour ça...

Discussions similaires

  1. fichier mappé en mémoire
    Par WinBernardo dans le forum Delphi
    Réponses: 7
    Dernier message: 01/12/2006, 09h38
  2. Réponses: 5
    Dernier message: 20/08/2002, 18h01
  3. Lire 1 bit d'un fichier en C
    Par Anonymous dans le forum C
    Réponses: 3
    Dernier message: 23/05/2002, 18h31
  4. Comparer des fichiers de données : Quel Langage ?
    Par Anonymous dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 24/04/2002, 22h37
  5. Fichier PDOXUSRS.NET
    Par yannick dans le forum Paradox
    Réponses: 5
    Dernier message: 05/04/2002, 09h45

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