So greifen Sie von einem Browser auf einem Client -PC auf Geräte zu
-
24-09-2019 - |
Frage
Wie können Sie von einem Browser auf Geräte auf dem Client -PC - einem Barcode -Leser, einem Scanner usw. - zugreifen? Mir ist klar, dass meine Benutzer möglicherweise ein Plugin benötigen. Diese Geräte können eine API haben, die für ihr Gerät spezifisch ist. Ich möchte ihre API ausnutzen, falls verfügbar (vielleicht Java, vielleicht C, vielleicht Befehlszeile).
Lösung
EIN unterzeichnet Java Applet kann einen plattformunabhängigen Zugriff auf die meisten Dinge haben. Der Benutzer muss Java installieren und das signierte Applet ausführen lassen.
Wenn Sie ein Plug-In an die schreiben Nsapi, Sobald sie es installiert haben, haben Sie Zugriff auf im Wesentlichen alles, was der Benutzer zugreifen kann. Natürlich müssen sie das Plug-In installieren.
Flash bietet ziemlich viel Zugriff auf Geräte.
Andere Tipps
Dies ist keine triviale Sache, und es gibt keine standardisierte API dafür (außer vielleicht im Bereich Jscript/ActiveX, der auf Internet Explorer beschränkt ist).
Schauen Sie sich heraus diese Frage Für alle allgemein verfügbaren Optionen, die ich kenne.
Die meisten anderen Dinge sind auf benutzerdefinierte programmierte Active-X und andere Plug-Ins zurückzuführen. Ich habe kommerzielle Barcode-Scanner-Plug-Ins gesehen, die darüber diskutiert wurden, die Frage jedoch nicht finden kann.
Viele Barcode -Leser können zwischen der Tastatur und dem PC eingefügt werden, sodass die gescannten Barcodes direkt in den Tastaturpuffer gehen. Andere Geräte stecken entweder an einen seriellen Anschluss oder haben Treiber, die einen seriellen Anschluss emulieren. Der folgende Python -Code kopiert Daten von einem realen oder virtuellen COM -Port zum Tastaturpuffer des aktiven Fensters. Die COM-Portnummer ist hart codiert, kann jedoch leicht geändert werden.
import serial
import SendKeys
ser = serial.Serial(2)
print ser.portstr
while 1: # exit loop when ctrl/c pressed
line = ""
while 1:
char = ser.read()
if char == "\r": break
line = line + char
print line
SendKeys.SendKeys(line, 0)
ser.close()
Abhängig von dem, was Sie zu tun versuchen, haben Silverlight und Adobe in dieser Arena eine begrenzte Fähigkeit. Webcams, Druck in Silverlight 4.0 usw. ist jedoch nicht trivial. Silverlight 4.0 und Flash unterstützen das Barcode -Scannen.