JAVA的TWAIN / WIA实施
我正在研究与扫描仪交互的应用程序(Java Applet)。 我知道我需要一个Twain库或WIA库才能在Windows中运行它。 但我不确定两者的区别是什么? 我想使用这个库:
http://thorntonzone.com/manuals/Compression/Fax,%20IBM%20MMR/MMSC/mmsc/uk/co/mmscomputing/device/twain/index.html
JAR文件链接坏了所以我从这里得到它。 http://rsbweb.nih.gov/ij/plugins/twain-scan.html
和DLL来自这里: http : //sourceforge.net/projects/twain-dsm/? source = dlp
但是,它没有检测到来源。 这是错误日志:
http://pastebin.com/cB9gL0ip
我在64位机器上。 有人有成功吗?
TWAIN规范太长,无法遵循,我没有找到任何有关WIA实施的资源。
非常感谢任何帮助/指针/资源。
使用相同的位模式
对于java中的twain设备控制, 所有组件都需要处于相同的模式。 即JRE,Twain DSM(源管理器)和Twain驱动程序(扫描仪驱动程序) 都需要是32位或全部64位。 没有混合。
64位Windows的默认安装包含Twain DSM的32位模式。 而且你说你已经下载了64位DSM。 扫描仪的驱动程序可能是32位,这就是无法找到它的原因。
你有2个选择:
保持全部64位。
- 使用64位TWAINDSM.DLL。
- 确保您的JRE / JDK是64位。
- 确保您的扫描仪具有64位驱动程序。
我的扫描仪没有可用的64位驱动程序,但我使用64位“虚拟扫描仪”测试了64位配置,并且它运行正常。
保持全部32位(推荐)
- 使用32位TWAINDSM.DLL。
- 确保您的JRE / JDK是32位。
- 使用扫描仪的32位驱动程序(可能是默认驱动程序)。
您可以在此处下载32位和64位twain虚拟扫描仪 。
注意:我提到了JDK,因为如果您从IDE运行代码,它可能指向与系统默认值不同的JRE。 真实的故事发生在我身上。