在Java中使用带有WIA和com4j的COM对象

时间:2010-09-06 13:42:47

标签: java wia com4j

我是这方面的新手,我想问你是否可以向我推荐一些文章,例子等,以便在java应用程序中与扫描仪进行通信 我正在开发一个模块,应该与直接连接或在本地网络中连接的不同扫描仪进行通信...我希望WIA能够开始使用和com4j ..
感谢所有建议:)

编辑:我在这个Com4j tutorial中找到了一些信息,我需要从ocx文件生成一些java类型定义。
如果我理解它,这些生成的类将是我的客户端使用com4j获取扫描程序。但是我用的是什么ocx / dll文件呢? 有人有想法吗?

更新1:所以我设法让库生成包装类,它是wiaaut.dll(Windows Image Acquisition Automation Library),然后通过ClassFactory我创建了一个DeviceManager实例,但其中没有设备......
如何让deviceManager在本地网络上查看扫描仪?

更新2:所以我发现,我的HP LaserJet 2840无法通过win7 64位网络扫描...现在这个问题已经回答了,我应该自己发布答案并设置它接受,或以其他方式关闭此Q?感谢

1 个答案:

答案 0 :(得分:9)

所以,我的HP LaserJet 2840无法通过win7 64位网络扫描

但是在java中使用扫描仪或数码相机等com对象的步骤是:

  1. MS Download center下载并安装oleviewer,在类别库中,找到Microsoft Windows Image Acquisition Library或类似内容并复制文件的位置(它应该是System32目录)
  2. 然后从com4j website下载com4j jar文件并使用显示heretlbimp.jar。它将为您生成对象,现在只需使用ClassFactory创建对象来处理com对象并继续进行实验;)
  3. PS:也许现在很容易但我很难学会这个:)