![]() |
Event beim Entfernen eines USB-Gerätes
Hallo,
gibt es einen System-Event, wenn ein USB-Gerät entfernt wird? Wenn ja, welcher und wie bekommt man das hin, dass Anwendung X darauf reagiert? Grüße, Mario |
Re: Event beim Entfernen eines USB-Gerätes
Das ist ueber WM_DEVICECHANGE geregelt.
Schilder mal genauer welches USB-Geraet es ist. Man muss eventuell noch ein bischen mit RegisterDeviceNotification nachhelfen. Das schwierigste ist die GUID rauszubekommen, die fuer ein bestimmtes Geraet oder USB-Geraeteklasse steht. |
Re: Event beim Entfernen eines USB-Gerätes
Es sind mehrere USB-Geräte in einem. Am signifikantesten ist z.B. aber, dass dann eine USB-Soundkarte "USB Audio" entfernt wird.
|
Re: Event beim Entfernen eines USB-Gerätes
Willst du auf USB-Audiogeraete im allgemeinen oder auf spezifisch das Geraet von diesem Hersteller reagieren?
Auf jeden Fall solltest du die JVCL installieren, da dort DBT.pas enthalten ist. Dort ist WM_DEVICECHANGE deklariert. Unbedingt JCL von ![]() ![]() |
Re: Event beim Entfernen eines USB-Gerätes
Spezifisch nur dieses Gerät. Wir haben ne Software + Hardware entwickelt. Und wenn das Gerät entfernt wird, sollen diverse Funktionen in der Software deaktiviert werden.
Danke für die Tipps. Werd' ich mir mal die Tage angucken. :) |
Re: Event beim Entfernen eines USB-Gerätes
Studier mal die HID-Komponente. Speziell die FillIn-Funktion. Das Enumerieren von Geraeten mit SetupDi-Funktionen ist prinzipiell immer gleich, nur die GUID wechselt.
|
Re: Event beim Entfernen eines USB-Gerätes
Kurze Frage noch: Ich hab schon 'ne JCL (1.99 Build 2551)/ JVCL (3.31) Installation. Reicht es, wenn ich einfach die DBT.pas ersetze?
|
Re: Event beim Entfernen eines USB-Gerätes
Ja. Danach die JVCL per install.bat neu uebersetzen und dabei "Build packages" bestellen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:29 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz