Einzelnen Beitrag anzeigen

Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#1

Wann wird DBT_DEVNODES_CHANGED gesendet?

  Alt 11. Okt 2007, 10:28
Moin moin,

wenn man die WM_DEVICECHANGE messages abfängt bekommt man ziemlich oft auch die DBT_DEVNODES_CHANGED message. Steckt man beispielsweise eine Speicherkarte in den Reader, wird (zumindest bei meinem Lappi) erstmal 4x DBT_DEVNODES_CHANGED gesendet, anschließend DBT_DEVICEARRIVAL und dann noch ein mal DBT_DEVNODES_CHANGED, also insgesamt 6 messages für ein und dasselbe Device.

Nungut, MSDN spricht sich dazu so aus:
Zitat:
The system broadcasts the DBT_DEVNODES_CHANGED device event when a device has been added to or removed from the system. Applications that maintain lists of devices in the system should refresh their lists.
Na gut - aber warum bekomme ich dann 5x DBT_DEVNODES_CHANGED, es wird ja nur einmal ein Device "geaddet".

Des Weiteren habe ich meinen Device-Monitor einfach mal ein Weilchen laufen lassen, und ich bekomme immer wieder die message DBT_DEVNODES_CHANGED ohne dass irgendein Laufwerk/Datenträger/sonstige Hardware hinzugefügt oder entfernt worden wäre.

Die Spannende Frage ist also: Was genau verbirgt sich hinter DBT_DEVNODES_CHANGED?

  Mit Zitat antworten Zitat