AccueilCodes sourcesFreewaresArticlesRéponsesRechercheVotre avisNewsMon blogLiensContact
Dimanche 25 Janvier 2026

Valid HTML 4.01 Transitional

126 codes sources48 articles77 news24 Liens15 avis9 réponses.
Comment obtenir l'icone associée à un type de fichier ?

En fonction de son extension, on peut obtenir l'icone associée de cette manière :

//IconeAssociéeFichier (<sNomFichier>, <sNomChampImage>)
////Dessine dans un champ image l'icone associée à un type de fichier  
// Paramètres :
//        sNomFichier : nom d'un fichier contenant une extension , on peut ne préciser que l'extension
//        sNomChampImage : Nom du champ image dans laquelle l'icone doit être dessinée
// Valeur de retour :
//         Aucune

PROCEDURE IconeAssociéeFichier(sNomFichier,sNomChampImage)                        
sExtension est une chaîne
sNomProgramme est une chaîne
nHndIcone est un entier

SI sNomFichier = "" OU sNomChampImage = "" ALORS
        RETOUR
FIN

sExtension = Minuscule("."+ExtraitChaîne(sNomFichier,ChaîneOccurrence(sNomFichier, ".")+1,"."))
sNomProgramme = RegistreLit("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\"+sExtension,"")
sNomProgramme = RegistreLit("HKEY_LOCAL_MACHINE\SOFTWARE\Classes\"+sNomProgramme+"\shell\open\command","")

//HKEY_CLASSES_ROOT\WinDev.Projet.10.0\Shell\open\Command

sNomProgramme = Minuscule(sNomProgramme)
SI Position(sNomProgramme,"%systemroot%") <> 0 ALORS
        sNomProgramme = Remplace(sNomProgramme,"%systemroot%",SysRep())
FIN
sNomProgramme = SansEspace(ExtraitChaîne(sNomProgramme,1,"%"))
//Suppression des guillemets :
sNomProgramme = Remplace(sNomProgramme,"""""","")
sNomProgramme = Remplace(sNomProgramme,Caract(34),"")
sNomProgramme = SansEspace(sNomProgramme)


//// Appel d'api pour récupérer le handle de l'icone de l'executable
nHndIcone = API("SHELL32","ExtractIconA",SysInstance(),sNomProgramme,0)
nHandleChpImage est un entier
nHandleChpImage = dDébutDessin(sNomChampImage)
API("user32","DrawIcon",nHandleChpImage,0,0,nHndIcone)



Liste des codes sources
®2006 - codel5g.com