yan35
Messages postés185Date d'inscriptiondimanche 29 juin 2003StatutMembreDernière intervention20 juin 2013 11 janv. 2009 à 19:54
Bonsoir ShareVB,
Je te remercie de tes infos. Cependant depuis mon dernier message, j'ai pas mal décortiqué ton code et lu de la doc sur les API SetupDi et du coup j'en ai déduit que je ne pouvais pas distinguer les disque externes par ces API. En effet ils sont attachés à la classe Volume, celle dont tu me donnes le classGUID pour utilisation avec SetupDiGetClassDevs, ce qui permet d'aller + vite dans leur identification mais ne permet pas de savoir qu'ils sont USB, voire même FW. D'ailleurs dans ton code tu détectes bien les clés USB mais pas les disques externes. J'abandonne donc une partie de cette piste pour les détecter et m'oriente vers l'API DeviceIoControl pour détecter le type de bus du disque. (mais l'utilisateur doit être des droits sur le disque !).
Quoiqu'il en soit, Merci pour ton code et tes infos.
ShareVB
Messages postés2676Date d'inscriptionvendredi 28 juin 2002StatutMembreDernière intervention13 janvier 201626 11 janv. 2009 à 11:34
Si tu veux récupérer tous les disques, il faut que tu appelles cette api, de la façon suivante :
SetupDiGetClassDevs({71a27cdd-812a-11d0-bec7-08002be2092f}, NULL, NULL, DIGCF_PRESENT)
ShareVB
yan35
Messages postés185Date d'inscriptiondimanche 29 juin 2003StatutMembreDernière intervention20 juin 2013 6 janv. 2009 à 18:34
10/10 Merci
yan35
Messages postés185Date d'inscriptiondimanche 29 juin 2003StatutMembreDernière intervention20 juin 2013 6 janv. 2009 à 18:32
Bonjour,
Je viens de découvrir ce code en cherchant comment identifier des disques externes USB afin d'orienter un traitement différent de l'API WriteFile pour ce type de disque dans un code. C'est super, j'y trouve ce qu'il me faut et je vais en prendre un bout et l'adapter à une classe que j'utilise en information sur disque et fichiers. Merci pour ce gros travail d'information.
Y aurait-il une ou d'autres constantes comme DIGCF_ALLCLASSES = &H4 pour cibler l'extraction et limiter le parcours de l'énumération obtenue ?
Merci
ShareVB
Messages postés2676Date d'inscriptionvendredi 28 juin 2002StatutMembreDernière intervention13 janvier 201626 29 août 2007 à 23:03
salut,
"mot de passe" de quoi ? tu peux détecter l'arrivée d'un nouveau périphérique en sous classant ta fenêtre principale et en captant le message WM_DEVICECHANGE et son wparam dbt_devicearrival, en promptant le mot de passe puis en déconnectant si mauvais mot de passe...mais bon, je suis pas sûr que ca marche à tous les coups...
ShareVB
emmabille
Messages postés1Date d'inscriptionjeudi 16 août 2007StatutMembreDernière intervention24 août 2007 24 août 2007 à 03:41
Je cherche à filtrer les accès de memory sticks sur un pc (partagé), Quelqu'un aurait-il une astuce du genre «si mot de passe incorrect, alors déconnexion de la clé ».
Merci pour ce code, je suis impressionné.
ShareVB
Messages postés2676Date d'inscriptionvendredi 28 juin 2002StatutMembreDernière intervention13 janvier 201626 1 janv. 2007 à 20:29
à priori, fonctionne sous Windows Vista Business...principalement en Administrateur...
ShareVB
JGA_BF
Messages postés1Date d'inscriptionmercredi 28 juin 2006StatutMembreDernière intervention28 juin 2006 28 juin 2006 à 16:54
Bravo, belle réalisation.
42wawa42
Messages postés143Date d'inscriptiondimanche 28 septembre 2003StatutMembreDernière intervention 6 septembre 2011 11 juin 2006 à 19:16
MARCHE tres bien avec windows mille.
Tres bon program.
Merci.
Dane.
ShareVB
Messages postés2676Date d'inscriptionvendredi 28 juin 2002StatutMembreDernière intervention13 janvier 201626 26 févr. 2006 à 22:48
salut,
la prise en charge de la lettre de lecteur vient d'être ajoutée.
ShareVB
cs_riririri
Messages postés1Date d'inscriptionmardi 24 janvier 2006StatutMembreDernière intervention24 janvier 2006 24 janv. 2006 à 15:30
Super... really. Mais j'ai pas vu si la lettre du lecteur était disponible qqpart, alors j'éjecte sans trop savoir quoi. A part cela, encore thanks
cs_Sator2
Messages postés137Date d'inscriptionsamedi 11 septembre 2004StatutMembreDernière intervention10 septembre 2006 3 janv. 2005 à 23:51
Fonctionne sous XP pro...
Merci
@+Sator 2
cs_clementpat
Messages postés406Date d'inscriptionlundi 2 décembre 2002StatutMembreDernière intervention25 janvier 2014 3 janv. 2005 à 18:22
11 janv. 2009 à 19:54
Je te remercie de tes infos. Cependant depuis mon dernier message, j'ai pas mal décortiqué ton code et lu de la doc sur les API SetupDi et du coup j'en ai déduit que je ne pouvais pas distinguer les disque externes par ces API. En effet ils sont attachés à la classe Volume, celle dont tu me donnes le classGUID pour utilisation avec SetupDiGetClassDevs, ce qui permet d'aller + vite dans leur identification mais ne permet pas de savoir qu'ils sont USB, voire même FW. D'ailleurs dans ton code tu détectes bien les clés USB mais pas les disques externes. J'abandonne donc une partie de cette piste pour les détecter et m'oriente vers l'API DeviceIoControl pour détecter le type de bus du disque. (mais l'utilisateur doit être des droits sur le disque !).
Quoiqu'il en soit, Merci pour ton code et tes infos.
11 janv. 2009 à 11:34
L'api SetupDiGetClassDevs permet de récupérer les devices selon une catégorie (premier paramètre) soit d'installation (les catégories du Device Manager : http://msdn.microsoft.com/en-us/library/ms791134.aspx) soit d'interface (des catégories plus générales : http://msdn.microsoft.com/en-us/library/bb663138.aspx).
Si tu veux récupérer tous les disques, il faut que tu appelles cette api, de la façon suivante :
SetupDiGetClassDevs({71a27cdd-812a-11d0-bec7-08002be2092f}, NULL, NULL, DIGCF_PRESENT)
ShareVB
6 janv. 2009 à 18:34
6 janv. 2009 à 18:32
Je viens de découvrir ce code en cherchant comment identifier des disques externes USB afin d'orienter un traitement différent de l'API WriteFile pour ce type de disque dans un code. C'est super, j'y trouve ce qu'il me faut et je vais en prendre un bout et l'adapter à une classe que j'utilise en information sur disque et fichiers. Merci pour ce gros travail d'information.
Y aurait-il une ou d'autres constantes comme DIGCF_ALLCLASSES = &H4 pour cibler l'extraction et limiter le parcours de l'énumération obtenue ?
Merci
29 août 2007 à 23:03
"mot de passe" de quoi ? tu peux détecter l'arrivée d'un nouveau périphérique en sous classant ta fenêtre principale et en captant le message WM_DEVICECHANGE et son wparam dbt_devicearrival, en promptant le mot de passe puis en déconnectant si mauvais mot de passe...mais bon, je suis pas sûr que ca marche à tous les coups...
ShareVB
24 août 2007 à 03:41
Merci pour ce code, je suis impressionné.
1 janv. 2007 à 20:29
ShareVB
28 juin 2006 à 16:54
11 juin 2006 à 19:16
Tres bon program.
Merci.
Dane.
26 févr. 2006 à 22:48
la prise en charge de la lettre de lecteur vient d'être ajoutée.
ShareVB
24 janv. 2006 à 15:30
3 janv. 2005 à 23:51
Merci
@+Sator 2
3 janv. 2005 à 18:22