Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

[WD9] récupérer le type d'un fichier et son icone

130 views
Skip to first unread message

Vincent

unread,
Nov 26, 2005, 12:03:27 PM11/26/05
to
Bonjour,

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


Gégé

unread,
Nov 28, 2005, 3:37:30 AM11/28/05
to
Vincent wrote:
> Est-ce possible avec le code windev ?

http://centrewd.free.fr/?page=ficheapi&t=f&n=ExtractAssociatedIcon

Romain PETIT

unread,
Nov 28, 2005, 3:39:53 AM11/28/05
to
Gégé a exprimé avec précision :

> Vincent wrote:
>> Est-ce possible avec le code windev ?

> 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é)


Romain PETIT

unread,
Nov 28, 2005, 3:40:39 AM11/28/05
to
Gégé a exprimé avec précision :
> Vincent wrote:
>> Est-ce possible avec le code windev ?

> http://centrewd.free.fr/?page=ficheapi&t=f&n=ExtractAssociatedIcon

J'allais le dire...

Gégé

unread,
Nov 28, 2005, 3:44:30 AM11/28/05
to
Romain PETIT wrote:
> J'allais le dire...

2x de suite. Romain arrête le double clic sur le bouton "Envoyer"
:-D

Romain PETIT

unread,
Nov 28, 2005, 3:55:42 AM11/28/05
to
Gégé avait énoncé :

Non, si tu regardes bien, c'est un supersedes...
Arrete de charger trop vite le forum :-)

Vincent

unread,
Nov 28, 2005, 11:42:20 AM11/28/05
to
Merci pour votre réponse collégiale :)

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...

paratge

unread,
Nov 29, 2005, 1:01:40 PM11/29/05
to Vincent
Vincent a écrit :
Bonsoir,

Il y a la fonction "fAttribut" qui permet de connaître tout cela.

Vincent

unread,
Nov 29, 2005, 3:54:38 PM11/29/05
to

"paratge" <j...@2jbconcepts.fr> a écrit dans le message de news:
438C9784...@2jbconcepts.fr...

Merci, je vais voir

Vincent


Vincent

unread,
Dec 4, 2005, 4:46:45 AM12/4/05
to
Merci pour ta réponse; fattribut comme son nom l'indique,
ne fait que gérer les attributs d'un fichier, pas le reste.
J'imagine que toutes les infos que jecherche sont dans les
registres


Vincent


"paratge" <j...@2jbconcepts.fr> a écrit dans le message de news:
438C9784...@2jbconcepts.fr...

Christophe Charron

unread,
Dec 5, 2005, 3:59:18 AM12/5/05
to
Vincent a écrit :
Bonjour,
finalement, as-tu trouvé ? sinon je t'envoie le code en privé.

--
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

unread,
Dec 5, 2005, 11:44:09 AM12/5/05
to
Non je n'ai pas trouvé. je cherche une solution comptatible avec 2000 et xp.
Si c'est trop système, j'ai peur d'avoir des problèmes de compatibilité.
pour le moment, je me suis fais une liste d'extension et d'icones par defaut

Vincent


"Christophe Charron" <christoph...@prologiq.fr> a écrit dans le
message de news: 43940164$0$27841$afc3...@news.easynet.fr...

Christophe Charron

unread,
Dec 8, 2005, 10:35:55 AM12/8/05
to
Vincent a écrit :
Bonsoir,

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é !!!

Vincent

unread,
Dec 8, 2005, 12:05:14 PM12/8/05
to

heu !?! impressionnant :)

Merci

Vincent


"Christophe Charron" <christoph...@prologiq.fr> a écrit dans le

message de news: 439852dd$0$22155$afc3...@news.easynet.fr...

0 new messages