Comment obtenir le chemin d'accès à un dossier selon un CLSID ???
EX :
"::{450d8fba-ad25-11d0-98a8-0800361b1103}"
Correspond au dossier "Mes documents", dans TOUT les windows, et TOUTES les langues... Vous voyez l'interêt ????
Merci !
Comment obtenir le chemin d'accès à un dossier selon un CLSID ???
EX :
"::{450d8fba-ad25-11d0-98a8-0800361b1103}"
Correspond au dossier "Mes documents", dans TOUT les windows, et TOUTES les langues... Vous voyez l'interêt ????
Merci !
c'est une clé que tu retrouvera en effectuant par programmation une recherche dans le registre à la racine
tu travailles avec quelle version du Framework .NetHKEY CLASSES\ROOT\CLSID\:
Evidement, j'oublie toujours quelque chose... C'est tout moi, ça...
Alors, version du framework : 1.1
IDE : VS2003 prof.
Alors, si je suit bien, rechercher dans le registre une clé quelquonque avec la valeur du CLSID en question ???
Et je devrais normalement trouver là le "path" correspondant au CLSID ???
J'y cours, et je reviens ...
Merci !!
Champ Registry.ClassesRoot
Je crois que tu n'obtiendras que le nom du repertoire et pas tout le chemin
Il te faudra peut être fouiller dans d'autres sous-clés ou alors jongler avec l'Espace de noms System.IO pour retrouver le chemin complet
pour avoir le chemin du repertoire "Mes documents" tu as :
par contre je sais pas si ca marche pour tous les windows et toutesles langues ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part Environment.GetFolderPath(Environment.SpecialFolder.Personal);
Envoyé par sam_XIII
Euh t'es sûr d'avoir lu sa question
Envoyé par cacalex
Désolé neguib mais je suis d'accord avec sam_XIII sur l'utilisation de la classe Environment.
Il est évident que Environment utilise la base de registre, mais de manière transparente.
Le fw est conçu pour fourni une couche d'abstraction portable. Il n'est pas évident que les clés de base de registre (ou même la base) subsitent à l'identique dans les prochaines versions de Windows.
Le fw fonctionnera toujours![]()
Dis moi de quoi tu as besoin, je te dirai comment t'en passer 8)
A mon humble avis, ce que voulait dire neguib c'est que la question de base c'était au sujet des CLSID et qu'il ne fallait donc pas s'en éloigner... A mon humble avis
Maintenant sans aucune hésitation, pour obtenir le chemin vers Mes Documents j'utiliserais Environment.GetFolderPath mais ce n'est pas la question de base
Maintenant, quand on se propose aussi gentimentDis moi de quoi tu as besoin, je te dirai comment t'en passer![]()
Merci DeusXL de m'avoir lu correctement![]()
Je ne me suis pas fixé effectivement sur le cas d'exemple cité car il n'était là que pour illustrer la question qui me semble prioritaire.
Si maintenant cacalex souhaite nous en dire beaucoup plus sur la conception de son appli, alors il sera temps de proposer quelques conseils ou réajustements judicieux comme ceux que tu as formulé NicolasG![]()
Tiens tiens...
On dirais que j'ai attiré la curiosité avec cette question
À vrai dire, j'avais besoin aussi de récupérer l'îcone du dossier "Mes documents", alors j'ai tout naturellement essayé, avec succès, de la récupérer avec le CLSID (par SHGetFileInfo)...
Je vais voir si je récupère l'icône avec "Environment.GetFolderPath(Environment.SpecialFolder.Personal)", et si ça marche, je vire tout ce qui est CLSID...
Je n'avais pas de raison spécifique pour utiliser le CLSID, c'est simplement le première avenue que j'ai essayé...
Merci pour votre interêt, et pour prendre le temps de répondre... On ne soupçonne jamais à quel point on aide les autres dans ce forum (^^)
Je ne peux pas récupérer l'icône du dossier avec Environment.GetFolderPath(Environment.SpecialFolder.Personal), alors je devrai probablement continuer d'obtenir l'icône avec le CLSID, et ensuite le "path", avec Environment.GetFolderPath(Environment.SpecialFolder.Personal)... L'important, c'est que ça marche... Mais vous avez soulever une interogation; Est-ce que le CLSID va toujours rester la même valeur ???
Enfin, en attendant, ça fonctionne... Resteras à voir si ça marche toujours avec Vista...
Merci à tous !
Voici un code source de Morpheus "GetIcone" qui utilise l'API ExtractAssociatedIcon "Shell32"
Ok...
Cette version récupère bien l'icône à partir d'un CLSID...
Merci neguib![]()
Partager