J'aimerai savoir quand dans une liste je sélectionne un fichier, quelle
icone est associée,
quel est le type de ficher et s'il y a une application par défaut d'associée
fichiers word, excell, images, html etc ....
Est-ce possible avec le code windev ?
Merci
Vincent
http://centrewd.free.fr/?page=ficheapi&t=f&n=ExtractAssociatedIcon
> http://centrewd.free.fr/?page=ficheapi&t=f&n=ExtractAssociatedIcon
J'allais le dire...
Google groups, http://groups.google.com
recherche sur 3 mots clés : extraire, icone, windev...
http://groups.google.com/group/fr.comp.developpement.agl.windev/browse_f
rm/thread/c089ba6f93848c08/bea874069a2a7ba9
A+
--
Romain PETIT
http://cerbermail.com/?O16kfXOFcq
(cliquez sur le lien ci-dessus pour me contacter en privé)
> http://centrewd.free.fr/?page=ficheapi&t=f&n=ExtractAssociatedIcon
J'allais le dire...
2x de suite. Romain arrête le double clic sur le bouton "Envoyer"
:-D
Non, si tu regardes bien, c'est un supersedes...
Arrete de charger trop vite le forum :-)
Je suis allé voir le code, merci. Mais est-ce "compatible" dot net ?
ca va marcher sur toutes les machines ?
Vincent
"Romain PETIT" <Vo...@Signature.fin> a écrit dans le message de news:
mn.e2537d5b9...@Signature.fin...
Il y a la fonction "fAttribut" qui permet de connaître tout cela.
Merci, je vais voir
Vincent
Vincent
"paratge" <j...@2jbconcepts.fr> a écrit dans le message de news:
438C9784...@2jbconcepts.fr...
--
Cordialement
Christophe Charron
PROLOGIQ
7 bis Rue des Aulnes
69410 Champagne au Mont d'Or
Tel : 0 437 499 107
Fax : 0 437 499 105
mailto:christoph...@prologiq.fr
Vincent
"Christophe Charron" <christoph...@prologiq.fr> a écrit dans le
message de news: 43940164$0$27841$afc3...@news.easynet.fr...
soit
******************
// Syntaxe :
//[ <Résultat> = ] FA_Gère_Icone (<sRépertoireTemporaire>,
<vl_c_extension>, <vl_c_Fenetre_Champ>, <vl_b_Extraire>)
//
// Paramètres :
// sRépertoireTemporaire : <Répertoire temporaire dans lequel on va
créer le fichier temporaire>
// vl_c_extension : <Extension de fichier pour laquelle on va créer un
fichier image>
// vl_c_Fenetre_Champ : <fenetre et champ image dans lesquelles on va
dessiner l'icone (menu_0000.icone)>
// vl_b_Extraire : <Veut-on réellement extraire l'icone ? a priori
valeur de Base_CRM.va_b_Extraire_Icones_Doc>
// Valeur de retour :
// Type indéterminé :
PROCEDURE
FA_Gère_Icone(sRépertoireTemporaire,vl_c_extension,vl_c_Fenetre_Champ,vl_b_Extraire)
LOCAL
HandleIcone est un entier
sFichierTemporaire est une chaîne
//
SI PAS vl_b_Extraire ALORS RENVOYER ""
SI SansEspace(vl_c_extension) = "" ALORS RENVOYER ""
fRepCrée(sRépertoireTemporaire)
// Crée un fichier temporaire
sFichierTemporaire = fFichierTemp("", sRépertoireTemporaire) +
vl_c_extension
sFichierTemporaire = sRépertoireTemporaire+"Fic"+vl_c_extension
SI fFichierExiste(sFichierTemporaire+".bmp") ALORS
RENVOYER sFichierTemporaire+".bmp"
FIN
SI PAS fFichierExiste(sFichierTemporaire) ALORS
fCrée(sFichierTemporaire)
FIN
// Extraction de l'icone associée au type de fichier
HandleIcone = ExtraireIconeAssocié(sFichierTemporaire)
SI HandleIcone = 0 ALORS RENVOYER ""
// Dessine l'icone selon son handle
DessineIcone(HandleIcone, vl_c_Fenetre_Champ)
// Prépare un fichier .BMP
sFichierTemporaire += ".bmp"
// Sauve l'icone au format BMP
dSauveImageBMP(vl_c_Fenetre_Champ, sFichierTemporaire)
dFinDessin(vl_c_Fenetre_Champ)
RENVOYER sFichierTemporaire
*****************
et
****************
// Description des paramètres d'entrée/sortie de 'ExtraireIconeAssocié' :
//
// Syntaxe :
//[ <Résultat> = ] ExtraireIconeAssocié (<Fichier>[, <Indice>])
//
// Paramètres :
// Fichier : <indiquez ici le rôle de Fichier>
// Indice : <indiquez ici le rôle de Indice>
// Valeur de retour :
// Type indéterminé : // Aucune
//
// Extrait l'icone de l'exécutable ou élément associé au fichier passé
en paramètre
// selon son indice
// Fichier : Chemin complet du fichier dont l'icone associée doit être
extraite
// Indice : Numéro d'indice de l'icone associée. Par défaut ce
paramètre vaut 0
PROCEDURE ExtraireIconeAssocié(Fichier, Indice = 0)
QUAND EXCEPTION RENVOYER Faux
RENVOYER API("SHELL32", "ExtractAssociatedIconA", SysInstance(),
&Fichier, &Indice)
***************
ainsi que
****************
// Description des paramètres d'entrée/sortie de 'DessineIcone' :
//
// Syntaxe :
//[ <Résultat> = ] DessineIcone (<HandleIcone>, <ChampImage>)
//
// Paramètres :
// HandleIcone : <indiquez ici le rôle de HandleIcone>
// ChampImage : <indiquez ici le rôle de ChampImage>
// Valeur de retour :
// Type indéterminé : // Aucune
//
// Desssine un icone dans un champ Image
// HandleIcone : Handle de l'icone à dessiner renvoyé par ExtraireIcone
et ExtraireIconeAssocié
// ChampImage : Nom du champ Image dans lequel l'icone doit être dessiné
PROCEDURE DessineIcone(HandleIcone, ChampImage)
QUAND EXCEPTION RENVOYER Faux
// Récupère le Device Context du champ Image
nDC est un entier = dDébutDessin(ChampImage)
x, y sont des entiers = 0
// Dessine l'icone dans le champ Image
API("User32", "DrawIcon", nDC, x, y, HandleIcone)
// Libère le Device Context du champ Image
SysLibereDC()
// Détruit l'icone pour libérer la mémoire
RENVOYER DétruitRessourceIcone(HandleIcone)
****************
complété par
***************
// Description des paramètres d'entrée/sortie de 'DétruitRessourceIcone' :
//
// Syntaxe :
//[ <Résultat> = ] DétruitRessourceIcone (<HandleIcone>)
//
// Paramètres :
// HandleIcone : <indiquez ici le rôle de HandleIcone>
// Valeur de retour :
// Type indéterminé : // Aucune
//
// Détruit les ressources allouées par l'icone
// HandleIcone : Handle de l'icone renvoyé par ExtraireIconeAsssociée
et ExtraireIcone
PROCEDURE DétruitRessourceIcone(HandleIcone)
QUAND EXCEPTION RENVOYER Faux
RENVOYER API("User32", "DestroyIcon", HandleIcone)
*******************
Voila, voilou, mais tout ce code n'est pas de moi, je ne sais plus à qui
je l'ai pompé !!!
Merci
Vincent
"Christophe Charron" <christoph...@prologiq.fr> a écrit dans le
message de news: 439852dd$0$22155$afc3...@news.easynet.fr...