begin process at 2012 05 28 20:05:45
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

API

 > 

definition de LPCITEMIDLIST


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

definition de LPCITEMIDLIST

vendredi 17 mars 2006 à 18:56:10 | definition de LPCITEMIDLIST

julienbornet

Bonjour, je cherche a afficher une boite de type SHGetPathFromIDList maisdont le repertoire n'est pas le root. D'apres ce que j'ai compris il faut rentre une vairable de type LPCITEMIDLIST dans pr.pidlRoot le probleme c'est que je ne sais pas comment la definir. SI quelqu'un a une reponse

d'avance merci

vendredi 17 mars 2006 à 19:33:04 | Re : definition de LPCITEMIDLIST

BruNews

Administrateur CodeS-SourceS
SHGetPathFromIDList n'affiche pas de boite de sélection.
Si c'est pour un sélecteur de dossier:
SELECTEUR DE DOSSIER (WIN32)
http://www.cppfrance.com/code.aspx?id=17138

ciao...
[ Lien ]
BruNews, MVP VC++
vendredi 17 mars 2006 à 22:13:04 | Re : definition de LPCITEMIDLIST

julienbornet

Ben voici mon code :

case IDC_BUTTON_DATAFILEFOLDER:

BROWSEINFO bi;

LPITEMIDLIST Item;

memset(&bi,0,sizeof(BROWSEINFO));

bi.hwndOwner=Dlg;

bi.pidlRoot=NULL;

bi.pszDisplayName=folder;

bi.lpszTitle="Choose the folder please";

bi.ulFlags=NULL;

bi.lParam=NULL;

Item=SHBrowseForFolder(&bi);

if(Item!=NULL)

{

SHGetPathFromIDList(Item,folder);

Chofol = 1;

}

SetDlgItemText(Dlg, IDC_TEXTBOX_DATAFILEFOLDER, folder);

return TRUE;

Je ne comprends pas ta remarque car qd je clic sur mon bouton Folder j'ai bien une boite de dialogu qui s'affiche. D'ailleur la voila:



Mainteant je cherche a avoir un repertoire par defaut. Merci

vendredi 17 mars 2006 à 22:22:23 | Re : definition de LPCITEMIDLIST

julienbornet

Et d'apres ce que j'ai pu voir dans la code que tu m'a fournit, le fichier n'est pas initialiser, c;est a dire car bi.pidlroot n'existe pas. Je penses donc qu'il est initiliaser a null ce qui revient a ce que je fait.
Voila

vendredi 17 mars 2006 à 22:49:09 | Re : definition de LPCITEMIDLIST

BruNews

Administrateur CodeS-SourceS
C'est SHBrowseForFolder() qui fournit la boite.
Le dossier cible s'initialise dans la callback, regarde ma source.

ciao...
[ Lien ]
BruNews, MVP VC++
vendredi 17 mars 2006 à 22:50:24 | Re : definition de LPCITEMIDLIST

BruNews

Administrateur CodeS-SourceS
Faut aussi libérer la mémoire de Item.

ciao...
[ Lien ]
BruNews, MVP VC++
lundi 20 mars 2006 à 15:29:30 | Re : definition de LPCITEMIDLIST

julienbornet

Bon je penses qu'encore une fois j'ai du mal m'exprimer, ou bien alors je n'est vraiment rien comrpis au fonctionnement de cette fonction. Voila J'ai bien compris que tu envyer la variable

szdir a la boite de dialogue et c'est ce que tu appel une fonction pour lui donner sa valeur. Moi ce que je cherche a faire ce n'est pas ca. En fait je veux que lorsque j'appel la boite de dialogu avec SHBrowseForFolder() le fichier selectionner ne soit pas le root. Par exemple, losrque tu appel cette API en inialisant le bi.pidlroot a NULL. tu te retrouve avec la boite de dialogu ci dessus. Mais comment faire pour que, lorsque tu appel cette API, la boite de dialogu est deja ouvert le dossier mes document par exemple. Comme ca tu n'as plus qu'a choisir un dossier dans mes documents!!
D'apres ce que j'ai lu il faut initialiser le bi.pidlroot qui est un type LPCITEMIDLIST, le probleme c'est que je ne sais pas comment faire. En esperant avoir etet clair

merci 

lundi 20 mars 2006 à 15:30:45 | Re : definition de LPCITEMIDLIST

julienbornet

Comment liberer le memoire de Item
 merci
lundi 20 mars 2006 à 15:34:41 | Re : definition de LPCITEMIDLIST

julienbornet

Faut il que je rajoute la ligne suivante juste avant le return true?

if(SUCCEEDED(SHGetMalloc(&pMalloc))) {pMalloc->Free(lpItemLst); pMalloc->Release();}

lundi 20 mars 2006 à 15:44:25 | Re : definition de LPCITEMIDLIST

BruNews

Administrateur CodeS-SourceS
Pourtant pas compliqué de faire un copier coller de mon code, non ?
C'est BrowseCallbackProc() qui initialise le dossier de la boite.

ciao...
[ Lien ]
BruNews, MVP VC++

1 2

Cette discussion est classée dans : type, definition, lpcitemidlist


Répondre à ce message

Sujets en rapport avec ce message

definition type de variables inconnues [ par blinix123 ] Bonjour,J'ai un morceaux de code que je suis en train d'exploiter, or il contient des variables que je ne connais pas, en effet je débute dans les MFC [STL] parcours de liste. [ par herlockg ] Bonjour,Je voudrais pouvoir parcourir une liste d'objet de type personne et récupérer un des objets de ma liste pour la mettre dans un objet (de même addstring probleme de type (LPCTSTR) [ par LaTatadu91 ] Bonjour,Voila je debute avec les dialogbox et je precise je suis sous visual 2005 C++.j'essaye de trouver comment ajouter des lignes dans ma listbox j pb de delete [ par NADA114 ] bonjour,j'utilise Microsoft Visual Studio .Net 2003 (C++)voici mon pb je dois faire une lib en réutilisant un code dont les structures sont définies d [DLL C] Passage de string C -> VB [ par Neo_Fr ] Bonjour,Je suis actuellement en train de faire une dll pour VB, j'ai creer une fonction qui renvoie une stringde type char* a un prog vb, mais lorsque Déclaration d'un type graph sur le C [ par abdelkaderg54 ] Salut les devlopeurs ....Alors je suis un debutant en programmation et je travail sur le c depuis peu de temps ,et je voulais bien savoir si un qulqu' Problème avec les structures [ par _michel ] J'ai un problème avec la compilation de mon programme. J'ai une vigtaine de fois la même erreur : "syntax error before '(' token".Voilà un exempl Access au type énum [ par azedsq ] Bonjour à tous,J'ai un problème avec le type énum. Je vous expliqueJ'ai une classe A avec un enum type1Fichier A.hClass A{public:   enum type1   {     definition de struture [ par xbabilone ] Salut a tous .Dans un fichier source en c j'ai  :struct usb_driver rtusb_driver = {    .owner =    THIS_MODULE,    .name="rtusb",    .probe=usb_rtusb_ programeation d'une type de puissance [ par awalle ] bon soir à tout le monde j'ai un problème de la fonction puissance en langage C. Mon problème est le faite que, je veux programmer en langage C


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,827 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales