C++/WINAPI Usb-Geräte auswerfen und blockieren
-
Hallo liebe Community,
mein Ziel ist es mit c++ und einer GUI von WINAPI eine art usb blocker zu schreiben. Er soll die Usb Geräte erkennen und zuerst nicht zulassen. Erst wenn der genehmigt wurde soll er angezeigt werden und drauf zugegriffen werden. Ist die Blockade nicht aktiv und ein Stick ist verfügbar soll er beim start rausgeschmissen werden. Leider hapert es bei mir an der Umsetzung und bräuchte dabei Hilfe. Hat da irgendwer eine Idee?Greetz Esskla
-
Hallo,
ich glaube nicht dass dies so einfach funktionieren wird, da sich jedes USB Gerät automatisch am Kernel anmeldet. Jeder mir bekannte Kerneldriver (n=3) hat eine Routine: NTSTATUS EvtDeviceAdd() {}
Von dort aus werden die relevanten Callbacks für die Anmeldung im USER Modus automatisch ausgeführt.
Vermutlich müsstest Du sich anmeldende DEVICES detektieren und sogleich wieder abmelden (so würde ich es jedenfalls probieren), da dies aus dem USER Mode heraus geht. http://www.codeproject.com/KB/system/RemoveDriveByLetter.aspxMöglicherweise ist es aber besser USB einfach gleich zu sperren, wenn es ein Sicherheitsrisiko darstellen sollte:http://www.netzwelt.de/news/130691-windows-usb-sticks-pc-sperren.html
MFG
-
Hallo
erstmal danke für die Rasche Antwort. Die erste Möglichkeit werde ich gerade mal versuchen, die zweite ist ein wenig problematisch, da dies ein Projekt ist um mich mit der USB-Programmierung vertraut zu machen. Zudem wäre es ein nützliches Programm für den Eigenbetrieb. Trotzdem danke für die Lösungsversuche.MFG
-
schau ob damit weiter kommst:
http://forums.codeguru.com/showthread.php?431001-Enable-Disable-USB-drive
...ansonsten USB über Win.Registry lahmlegen.
-