【发布时间】:2016-07-04 14:32:10
【问题描述】:
是否可以使用一个 twain 驱动程序来管理对两台不同多功能打印机的并发请求?
我的意思是,如果我有两个 MFP,我可以使用同一个 twain 驱动程序并行执行两个扫描请求吗?
【问题讨论】:
标签: twain
是否可以使用一个 twain 驱动程序来管理对两台不同多功能打印机的并发请求?
我的意思是,如果我有两个 MFP,我可以使用同一个 twain 驱动程序并行执行两个扫描请求吗?
【问题讨论】:
标签: twain
这取决于您的驱动程序是否支持。
来自TWAIN Spec 第 125 页: 如果应用程序尝试连接到仅支持单个连接且源已打开的 Source,则 Source 应以 TWRC_FAILURE 和 TWCC_MAXCONNECTIONS 响应。
同样来自第 212 页的规范: Source 负责管理这个,而不是 Source Manager(Source Manager 事先不知道 Source 将支持多少个连接)。
我使用 Fujitsu fi-7260 扫描仪对此进行了测试,发现 Twacker 出现 TWCC_MAXCONNECTIONS 错误:
【讨论】:
这是可能的。 TWAIN 的原因只是位于应用程序和提供给它的图像之间。 想象一下下面几行的场景:
1) 用户点击了扫描按钮。 2) 您发起网络层调用以启动扫描作业。 3) 现在改为一台打印机,您从两个线程开始在两台打印机上扫描作业。 4) 假设这些线程中的每一个都将原始 BMP 数据填充到共享的单个数据结构中。 5) 一旦两个线程都完成了对共享数据结构的迭代,以通过 XFERIMAGE 调用将图像传递给应用程序。
基本思想是在幕后创建两台打印机的抽象。
如果我对您的问题的理解不正确或您需要其他说明,请告诉我。
【讨论】:
如果您以上述方式实现它,它通常只适用于两个不同的 MFP,因为大多数 TWAIN 驱动程序不会同时支持两个不同的 USB 设备。
【讨论】: