能否监听一个双路(可能是WIA)扫描仪?

5
我正在评估VintaSoft .net控件和Atalasoft DotTwain图像捕获。但是,我对大多数定义和关键字感到非常迷惑。
因此,我问这个问题是因为我认为我在做白日梦。是否可能听取或让扫描仪告诉我的应用程序有一个扫描的图像,我可以处理它?
这个想法是有一个winservice在等待扫描仪扫描一些东西,当发生这种情况时处理图像。
4个回答

5
我只使用过TWAIN和WIA的本机接口,所以我不能保证它们上面的其他层。然而,关于TWAIN,确实存在一些机制允许应用程序被通知来捕获数据。我相信这是通过STI.dll处理的,这是一个可在Windows 2000+上使用的旧库。查找StiCreateInstance以获取更多信息。
如果您选择使用WIA路径,那么它会简单得多。您可以注册以接收事件,例如“扫描”按钮或“图像创建”事件。然后,您只需要处理这些事件即可获得图像。其中最困难的部分是找到实现所需功能的硬件。
Microsoft有一个WIA自动化库,使许多这些任务变得更加简单。它可以由脚本语言使用。

4
我们最近将TWAIN集成到我们的一个应用程序中。我们考虑过WIA,但最终TWAIN更加灵活,可以连接到诸如VRS(Virtual ReScan)之类的应用程序。最终它是“拉”的方式,您请求扫描,然后等待扫描仪。 VRS的一个好处是它是我们的TWAIN调用和设备之间的软件,因此它会处理一些事情,其中之一是它可以等待纸张被放入装订盒进行扫描,几乎永远都不会停止。这允许“开始”扫描作业,然后等待纸张,还允许将其他页面添加到单元中。
如果您正在寻找更多“推”导向的内容,那么请查看支持ftp / smb / email等的扫描仪或MFP,并让其进行扫描,您只需监视作业所在的文件夹或POP3邮箱即可。
您还可以查看包括(有时需要额外费用的)工具以帮助完成的MFP设备,例如Xerox的Template,Lexmark的LDSS,HP的DSS。
这是我们基于以下.NET TWAIN代码进行扫描仪集成的链接: http://www.codeproject.com/KB/dotnet/twaindotnet.aspx

3

[编辑 - 如果是我,我会看看adzm的答案;-p]

据我所知,普通的TWAIN是从扫描仪“拉取”,而不是“推送”。 我可能错了...

我希望这样的接口确实存在于高端,高容量的扫描仪(您知道,尺寸像台球桌一样的那些扫描仪)中 - 但不适用于常规消费级扫描仪(据我所知)。

对于与.NET(以及在此之前的COM)一起使用,我总是使用ImageMan


0

扫描仪可以告诉您的应用程序已经扫描了图像。我不熟悉VintaSoft .net控件和Atalasoft DotTwain Image Capture,但是在某些twain sdks中,每次扫描后都会触发OnPostTransfer/OnPostAllTransfer事件,以便您可以“通知”您的winservice。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接