5 Stimmen

Kann man einen Twain-Scanner (vielleicht WIA) abhören?

Ich teste gerade VintaSoft .net control und Atalasoft DotTwain Image Capture. Und ich bin sehr, aber sehr verloren mit den meisten der Definitionen und Schlüsselwörter.

Ich frage das, weil ich glaube, dass ich im Lala-Land bin. Ist es möglich, dass der Scanner meiner App mitteilt, dass es ein gescanntes Bild gibt und ich es verarbeiten kann?

Die Idee ist, einen Winservice zu haben, der darauf wartet, dass der Scanner etwas scannt, und wenn das passiert, das Bild verarbeitet.

5voto

Ich habe nur mit den nativen Schnittstellen zu TWAIN und WIA gearbeitet, kann mich also nicht für diese anderen Ebenen auf diesen Schnittstellen verbürgen. In Bezug auf TWAIN gibt es jedoch einige Mechanismen, mit denen eine Anwendung benachrichtigt werden kann, um Daten zu erfassen. Ich glaube, dies wird mit STI.dll gehandhabt, einer älteren Bibliothek, die unter Windows 2000+ verfügbar ist. Schauen Sie unter StiCreateInstance nach, um weitere Informationen zu erhalten.

Wenn Sie sich für den WIA-Weg entscheiden, ist das viel einfacher. Sie können sich für den Empfang von Ereignissen registrieren, z. B. für die Schaltfläche "Scannen" oder das Ereignis "Bild erstellt". Dann müssen Sie nur noch diese Ereignisse verarbeiten, um das Bild zu erhalten. Das Schwierigste dabei ist, Hardware zu finden, die die gewünschten Funktionen implementiert.

Microsoft verfügt über eine WIA-Automatisierungsbibliothek, die viele dieser Aufgaben erheblich vereinfacht. Sie kann von Skriptsprachen verwendet werden.

4voto

Douglas Anderson Punkte 4552

Wir haben kürzlich TWAIN in eine unserer Anwendungen integriert. Wir haben uns WIA angeschaut, aber letztendlich ist TWAIN viel flexibler und kann mit Anwendungen wie VRS (Virtual ReScan) verbunden werden. Im Endeffekt ist es ein Pull-Verfahren: Sie fordern einen Scan an und warten dann auf den Scanner. Das Schöne an VRS ist, dass es sich um eine Software zwischen unseren TWAIN-Aufrufen und dem Gerät handelt, die sich um einige Dinge kümmert, u. a. kann sie praktisch ewig darauf warten, dass Papier zum Scannen in den Schacht gelegt wird. Auf diese Weise kann ein Scanauftrag gestartet und dann auf das Papier gewartet werden; außerdem können dem Gerät zusätzliche Seiten hinzugefügt werden.

Wenn Sie etwas mehr "Push"-orientiert sind, dann suchen Sie nach einem Scanner oder MFP, der ftp/smb/email usw. unterstützt, und lassen Sie ihn scannen, und Sie können einfach einen Ordner oder ein POP3-Postfach für den Auftrag überwachen.

Sie können auch auf MFP-Geräte zurückgreifen, die (manchmal gegen Aufpreis) Hilfsmittel enthalten, wie z. B. Template von Xerox, LDSS von Lexmark oder DSS von HP.

Hier ist ein Link zu dem .NET TWAIN-Code, auf dem unsere Scanner-Integration basiert: http://www.codeproject.com/KB/dotnet/twaindotnet.aspx

3voto

Marc Gravell Punkte 970173

[edit - wenn ich es wäre, würde ich mir die Antwort von adzm ansehen ;-p]

So wie ich es verstehe, ist reguläres TWAIN ein "Pull", nicht ein "Push" vom Scanner. Ich könnte aber auch falsch liegen...

Ich gehe davon aus, dass es solche Schnittstellen für High-End-Scanner mit hohen Stückzahlen (Sie wissen schon, die von der Größe eines Billardtisches) gibt - aber nicht (AFAIK) für normale Verbraucherscanner.

Für die Verwendung mit .NET (und davor mit COM) habe ich immer mit ImageMan .

0voto

flysakura Punkte 380

Es ist möglich, dass der Scanner Ihrer App mitteilt, dass ein gescanntes Bild vorliegt. Ich bin nicht vertraut mit VintaSoft .net control und Atalasoft DotTwain Image Capture, aber bei einigen Twain-Sdks gibt es OnPostTransfer/OnPostAllTransfer-Ereignisse, die nach jedem Scannen ausgelöst werden, so dass Sie Ihren Winservice "benachrichtigen" können

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X