Icônes de programmes

cs_Blanc Messages postés 181 Date d'inscription dimanche 6 juillet 2003 Statut Membre Dernière intervention 16 octobre 2006 - 27 sept. 2003 à 16:36
cs_Klimero Messages postés 73 Date d'inscription lundi 2 avril 2001 Statut Membre Dernière intervention 12 janvier 2010 - 29 sept. 2003 à 09:59
Bonjour à tous,
J'aimerais faire que l'on puisse ouvrir un programme (*.exe) depuis un Openfiledialog et obtenir son icône (sans l'executer). Ce serai cool si quelqu'un pourrait me mettre sur une piste...

Merci d'avance!

.:S:.

3 réponses

cs_Klimero Messages postés 73 Date d'inscription lundi 2 avril 2001 Statut Membre Dernière intervention 12 janvier 2010
28 sept. 2003 à 02:52
Salut,

tu devrais essayer avec la fonction ExtractIconEx se trouvant dans l'API de windows. Tu récupère le HICON puis tu utilises DrawIcon pour l'afficher dans un HDC.

ouala !
0
cs_Blanc Messages postés 181 Date d'inscription dimanche 6 juillet 2003 Statut Membre Dernière intervention 16 octobre 2006
28 sept. 2003 à 13:10
Merci beaucoup Klimero,
Est-ce que t'as réponse marche avec VB.Net parce que j'ai oublié de préciser que c'était en VB.Net... Si oui, pourrais-tu me donné quelque ligne de code parce que je suis débutant et je ne sais même pas ce qu'est l'API de Windows... Et si ça te dérangerais pas de m'expliquer, ça m'aiderai sûrement pour la suite...

Merci.

.:S:.
0
cs_Klimero Messages postés 73 Date d'inscription lundi 2 avril 2001 Statut Membre Dernière intervention 12 janvier 2010
29 sept. 2003 à 09:59
L'API c'est l'Application Programming Interface de windows, c'est à dire toutes les fonctions de base se trouvant dans les OS Microsoft. Ces fonctions sont réparties dans diverses Dll du système. En VB6 il faut déclarer les fonctions comme suit :

Private Declare Function DrawIcon Lib "user32" (ByVal hdc As Long, ByVal X As Long, ByVal Y As Long, ByVal hIcon As Long) As Long

Private Declare Function ExtractIcon Lib "shell32.dll" Alias "ExtractIconA" (ByVal hInst As Long, ByVal lpszExeFileName As String, ByVal nIconIndex As Long) As Long

On peut également utiliser l'API de Windows sous VB .Net mais je ne connais pas la syntaxe pour déclarer les fonctions. Peut-être y a-t-il des exemples dans la section .NET de ce site ?
0
Rejoignez-nous