Arborescence de fichiers

otofraise Messages postés 66 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 4 novembre 2010 - 25 août 2005 à 19:39
otofraise Messages postés 66 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 4 novembre 2010 - 26 août 2005 à 15:27
Bonjour,

J'aimerais savoir s'il existe un composant qui permet d'obtenir l'arborescence des repertoires/fichiers d'une machine, qui possede en racine le bureau de Windows.

Il s'agit de l'arborescence qui permet d'acceder rapidement a "Mes documents", au Poste de Travail ainsi qu'aux favoris reseaux.

Je bosse avec C++ Builder 6 et les composants existant permettent seulement de parcourir les repertoires du lecteur specifie et ne donnent pas acces au reseau.

Existe t il un composant qui liste les repertoires de cette facon :

ou faut il que je me fasse un composant qui s'en occupe.

Peut etre est il possible d'obtenir ce type d'arborescence via les API ?

Merci d'avance

Otofraise

9 réponses

vinc1008881 Messages postés 257 Date d'inscription dimanche 22 août 2004 Statut Membre Dernière intervention 29 septembre 2010 3
25 août 2005 à 19:53
ou via les API c'est possible : Avec GetOpenFileName ()




OPENFILENAME st;
char buffer[MAX_PATH];

// Pas de fichier par défaut
buf[0]='';
// On met tous les champs inutilisés à 0
memset(&st,0,sizeof(OPENFILENAME));
st.lStructSize=sizeof(OPENFILENAME);
// hDlg est le HWND de la boite de dialogue qui demande l'ouverture
// Ou NULL si la boite de dialogue n'a pas de fenêtre parent
st.hwndOwner=hDlg;
// La syntaxe est : Description1Filtre1Description2Filtre2
st.lpstrFilter="Executables - Fichiers de commandes*.exe;*.bat";
st.lpstrFile=buffer;
st.nMaxFile=MAX_PATH;
st.lpstrTitle="Recherche de l'exécutable";
st.Flags=NULL;
// Contient le répertoire initial ou NULL
st.lpstrInitialDir=NULL;
if(GetOpenFileName(&st))
// buffer contient notre chemin

//www.developpez.com






voilà, @+, vinc1008881
0
otofraise Messages postés 66 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 4 novembre 2010
25 août 2005 à 20:29
Merci pour ta reponse vinc1008881 !

Je ne savais afficher un dialog d'ouverture qu'a travers les composants de borland . Grace a toi je vais pouvoir me liberer un peu plus de la VCL .

Cependant (et oui je sais je suis horriblement exigeant ) je voudrais que l'arborescence ci-dessus s'affiche dans la fenetre de base, comme un panel ou un treeview. Cette arborescence permet de selectionner des repertoires, sans avoir a selectionner de fichier. D'ailleurs, on la retrouve dans l'exemple que tu m'as donne, dans la liste deroulante intitulee "Rechercher dans" situé en au du dialog d'ouverture.
0
vinc1008881 Messages postés 257 Date d'inscription dimanche 22 août 2004 Statut Membre Dernière intervention 29 septembre 2010 3
25 août 2005 à 21:17
La je ne sais vraiment pas comment faire ...
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
25 août 2005 à 21:22
SELECTEUR DE DOSSIER (WIN32)
http://www.cppfrance.com/code.aspx?id=17138

ciao...
BruNews, MVP VC++
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
otofraise Messages postés 66 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 4 novembre 2010
26 août 2005 à 09:17
Encore une fois, Merci BruNews !

C'est bien l'arborescence que je cherchais. Mais est il possible de l'obetenir, non pas dans une boite de dialogue, mais comme un element de la fenetre principale ?
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
26 août 2005 à 09:51
Je pense que oui, on peut quasi tout faire avec l'API Windows, mais je n'ai jamais eu à le faire.
Il faudra lui dévier sa defProc pour récup le ENTER ou sa notif de fermeture, soit par hook soit par sous classement, c'est à tester.

ciao...
BruNews, MVP VC++
0
otofraise Messages postés 66 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 4 novembre 2010
26 août 2005 à 14:33
hmm hmm je t'avoue franchement que je ne maitrise pas vraiment les API Windows et du coup je suis un peu pommer entre les defProc et les hook

Mais deja tu me donne on bonne base pour poursuivre mes recherches.

A ce sujet, connaitrais tu des ouvrages qui pourraient m'aider dans le developpement avec les API ?
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
26 août 2005 à 15:00
0
otofraise Messages postés 66 Date d'inscription vendredi 4 avril 2003 Statut Membre Dernière intervention 4 novembre 2010
26 août 2005 à 15:27
Encore un grand MERCI a toi BruNews ! Je m'en vais potasser tout ca.

Otofraise
0
Rejoignez-nous