Salut à tous,
je voudrais récupérer l'icone d'un lecteur de cd-rom ( je connais sa
lettre ). J'ai bien essayé la fonction ExtractIcon sans grand succès.
je voudrais récupérer l'icone d'un lecteur de cd-rom ( je connais sa lettre ). J'ai bien essayé la fonction ExtractIcon sans grand succès.
Quelqu'un peut il m'aider ?
regarde dans l'autorun.inf.
-- "MOI JE VEUX JOUER DE L'HELICON (PON PON PON PON)"
Neilos
Thierry wrote in news:XnF93E49D530316Bpouletetcetc@ 213.228.0.138:
Bonjour,
Neilos a écrit :
je voudrais récupérer l'icone d'un lecteur de cd-rom ( je connais sa lettre ). J'ai bien essayé la fonction ExtractIcon sans grand succès.
Quelqu'un peut il m'aider ?
regarde dans l'autorun.inf.
Merci ca je le sais.... Mais je voudrais récupérer l'icone du lecteur même s'il n'y a pas de fichier autorun ou tout simplement pas de disque dans le lecteur.... Et ca je ne sais pas comment faire !
-- Neilos
Thierry <yarglah@com.invalid> wrote in news:XnF93E49D530316Bpouletetcetc@
213.228.0.138:
Bonjour,
Neilos a écrit :
je voudrais récupérer l'icone d'un lecteur de cd-rom ( je
connais sa
lettre ). J'ai bien essayé la fonction ExtractIcon sans grand succès.
Quelqu'un peut il m'aider ?
regarde dans l'autorun.inf.
Merci ca je le sais.... Mais je voudrais récupérer l'icone du lecteur même
s'il n'y a pas de fichier autorun ou tout simplement pas de disque dans le
lecteur.... Et ca je ne sais pas comment faire !
Thierry wrote in news:XnF93E49D530316Bpouletetcetc@ 213.228.0.138:
Bonjour,
Neilos a écrit :
je voudrais récupérer l'icone d'un lecteur de cd-rom ( je connais sa lettre ). J'ai bien essayé la fonction ExtractIcon sans grand succès.
Quelqu'un peut il m'aider ?
regarde dans l'autorun.inf.
Merci ca je le sais.... Mais je voudrais récupérer l'icone du lecteur même s'il n'y a pas de fichier autorun ou tout simplement pas de disque dans le lecteur.... Et ca je ne sais pas comment faire !
-- Neilos
Neilos
"Arnaud Debaene" wrote in news:3f4cebd2$0$16147$:
Neilos wrote:
Salut à tous, je voudrais récupérer l'icone d'un lecteur de cd-rom ( je connais sa lettre ). J'ai bien essayé la fonction ExtractIcon sans grand succès.
Quelqu'un peut il m'aider ?
IShellFolder::GetUIObjectOf pour récupérer une interface IExtractIcon puis IExtractIcon::GetLocation et IExtractIcon::Extract (au passage, la conception de ette interface est foireuse au possible, comme beaucoup de choses dans le shell malheureusement :-( Je me semande qui, quand et dans quel contexte a pondu cette horreur...)
Arnaud MVP - VC
Ok merci beaucoup et effectivement c'est une vrai horreur.... D'ailleur tant que j'y suis autre petite question pour récupérer l'icone associé à une extension... ExtractIcon ca marche ou pas ???? Parce qu'il demande en paramètre un nom de fichier et moi je travaille pas avec des fichiers.... ( enfin juste avec des noms de fichiers qui n'existent pas ;) ))
Merci d'avance
-- Neilos
"Arnaud Debaene" <adebaene@club-internet.fr> wrote in
news:3f4cebd2$0$16147$626a54ce@news.free.fr:
Neilos wrote:
Salut à tous,
je voudrais récupérer l'icone d'un lecteur de cd-rom ( je connais
sa lettre ). J'ai bien essayé la fonction ExtractIcon sans grand
succès.
Quelqu'un peut il m'aider ?
IShellFolder::GetUIObjectOf pour récupérer une interface IExtractIcon
puis IExtractIcon::GetLocation et IExtractIcon::Extract (au passage,
la conception de ette interface est foireuse au possible, comme
beaucoup de choses dans le shell malheureusement :-( Je me semande
qui, quand et dans quel contexte a pondu cette horreur...)
Arnaud
MVP - VC
Ok merci beaucoup et effectivement c'est une vrai horreur....
D'ailleur tant que j'y suis autre petite question pour récupérer l'icone
associé à une extension... ExtractIcon ca marche ou pas ???? Parce qu'il
demande en paramètre un nom de fichier et moi je travaille pas avec des
fichiers.... ( enfin juste avec des noms de fichiers qui n'existent pas
;) ))
Salut à tous, je voudrais récupérer l'icone d'un lecteur de cd-rom ( je connais sa lettre ). J'ai bien essayé la fonction ExtractIcon sans grand succès.
Quelqu'un peut il m'aider ?
IShellFolder::GetUIObjectOf pour récupérer une interface IExtractIcon puis IExtractIcon::GetLocation et IExtractIcon::Extract (au passage, la conception de ette interface est foireuse au possible, comme beaucoup de choses dans le shell malheureusement :-( Je me semande qui, quand et dans quel contexte a pondu cette horreur...)
Arnaud MVP - VC
Ok merci beaucoup et effectivement c'est une vrai horreur.... D'ailleur tant que j'y suis autre petite question pour récupérer l'icone associé à une extension... ExtractIcon ca marche ou pas ???? Parce qu'il demande en paramètre un nom de fichier et moi je travaille pas avec des fichiers.... ( enfin juste avec des noms de fichiers qui n'existent pas ;) ))
Merci d'avance
-- Neilos
Arnaud Debaene
Neilos wrote:
D'ailleur tant que j'y suis autre petite question pour récupérer l'icone associé à une extension... ExtractIcon ca marche ou pas ????
ExtractIcon permet d'extraire une icone qui se trouve en ressource dans un fichier (exe ou dll) passé en paramètre - c'est pas pour rien que le nom du paramètre est lpszExeFilename.
Pour récupérer l'icone associée à un fichier donné existant, c'est ExtractAssociatedIcon.
Pour déterminer l'icone associée à un type de fichier (une extension) sans avoir de fichier correspondant, soit tu va fouiller à la main dans le registre (et c'est assez moche vu le nombre de cas possibles), soit tu utilises ShGetFileInfo : Si tu lui passes le flag SHGFI_USEFILEATTRIBUTES, tu peux lui donner n'importe quel nom de fichier fictif, elle ne tient compte que de l'extension pour te retourner les infos correspondantes. Ca donne : SHFILEINFO sfi; memset(sfi, 0, sizeof(sfi)); ShGetFileInfo("je_n_existe_pas.bmp", FILE_ATTRIBUTE_NORMAL, &shfi, sizeof(shfi), SHGFI_ICON | SHGFI_USEFILEATTRIBUTES); HICON icon=sfi.hIcon; // c'est à toi de libérer icon avec DestroyIcon.
Tu peux varier les méthodes en utilisant SHGFI_ICONLOCATION à la place de SHGFI_ICON puis ExtractIcon, et tu as un paquet d'autres flags pour jouer avec le comportement de ShGetFileInfo - voir la doc.
Arnaud MVP - VC
Parce qu'il demande en paramètre un nom de fichier et moi je travaille pas avec des fichiers.... ( enfin juste avec des noms de fichiers qui n'existent pas ;) ))
Merci d'avance
Neilos wrote:
D'ailleur tant que j'y suis autre petite question pour récupérer
l'icone associé à une extension... ExtractIcon ca marche ou pas ????
ExtractIcon permet d'extraire une icone qui se trouve en ressource dans un
fichier (exe ou dll) passé en paramètre - c'est pas pour rien que le nom du
paramètre est lpszExeFilename.
Pour récupérer l'icone associée à un fichier donné existant, c'est
ExtractAssociatedIcon.
Pour déterminer l'icone associée à un type de fichier (une extension) sans
avoir de fichier correspondant, soit tu va fouiller à la main dans le
registre (et c'est assez moche vu le nombre de cas possibles), soit tu
utilises ShGetFileInfo : Si tu lui passes le flag SHGFI_USEFILEATTRIBUTES,
tu peux lui donner n'importe quel nom de fichier fictif, elle ne tient
compte que de l'extension pour te retourner les infos correspondantes. Ca
donne :
SHFILEINFO sfi;
memset(sfi, 0, sizeof(sfi));
ShGetFileInfo("je_n_existe_pas.bmp",
FILE_ATTRIBUTE_NORMAL,
&shfi, sizeof(shfi),
SHGFI_ICON | SHGFI_USEFILEATTRIBUTES);
HICON icon=sfi.hIcon;
// c'est à toi de libérer icon avec DestroyIcon.
Tu peux varier les méthodes en utilisant SHGFI_ICONLOCATION à la place de
SHGFI_ICON puis ExtractIcon, et tu as un paquet d'autres flags pour jouer
avec le comportement de ShGetFileInfo - voir la doc.
Arnaud
MVP - VC
Parce qu'il demande en paramètre un nom de fichier et moi je
travaille pas avec des fichiers.... ( enfin juste avec des noms de
fichiers qui n'existent pas ;) ))
D'ailleur tant que j'y suis autre petite question pour récupérer l'icone associé à une extension... ExtractIcon ca marche ou pas ????
ExtractIcon permet d'extraire une icone qui se trouve en ressource dans un fichier (exe ou dll) passé en paramètre - c'est pas pour rien que le nom du paramètre est lpszExeFilename.
Pour récupérer l'icone associée à un fichier donné existant, c'est ExtractAssociatedIcon.
Pour déterminer l'icone associée à un type de fichier (une extension) sans avoir de fichier correspondant, soit tu va fouiller à la main dans le registre (et c'est assez moche vu le nombre de cas possibles), soit tu utilises ShGetFileInfo : Si tu lui passes le flag SHGFI_USEFILEATTRIBUTES, tu peux lui donner n'importe quel nom de fichier fictif, elle ne tient compte que de l'extension pour te retourner les infos correspondantes. Ca donne : SHFILEINFO sfi; memset(sfi, 0, sizeof(sfi)); ShGetFileInfo("je_n_existe_pas.bmp", FILE_ATTRIBUTE_NORMAL, &shfi, sizeof(shfi), SHGFI_ICON | SHGFI_USEFILEATTRIBUTES); HICON icon=sfi.hIcon; // c'est à toi de libérer icon avec DestroyIcon.
Tu peux varier les méthodes en utilisant SHGFI_ICONLOCATION à la place de SHGFI_ICON puis ExtractIcon, et tu as un paquet d'autres flags pour jouer avec le comportement de ShGetFileInfo - voir la doc.
Arnaud MVP - VC
Parce qu'il demande en paramètre un nom de fichier et moi je travaille pas avec des fichiers.... ( enfin juste avec des noms de fichiers qui n'existent pas ;) ))
Merci d'avance
Neilos
Neilos wrote in news::
Ok merci beaucoup pour toutes ces précisions !
Désolé j'ai encore un petit problème.... J'ai beau essayé de comprendre comment marche les fonctions IShellFolder::GetUIObjectOf et la suite je comprend pas ( je suis allé voir sur la msdn mais je comprend pas trop comment faire ).
J'ai toujours eu beaucoup de mal avec les paramètres style ITEMIDLIST...
Si quelqu'un peut m'aider ou me donner un petit exemple histoire que je comprenne....
Merci d'avance !
-- Neilos
Neilos <neilos2@caramail.com> wrote in
news:Xns93E56D0A56B8ENeiloswanadoofr@193.252.19.141:
Ok merci beaucoup pour toutes ces précisions !
Désolé j'ai encore un petit problème....
J'ai beau essayé de comprendre comment marche les fonctions
IShellFolder::GetUIObjectOf et la suite je comprend pas ( je suis allé voir
sur la msdn mais je comprend pas trop comment faire ).
J'ai toujours eu beaucoup de mal avec les paramètres style ITEMIDLIST...
Si quelqu'un peut m'aider ou me donner un petit exemple histoire que je
comprenne....
Désolé j'ai encore un petit problème.... J'ai beau essayé de comprendre comment marche les fonctions IShellFolder::GetUIObjectOf et la suite je comprend pas ( je suis allé voir sur la msdn mais je comprend pas trop comment faire ).
J'ai toujours eu beaucoup de mal avec les paramètres style ITEMIDLIST...
Si quelqu'un peut m'aider ou me donner un petit exemple histoire que je comprenne....