WMI liste des périphériques USB connecté

Résolu
stephanie701 Messages postés 4 Date d'inscription lundi 20 août 2007 Statut Membre Dernière intervention 22 août 2007 - 21 août 2007 à 10:33
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 25 août 2007 à 12:58
Bonjour à tous!

Je suis face à un problème que je n'arrive pas à résoudre c'est pour ceci que je fais appelle à vous! Je veux détecter tout les éléments sur les ports USB. J'ai constater lors de mes recherches beaucoup de solutions qui utilise la connexion/déconnexion des éléments mais je ne peux pas procéder comme ça. Je dois lister tous les éléments des ports pour ensuite envoyer une trame au bon élément. J'utilise WMI mais sans succès. C'est mon premier programme en C#, avant je réalisais mes programmes en java, alors je prends tous les conseils.

Petit exemple de ce qui est déjà fait mais qui ne fonctionne pas:

using System;

using System.Management;

using System.Management.Instrumentation;

namespace ConsoleApplication1
{
class Class1
{
staticvoid Main(string[] args)
{
ManagementObjectSearcher chercher = new ManagementObjectSearcher("Select Name from Win32_USBControllerDevice");

foreach(ManagementObject usb in chercher.Get())
{
Console.WriteLine("Name: {0}\n",usb.GetPropertyValue("Name"));
}
}
}
}

Merci d'avance de m'aider à trouver une solution!
Salutations à tous!
Stephanie701

3 réponses

t_barbillon Messages postés 341 Date d'inscription mercredi 8 juin 2005 Statut Membre Dernière intervention 10 février 2009 2
22 août 2007 à 12:56
Salut, tu dis que ton bout de code ne fonctionne pas :  est ce que une exception est levée ? Sinon, je ne suis pas sur que la classe Win32_USBControllerDevice possède une propriété Name.
Si tu veux lister tous les éléments connectés aux ports USB, une solution serait d'utiliser la classe Win32_PnPEntity qui liste tous les éléments plug & play et plus particulièrement les équipements USB. Ensuite la classe Win32_PnpAllocatedResource devrait te permettre de faire la liaison entre l'élémentet le système. Tu peux aussi utiliser la classe Win32_PnPDevice qui liste les élément USB en fonction de leur équipement matériel associé.
3
stephanie701 Messages postés 4 Date d'inscription lundi 20 août 2007 Statut Membre Dernière intervention 22 août 2007
22 août 2007 à 14:39
Salut,

En faite, j'ai réussi à lister a l'aide de win32_USBHub. Avec "NAME" il me donne des indications (périphérique de stockage de masse, HD, appareil photo,...) Donc mon programme fonctionne à ce niveau la mais maitenant un autre problème ce pose, c'est la communication avec ces périphériques. J'ai entendu parler d'une dll (winUsb.dll) mais impossible de la trouver. http://msdn2.microsoft.com/en-us/library/aa476437.aspx

Donc je reste toujours bloquée!

Merci pour tous

Bonne journée

stephanie701
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
25 août 2007 à 12:58
Salut,

WinUSB c'est sous Vista.

/*
coq
MVP Visual C#
CoqBlog
*/
0
Rejoignez-nous