针对JAVA的TWAIN/WIA实施

Mo3*_*o3z 7 java 64-bit wia twain image-scanner

我正在开发一个与扫描仪交互的应用程序(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实施的资源.

非常感谢任何帮助/指针/资源.

Jon*_*ler 9

使用相同的位模式

对于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.真实的故事发生在我身上.