TWAIN驱动介绍-Access使用扫描仪 或高拍仪必学
作者:tmtony-Access中国
最近帮客户开发扫描仪,潜心研究了各种扫描仪的程序控制 编程的相关方法,包括Access VBA VB C# 等相关代码。
走了不少弯路,为了方便大家快速学会使用Access 及VBA来控制Scanner 扫描仪 扫描器,或高拍仪等扫描设备。特抽些时间来写些教程:
首先来学习一些基础知识:
TWAIN驱动详解
TWAIN工作组是一个非盈利的国际组织。它旨在提供一个统一的标准接口,通过该接口就可以实现应用程序与图像输入设备间的通讯。其实该标准目前已经成为了应用程序与图像输入设备间通讯的事实标准。 TWAIN的文件组成
TWAIN共包括4个二进制文件。如果要使用该接口,就必须要保证他们被成功地安装在本地计算机上。 文件名 TWAIN_32.DLL
32位应用程序的支持文件,32位程序使用TWAIN通讯必须使用该文件。 TWAIN.DLL
16位应用程序的支持文件,16位程序使用TWAIN通讯必须使用该文件。 TWUNKER_32.EXE
实现32位应用程序与32位数据源进行通讯,它运行时不可见。 TWUNKER_16.EXE
实现32位应用程序与16位数据源进行通讯,它运行时不可见。 注意:在WindowsNT环境下16位数据源不能够正常工作。
在Windows操作系统中(Windows9x/2000/XP),Microsoft已经把这些文件作为系统文件随同操作系统一起发布了。你可以在Windows安装目录中查找到这些文件。如果我们要编程来实现对TWAIN的访问,还需要最重要的头文件。你通过访问该http://www.twain.org/devfiles/twain.h地址来获得TWAIN提供的头文件。 好了,现在就让我们来了解一下TWAIN的结构吧。 TWAIN的结构
TWAIN依靠三个组件协同完成与图像设备的通讯和数据传输工作,这三个组件就是Application、SourceManager和Source。
定义
TWAIN指TWAIN协议,是应用软件从计算机外设获取静态图像的国际标准。
目的
TWAIN协议为操作系统提供了软件支持,使得符合TWAIN协议的软件通过调用TWAIN协议接口就能从兼容TWAIN协议的外设上获取静态图像,而不必考虑外设的功能差别。
比如,Photoshop是一款符合TWAIN协议要求的软件。在Photoshop中,通过点击菜单File|Select...(文件——导入……)可以选择不同的外设,然后点击菜单File|Acquire...弹出相应外设的TWAIN界面对话框,通过这个对话框可以设置图像的各种参数并获取图像。
覆盖范围
TWAIN协议覆盖的外设范围包括扫描仪、数码相机、数字音频和图像数据库(作为虚拟外设)等,TWAIN协议是一个开放协议,符合TWAIN协议的设备都可以向调用TWAIN接口的软件提供数据。
关键要素
Application - 软件必须使用TWAIN协议,从而获取图像或音频。
Source Manager - Source Manager管理应用程序和Source之间的交互,这个软件由TWAIN组织提供。
Data Source - TWAIN兼容的硬件驱动,这个软件通常在硬件驱动安装后再进行安装。
Hardware - 如扫描仪、数码相机、采集卡等。[1]
版本介绍
TWAIN协议全称Toolkit Without An Interesting Name,无注名工具包协议,由TWAIN工作组负责开发,最新版本是2.3,发布于2013年11月21日。支持win7 32位及64位系统,支持Linux/Unix, Mac OS X[2] 系统。
有关符合TWAIN协议软件和硬件开发请访问TWAIN工作组网站。
32位Windows下TWAIN协议软件接口模块是twain_32.dll,由Windows操作系统自带,并且可以随兼容TWAIN的软件和硬件驱动自由分发。