Réference d'assembly manquante

samsoumitta
Messages postés
23
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
9 juin 2010
- 10 avril 2010 à 15:09
samsoumitta
Messages postés
23
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
9 juin 2010
- 10 avril 2010 à 22:53
Bonjour

Dans mon appli, j'affiche le contenu d'un répertoire dans un treeview grâce à l'appel d'une fonction récursive.
Pour améliorer un peu l'affichage, j'aimerai rajouter l'icone correspondant à l'extension devant le nom du fichier. pour faire cela j'ai utilisé le code suivant:
 [DllImport("shell32.dll", EntryPoint = "ExtractAssociatedIcon")]
        private extern static IntPtr ExtractAssociatedIcon
        (
            IntPtr hInst,
            [MarshalAs(UnmanagedType.LPStr)] string lpIconPath,
            ref int lpiIcon
        );
        Icon ico = null;
        // On affiche l'icone correspondante
                IntPtr hInst = Marshal.GetHINSTANCE(Assembly.GetExecutingAssembly().GetModules()[0]);
                Int32 iIcon = 0;
                // file est le chemin vers ton fichier
                IntPtr hIcon = ExtractAssociatedIcon(hInst, f.Name, ref iIcon);
                ico = Icon.FromHandle(hIcon);

        // Lorsqe l'on dessisne la fenètre, on affiche (dessine) l'icone
        private void PaintForm(object sender, System.Windows.Forms;.PaintEventArgs e)
        {
            e.Graphics.DrawIcon(ico, 36, 44);
        }


Mais losque je compile il m'affiche l'erreur suivante:
Le type ou le nom d'espace de noms 'Windows' n'existe pas dans l'espace de noms 'System' (une référence d'assembly est-elle manquante ?)

Je me demandais si quelqu'un pouvait m'aider
Merci

13 réponses

cs_casy
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
10 avril 2010 à 15:58
A part un ; en trop entre Forms et .PaintEventArgs, je ne vois pas trop d'où peut venir le problème.


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
0
samsoumitta
Messages postés
23
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
9 juin 2010

10 avril 2010 à 16:22
merci pour votre reponse
non le ; ce n'est qu'un faute de frappe lors du copie du code
0
cs_GG29
Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
17
10 avril 2010 à 16:44
Essaye d'ajoute la référence sur System.Windows.Forms.
0
samsoumitta
Messages postés
23
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
9 juin 2010

10 avril 2010 à 16:48
oui j'ai essayé mais tjrs la même erreur
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_GG29
Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
17
10 avril 2010 à 19:05
L'erreur vient bien de cette ligne là ?
private void PaintForm(object sender, System.Windows.Forms;.PaintEventArgs e)
0
samsoumitta
Messages postés
23
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
9 juin 2010

10 avril 2010 à 20:59
oui l'erreur vient de cette ligne
private void PaintForm(object sender, System.Windows.Forms.PaintEventArgs e)


avez vous une idée?
0
cs_GG29
Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
17
10 avril 2010 à 21:27
La seule raison est qu'il te manque une référence sur System.Windows.Forms. Pour l'ajouter Projet/Ajouter une référence.
Je ne vois vraiment rien d'autre.
0
samsoumitta
Messages postés
23
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
9 juin 2010

10 avril 2010 à 21:56
merci GG29, mais savez vous quelle référence dois-je ajouter?
0
cs_casy
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
10 avril 2010 à 21:57
Tu es bien sur une application de type Windows Forms, tu ne fais pas une application en WPF par hasard ?


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
0
cs_GG29
Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
17
10 avril 2010 à 21:58
Comme je l'ai indiqué : System.Windows.Forms
0
samsoumitta
Messages postés
23
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
9 juin 2010

10 avril 2010 à 22:06
pour "casy": comme j'ai déjà dit je suis entrain de developper une application web donc web forms
et pour GG29: j'ai ajouter using System.windows.forms et tjrs la même erreur qui s'affiche!!!!!
0
cs_GG29
Messages postés
326
Date d'inscription
vendredi 23 décembre 2005
Statut
Membre
Dernière intervention
8 février 2011
17
10 avril 2010 à 22:27
Je ne t'ai pas dis d'ajouter using System.windows.forms. Ce que je t'ai dit c'est d'ajouter une référence dans ton projet. Pour cela tu vas dans le menu Projet / Ajouter une référence. La tu choisis System.Windows.Forms.
0
samsoumitta
Messages postés
23
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
9 juin 2010

10 avril 2010 à 22:53
merci GG29 ça marche, mais je n'arrive pas encore à afficher les icones par défaut de mes fichier dans le TreeView
avez vous une idée comment faire?
0