Ich habe eine USB-Kamera (Dentamerica Cammy) (es ist nicht als HID-Gerät identifiziert) mit einer Schaltfläche und die Anwendung (genannt Vixwin), die auf diese Schaltfläche reagieren und ein Bild machen sollte. Das Problem ist, dass es nicht reagiert. Der Gerätetreiber ist sehr alt und wird vom Hersteller nicht mehr unterstützt. Die einzige Anwendung, die reagiert, wenn ich den Knopf drücke, ist das native Kameraprogramm von der CD. Ich habe versucht, wireshark zu verwenden, um usb-Pakete zu schnüffeln und zu sehen, was die Kamera macht, wenn ich den Knopf drücke. Wenn ich die "capture" -Funktion in der App starte, zeigt es ein Fenster mit einem Video-Stream und danach jedes Mal, wenn ich den Knopf drücke, erzeugt die Kamera einen USB-Interrupt-Transfer, so dass die App ein Bild macht. Die Kamera sendet keine USB-Interrupt-Übertragungen an den Host, wenn der Videostream nicht funktioniert.Wie fängt man USB-Interrput von nicht-HID-Gerät in Windows 7?
Also meine Idee war es, einen einfachen Windows-Dienst zu machen, der USB-Verkehr hören kann und wenn er einen USB-Interrupt von der Kamera sieht - er sollte einen Hotkey an die vixwin App senden. (Vixwin verwendet auch einen Videostream von der Kamera, also hoffe ich, dass es gut funktionieren sollte).
Bitte sagen Sie mir, wie kann ich USB-Verkehr (im Parallel-Modus, wie wireshark) scannen, ohne die Kontrolle über sie und fangen Sie diese USB-Interrupt-Übertragung (hoffentlich mit C#)? Ein ähnliches Codebeispiel zu geben könnte perfekt sein. Oder vielleicht können Sie andere Lösung beraten?
p.s. Der Host verwendet Windows 7 und kann nicht gleichzeitig auf höhere Windows-Versionen aktualisiert werden.
Wireshark interrupt screenshot
verfügbar Capture-Schnittstellen erhalten. Können Sie Absätze hinzufügen, indem Sie sie in leeren Zeilen bearbeiten, damit der Text logischer strukturiert ist? –
Ich weiß nicht, ob dies Ihnen helfen kann, aber Sie sollten einen Blick auf http://www.icsharpcode.net/OpenSource/SharpUSBLib/ –