2010-02-01 11 views
5

Welche Möglichkeiten gibt es, um auf einem Client-PC - einem Barcodeleser, einem Scanner usw. - über einen Browser auf Geräte zuzugreifen? Ich weiß, dass meine Benutzer möglicherweise ein Plugin benötigen. Diese Geräte verfügen möglicherweise über eine API, die für ihr Gerät spezifisch ist. Ich möchte ihre API ausnutzen, wenn sie verfügbar ist (vielleicht Java, vielleicht C, vielleicht Befehlszeile).So greifen Sie über einen Browser auf Geräte auf einem Client-PC zu

+0

Jeder Strichcode-Scanner, den ich je gesehen habe, funktioniert wie eine Tastatur, so dass er überall funktioniert, wo eine Tastatur ohne zusätzliche Einstellungen funktioniert. –

+0

Die Geräte ähneln eher einem Scanner als einem Barcodeleser. – Upperstage

Antwort

5

A signiert Java-Applet kann plattformunabhängigen Zugriff auf die meisten Dinge haben. Der Benutzer muss Java installiert haben und das signierte Applet ausführen lassen.

Wenn Sie ein Plug-in in das NSAPI schreiben, haben Sie nach der Installation Zugriff auf alles, auf das der Benutzer zugreifen kann. Natürlich müssen sie das Plug-In installieren.

Flash bietet ziemlich viel Zugriff auf Geräte.

+0

Große Antwort; Vielen Dank. – Upperstage

1

Dies ist keine triviale Sache, und es gibt keine standardisierte API dafür (außer vielleicht im JScript/ActiveX-Bereich, der auf Internet Explorer beschränkt ist).

Für den Zugriff auf Scanner über die TWAIN-Schnittstelle, überprüfen Sie this question für alle allgemein verfügbaren Optionen, die ich kenne.

Die meisten anderen Dinge sind auf individuell programmierte Active-X und andere Plug-Ins zurückzuführen. Ich habe kommerzielle Barcode-Scanner-Plugins gesehen, die auf SO diskutiert wurden, aber ich kann die Frage nicht sofort finden.

+0

NSAPI ist ziemlich Standard. –

+0

Gute Verbindung, danke. – Upperstage

1

Viele Barcodeleser können zwischen der Tastatur und dem PC eingefügt werden, so dass die gescannten Barcodes direkt in den Tastaturpuffer gelangen. Andere Geräte stecken entweder in einen seriellen Port oder haben Treiber, die einen seriellen Port emulieren. Der folgende Python-Code kopiert Daten von einem realen oder virtuellen COM-Port in den Tastaturpuffer des aktiven Fensters. Die COM-Port-Nummer ist fest codiert, aber dies kann 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() 
0

Je nachdem, was Sie versuchen zu tun, haben Silverlight und Adobe beide begrenzte Möglichkeiten in diesem Bereich. WebCams, Drucken in Silverlight 4.0 usw. Es ist jedoch nicht trivial. Silverlight 4.0 und Flash unterstützen beide Barcode-Scans.