JP4876837B2 - スキャナドライバ、及びスキャナドライバ連携装置 - Google Patents

スキャナドライバ、及びスキャナドライバ連携装置 Download PDF

Info

Publication number
JP4876837B2
JP4876837B2 JP2006278670A JP2006278670A JP4876837B2 JP 4876837 B2 JP4876837 B2 JP 4876837B2 JP 2006278670 A JP2006278670 A JP 2006278670A JP 2006278670 A JP2006278670 A JP 2006278670A JP 4876837 B2 JP4876837 B2 JP 4876837B2
Authority
JP
Japan
Prior art keywords
driver
command
scanner
reading device
reading
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006278670A
Other languages
English (en)
Other versions
JP2008098994A (ja
Inventor
徹 茅野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
Fujifilm Business Innovation Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Xerox Co Ltd, Fujifilm Business Innovation Corp filed Critical Fuji Xerox Co Ltd
Priority to JP2006278670A priority Critical patent/JP4876837B2/ja
Publication of JP2008098994A publication Critical patent/JP2008098994A/ja
Application granted granted Critical
Publication of JP4876837B2 publication Critical patent/JP4876837B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Facsimiles In General (AREA)

Description

本発明は、スキャナドライバ、及びスキャナドライバ連携装置に関し、特に、複数のスキャナドライバの機能を一つのスキャナドライバを通じて利用するスキャナドライバ、及びスキャナドライバ連携装置に関する。
原稿などをスキャンして画像を読み取るスキャナは、SCSI(Small Computer System Interface)やUSB(Universal Serial Bus)などを介してPC(Personal Computer)などの情報処理装置と直接接続して利用されることが多く、また、スキャナやスキャナとしての機能を備えた複合機などをLAN(Local Area Network)などのネットワークを介して情報処理装置と接続し、ネットワークスキャナとして利用する機会もオフィスなどで近年増加している。
そして、スキャナや複合機などを制御して原稿の画像データを取得するスキャナドライバは、TWAINドライバが業界標準となっており、多くのメーカはこの方式に準拠したスキャナドライバを提供している。
しかし、スキャナとして利用可能な製品(デバイス)が増えるに従って、スキャナドライバの種類や、各スキャナドライバでサポートする機種の数が増加し、開発に係る負担が増大する傾向にある。
そこで、例えば、動的なライブラリであるデータソースをデバイス毎に設け、デバイスに関する情報をそれぞれ対応するデータソースに格納し、画像アプリケーションとスキャナドライバとのコマンドのやり取りをデータソースを介して行うことによって、画像アプリケーションに対するスキャナドライバの共通化を図る方法が提案されている(例えば、特許文献1参照)。
しかし、この方式では、デバイス毎にスキャナドライバが必要となる点は従来と変わらず(図8(a)参照)、デバイスの数が増えるとスキャナドライバを選択する際に、画面がスクロールするほど多数のスキャナドライバが表示される可能性があり、デバイスを容易に切り替えるために大変な手間がかかっていた。
また、ネットワークスキャナでは、例えば、同じスキャナドライバを利用することが可能なデバイス毎にTWAINデータソースを提供する方式がある(図8(b)参照)。この方式では、ユーザがスキャナドライバを選択すると、該スキャナドライバが対応するデバイスを自発的にネットワークから検出して一覧表示するため、ユーザがこの中から利用したいデバイスを選択することでデバイスの切り替えを行なうことができる。
特開平10−275223号公報
デバイスにアクセスする手段が大きく変わらなければ、この方式で殆ど全てのデバイスにアクセスできるスキャナドライバを提供することが可能である。
しかし、例えば、通信プロトコルの変更や物理的なアクセス方法の変更など、デバイスにアクセスする方式が変更されると、開発工数の増大や操作性の変化などから既存のスキャナドライバを拡張して開発できない場合がある。
このため、既存のスキャナドライバとは全く別の新たなスキャナドライバを開発することとなり、ユーザが利用したいデバイスを選択する場合、既存のスキャナドライバを選べば良いのか、新たなスキャナドライバを選べば良いのかを事前に知っていなければならず、先に述べた特許文献1と同様の問題が発生する。
そこで、本発明では、ユーザの操作性に影響を与えることなく、複数のスキャナドライバの機能を一つのスキャナドライバを通じて操作できるスキャナドライバを提供し、使い勝手を向上させることが可能なスキャナドライバ、及びスキャナドライバ連携装置を提供することを目的とする。
本発明に係るスキャナドライバは、画像を処理するアプリケーションから受信したコマンドに基づき画像読み取り機能を備えた読み取りデバイスを複数のスキャナドライバのうちの該読み取りデバイスをサポートするスキャナドライバにより駆動して画像を読み取る処理をコンピュータに実行させるスキャナドライバであって、前記コンピュータに備えられている前記複数のスキャナドライバの何れかでサポートする読み取りデバイスの中から画像の読み取り時に使用する読み取りデバイスを設定する第1のデバイス設定手段と、前記複数のスキャナドライバのうちから前記コマンドを指示するために選択されたコマンド指示ドライバを用いて前記アプリケーションから前記コマンドを受け付けた際、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが前記コマンド指示ドライバでサポートする読み取りデバイスでないと判定された場合、該読み取りデバイスをサポートするスキャナドライバであるサポートドライバに対して当該読み取りデバイスの設定を要求する設定要求手段と、前記設定要求手段からの前記設定要求に基づき、当該サポートドライバがサポートする読み取りデバイスを画像の読み取り時に使用する読み取りデバイスとして設定する第2のデバイス設定手段と、前記コマンド指示ドライバを用いて前記アプリケーションから前記コマンドを受け付けることにより、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが前記コマンド指示ドライバでサポートする読み取りデバイスであると判定されると、前記アプリケーションから受け付けたコマンドを前記読み取りデバイスを用いて処理し、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが他のスキャナドライバがサポートする読み取りデバイスであると判定されると、前記読み取りデバイスをサポートする前記サポートドライバに対して前記設定要求手段により前記設定要求を送出させた後、前記コマンドを転送し、該サポートドライバからコマンドの処理結果を受信することによってコマンドの処理を行うコマンド処理手段と、前記コマンドの処理結果を前記アプリケーションに送信する処理結果送信手段とをコンピュータに実行させることを特徴とする。
また、前記第1のデバイス設定手段は、前記スキャナドライバの何れかでサポートされる読み取りデバイスの一覧を表示し、前記読み取りデバイスの選択を受け付けることを特徴とする。
加えて、前記読み取りデバイスに関する情報を記憶すると共に、該読み取りデバイスを他のスキャナドライバがサポートする場合は、前記サポートドライバに関する情報を第1の記憶手段に記憶させる処理をさらにコンピュータに実行させ、前記コマンド処理手段は、前記第1の記憶手段に記憶されている情報に基づいて前記読み取りデバイスを判断し、該読み取りデバイスに応じたコマンドの処理を行うことを特徴する。
本発明に係るスキャナドライバ連携装置は、画像を処理するアプリケーションと、前記アプリケーションから受信したコマンドに基づく画像読み取り機能を備えた読み取りデバイスでの画像読み取り処理をサポートする複数のスキャナドライバから成るスキャナ駆動部とを備え、前記スキャナ駆動部は、前記複数のスキャナドライバの何れかでサポートする読み取りデバイスの中から画像の読み取り時に使用する読み取りデバイスを設定する第1のデバイス設定手段と、前記複数のスキャナドライバのうちから前記コマンドを指示するために選択されたコマンド指示ドライバを用いて前記アプリケーションから前記コマンドを受け付けた際、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが前記コマンド指示ドライバでサポートする読み取りデバイスでないと判定された場合、該読み取りデバイスをサポートするスキャナドライバであるサポートドライバに対して当該読み取りデバイスの設定を要求する設定要求手段と、前記設定要求手段からの前記設定要求に基づき、当該サポートドライバがサポートする読み取りデバイスを画像の読み取り時に使用する読み取りデバイスとして設定する第2のデバイス設定手段と、前記コマンド指示ドライバを用いて前記アプリケーションから前記コマンドを受け付けることにより、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが前記コマンド指示ドライバでサポートする読み取りデバイスであると判定されると、前記アプリケーションから受け付けたコマンドを前記読み取りデバイスを用いて処理し、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが他のスキャナドライバがサポートする読み取りデバイスであると判定されると、前記読み取りデバイスをサポートする前記サポートドライバに対して前記設定要求手段により前記設定要求を送出させた後、前記コマンドを転送し、該サポートドライバからコマンドの処理結果を受信することによってコマンドの処理を行うコマンド処理手段と、前記コマンドの処理結果を前記アプリケーションに送信する処理結果送信手段とを具備することを特徴とする。
また、前記第1のデバイス設定手段は、前記スキャナドライバの何れかでサポートされる読み取りデバイスの一覧を表示し、前記読み取りデバイスの選択を受け付けることを特徴とする。
加えて、前記スキャナ駆動部は、前記読み取りデバイスに関する情報を記憶すると共に、該読み取りデバイスを他のスキャナドライバがサポートする場合は、前記サポートドライバに関する情報を第1の記憶手段に記憶させる処理を更に実行し、前記コマンド処理手段は、前記第1の記憶手段に記憶されている情報に基づいて前記読み取りデバイスを判断し、該読み取りデバイスに応じたコマンドの処理を行うことを特徴する。
本発明では、ユーザの使い勝手を低下させることなく効率的にスキャナドライバを開発することができる。
図1は、本発明おけるスキャナドライバを備えた情報処理装置(スキャナドライバ連携装置)を用いて構成した画像読み取りシステムの構成の一例を示す該略ブロック図である。
同図に示すように情報処理装置10は、原稿をスキャンして読み取った画像を利用するアプリケーション11と、スキャナやスキャナ機能を備えた複合機など、スキャナとして機能するデバイス20(20−1、20−2、20−3、20−4、20−5)を制御するための処理を行うスキャナドライバ12(12−1、12−2、12−3)と、アプリケーション11でスキャナドライバ12を利用するための処理を行うスキャンインターフェイス13とを備えて構成され、図示しない通信インターフェイス、及びLANなどのネットワーク30を介して各デバイス20と接続している。
ここで、スキャナドライバ(1)12−1は、デバイス(1)20−1をサポートし、スキャナドライバ(2)12−2は、デバイス(2)20−2を、スキャナドライバ(3)12−3は、デバイス(3)20−3、デバイス(4)20−4、及びデバイス(5)20−5をサポートしている。
なお、アプリケーション11、スキャナドライバ12、スキャンインターフェイス13は、情報処理装置10にインストールされたソフトウェアなどにより実現される部分であり、各スキャナドライバは、独立してインストールやアンインストールを行なうことができる。
上記構成を用いて情報処理装置10は、アプリケーション11がスキャンインターフェイス13にスキャナドライバ12の選択を指示すると、スキャンインターフェイス13は、インストール済みのスキャナドライバ12を検出・一覧表示して、スキャナドライバの選択をユーザに促し、ユーザが選択した任意のスキャナドライバを画像読み取り時に利用するスキャナドライバ(1)12−1として設定する。
また、スキャナドライバ(1)12−1は、自ドライバがサポートしているデバイスはもとより、デバイス(2)20−2、デバイス(3)20−3など、他ドライバがサポートしているデバイスを一覧表示して、デバイスの選択をユーザに促し、自ドライバがサポートするデバイス(1)20−1が選択されると、当該デバイスを記憶し、画像の読み取り時に利用するデバイスとして設定する。
一方、他ドライバが選択するデバイス、例えば、スキャナドライバ2がサポートするデバイス2が選択されると、スキャナドライバ2及びデバイス2を自ドライバに記憶すると共に、スキャナドライバ2に画像読み取り時に利用するデバイスとしてデバイス2を設定する。
そして、アプリケーション11からスキャンインターフェイス13に画像読み取り指示のコマンドを送信すると、スキャンインターフェイス13は、予め設定されているスキャナドライバ(1)12−1を起動する。
スキャナドライバ1は、自ドライバがサポートするデバイス(1)20−1を画像読み取り時に利用するデバイスとして設定している場合は、アプリケーションからのコマンド(COM)を自ドライバで処理する。
一方、スキャナドライバ2(他ドライバ)がサポートするデバイス2を画像読み取り時に利用するスキャナドライバ、及びデバイスとして設定している場合は、通常のスキャンインターフェイスと同様の手段を使ってスキャナドライバ2を起動して、コマンド(COM)の処理を依頼し、スキャナドライバ2におけるコマンドの処理結果(RES)をスキャンインターフェイスを通じてアプリケーションに結果(RES)を通知する。
なお、スキャナドライバ1からスキャナドライバ2に依頼するコマンドはスキャンインターフェイスを介してアプリケーションから指示されるコマンドそのものであり、スキャナドライバ2にとっては、スキャンインターフェイスからコマンドを受け取る際の動作と同様である。
また、図1では、情報処理装置と各デバイスがネットワークを介して接続しているが、情報処理装置と各デバイスとの接続はネットワーク接続に限られるものではない。例えば、図2(a)は、特定のPCやサーバに100BASE−TなどのLANで接続されたネットワークスキャナと、USBケーブルで接続されたスキャナが混在する例であり、LAN、USB毎のスキャナドライバを提供し、後述する図3のネットワークアクセス部48、58を、USBを介してデバイスにアクセスするための処理を行うUSBデバイスアクセス部などに置き換えることにより、実施することができる。
さらに、図2(b)に一例を示すように、異なるプロトコルを利用するデバイスが混在してもよく、それぞれのプロトコルに対応するスキャナドライバを提供し、後述する図3のネットワークアクセス部48、58をそれぞれの通信プロトコルに対応するものに置き換えることにより、実施することができる。
以下、本発明に係るスキャナドライバについて、実施例を用いて詳細に説明する。
図3は、スキャナドライバの構成の一例を示す機能ブロック図である。
なお、同図では、スキャナドライバ(1)12−1がアプリケーション11で使用するスキャナドライバであるとスキャンインターフェイス13において設定されているものとする。
図3に示すようにスキャナドライバ12−1は、スキャナ選択部40と、GUI(Graphical User Interface)提供部41と、転送部42と、記憶部43と、API(Application Program Interface)部44と、コマンド処理部45と、読み取り部46と、画像処理部47と、ネットワークアクセス部48とを具備して構成されている。
スキャナ選択部40は、アプリケーション11からの読み取り指示(コマンド)を実行するデバイス(スキャナ)を選択するための処理を行う。具体的には、例えば、アプリケーション11からの読み取り指示(コマンド)を受け付けると、記憶部43に記憶されているスキャナ情報を検索し、該スキャナ情報に基づいてデバイスを選択する。この際、他のスキャナドライバに対応するデバイスが選択されると、該デバイスに対応するスキャナドライバを起動させ、アプリケーションから受け付けたコマンドを送信する。また、記憶部43にスキャナ情報が記憶されていない場合は、情報処理装置にGUIを表示し、ユーザによるデバイス(スキャナ)の選択を受け付ける。
GUI提供部41は、デバイスの選択を受け付けるためのインターフェイスをユーザに提供するための処理を行う。具体的には、例えば、自らのスキャナドライバで対応可能なデバイス、及び自らのスキャナドライバを介して連携する他のスキャナドライバで対応可能なデバイスの一覧などを表示するGUIを作成する。なお、GUIは、図形を多用することなく、主に文字又は文字のみからなるものであってもよい。
転送部42は、他のスキャナドライバとの間でコマンドやコマンドの処理結果を送受信するための処理を行う。
記憶部43は、デバイスに関する情報(スキャナ情報)を記憶する。具体的には、例えば、スキャナ選択部40で選択されたデバイスや該デバイスに対応するスキャナドライバ(サポートドライバ)などに関する情報(スキャナ情報)を記憶する。
API部44は、自らのスキャナドライバで対応可能なデバイスの検索、利用するデバイスの設定、設定されているデバイスの解除など、所定の処理を行う。具体的には、例えば、GUI提供部41からデバイスの検索が指示されると、対応可能なデバイスを検索し、検索結果を通知する。また、GUI提供部41からデバイスの設定が指示されると、記憶部43にスキャナ情報を書き込み、設定解除が指示されると記憶部43からスキャナ情報を削除する。
コマンド処理部45は、アプリケーションから受け付けた読み取り指示(コマンド)を実行するための処理を行う。
読み取り部46は、デバイス20−1で画像の読み取りを行うための処理を行う。
画像処理部47は、原稿から読み取った画像を適切なファイル形式に変換するなどの処理を行う。
ネットワークアクセス部48は、ネットワークを介してデバイス20−1とアクセスするための処理を行う。
次に、スキャナドライバ12−2は、スキャナ選択部50と、GUI提供部51と、転送部52と、記憶部53と、API部54と、コマンド処理部55と、読み取り部56と、画像処理部57と、ネットワークアクセス部58とを具備して構成されている。
なお、スキャナ選択部50、GUI提供部51、転送部52、記憶部53、API部54、コマンド処理部55、読み取り部56、画像処理部57、ネットワークアクセス部58は、それぞれ、スキャナ選択部40、GUI提供部41、転送部42、記憶部43、API部44、コマンド処理部45、読み取り部46、画像処理部47、ネットワークアクセス部48に対応するものであり、その詳細な説明を省略する。
そして、スキャナドライバ(1)12−1とスキャナドライバ(2)12−2は、それぞれ独立して動作することが可能なスキャナドライバであり、互いに異なるデバイス20−1、20−2を制御するための処理(サポート)を行う。
図4は、アプリケーション11で利用するデバイス20を設定する際のスキャナドライバにおける処理の流れの一例を示すフローチャートである。
まず、スキャナドライバ(1)12−1のスキャナ選択部40は、例えば、画像の読み取りを指示するGUI(図5参照)を表示し、「スキャナ変更」ボタンがマウスポインタでクリックされるなどして、アプリケーション11で利用するデバイス20の設定変更(設定要求)を受け付ける(ステップ100)と、デバイスの設定を開始し、自ドライバがサポートするデバイスをAPI部44で検索し、GUI提供部41に通知する(ステップ101)。
GUI提供部41は、連携する(自ドライバがコマンドなどを中継する)他のスキャナドライバがあるか否かの判断を行い(ステップ102)、連携する他のドライバがないと判断する(ステップ102でNO)と、自ドライバでサポートするデバイスを一覧表示するためのGUIを作成し、情報処理装置のディスプレイなどに表示するための処理を行う(ステップ103)。
一方、ステップ102で、連携する他のスキャナドライバ(以下、「スキャナドライバ2」という)があると判断する(ステップ102でYES)と、スキャナドライバ2のAPI部54に当該スキャナドライバでサポート可能なデバイスの通知を要求する(ステップ104)。
スキャナドライバ2のAPI部54は、自ドライバがサポートするデバイスを検索し(ステップ105)、スキャナドライバ1のGUI提供部41に検索結果を通知する(ステップ106)。
GUI提供部41は、自ドライバ、及びスキャナドライバ2(他ドライバ)でサポートするデバイスを一覧表示するためのGUIを作成し、情報処理装置のディスプレイなどに表示するための処理を行う(ステップ103)。
ここで、デバイス(デバイス1又は2)が選択されると、スキャナ選択部40は、選択されたデバイスのスキャナ情報(スキャナの識別情報、スキャナをサポートするスキャナドライバに関する情報など)を記憶部43に記憶して、当該デバイスを画像読み取り時に使用するデバイスとして設定する(ステップ107)。
そして、設定されたデバイスがスキャナドライバ1(自ドライバ)でサポートするデバイス(デバイス1)である場合は(ステップ108でYES)、デバイスの設定を終了する。
一方、設定されたデバイスがスキャナドライバ2(他ドライバ)でサポートするデバイス(デバイス2)である場合は(ステップ108でNO)、デバイスの設定要求をスキャナドライバ2に送信して(ステップ110)、スキャナドライバ1におけるデバイスの設定を終了し(ステップ109)、スキャナドライバ1からデバイスの設定要求が送信されたスキャナドライバ2のAPI部54は、設定が要求されたデバイスのスキャナ情報を記憶部53に記憶して、当該デバイス(デバイス2)を画像読み取り時に使用するデバイスとして設定する(ステップ211)。
図6は、原稿をデバイスでスキャンして画像の読み取りを行う際のスキャナドライバにおける処理の流れの一例を示すフローチャートである。
まず、アプリケーション11から送信された画像の読み取り指示(コマンド)をスキャナドライバ1のスキャナ選択部40で受け付ける(ステップ200)と、スキャナ選択部40は、記憶部43からスキャナ情報を読み出し、画像読み取り時に使用するデバイスが設定されているか否かの判断を行う(ステップ201)。
そして、デバイスが設定されていると判断する(ステップ201でYES)と、当該デバイスを自ドライバ(スキャナドライバ1)でサポートしているか否かの判断を行う(ステップ202)。
また、ステップ201で、デバイスが設定されていないと判断する(ステップ201でNO)と、デバイスの設定を開始し、自ドライバがサポートするデバイスをAPI部44で検索し、GUI提供部41に通知する(ステップ203)。
ここで、GUI提供部41は、連携する(自ドライバがコマンドなどを中継する)他のスキャナドライバがあるか否かの判断を行い(ステップ204)、連携する他のドライバがないと判断する(ステップ204でNO)と、自ドライバでサポートするデバイスを一覧表示するためのGUIを作成し、情報処理装置のディスプレイなどに表示するための処理を行う(ステップ205)。
一方、ステップ204で、連携する他のスキャナドライバ(以下、「スキャナドライバ2」という)があると判断する(ステップ204でYES)と、スキャナドライバ2のAPI部54に当該スキャナドライバでサポート可能なデバイスの通知を要求する(ステップ206)。
スキャナドライバ2のAPI部54は、自ドライバがサポートするデバイスを検索し(ステップ207)、スキャナドライバ1のGUI提供部41に検索結果を通知する(ステップ208)。
GUI提供部41は、自ドライバ、及びスキャナドライバ2(他ドライバ)でサポートするデバイスを一覧表示するためのGUIを作成し、情報処理装置のディスプレイなどに表示するための処理を行う(ステップ205)。
ここで、デバイス(デバイス1又は2)が選択されると、スキャナ選択部40は、選択されたデバイスのスキャナ情報(スキャナの識別情報、スキャナをサポートするスキャナドライバに関する情報など)を記憶部43に記憶して、当該デバイスを画像読み取り時に使用するデバイスとして設定する(ステップ209)。
そして、設定されたデバイスがスキャナドライバ1(自ドライバ)でサポートするデバイス(デバイス1)である場合は(ステップ210でYES)、デバイスの設定を終了し、設定されたデバイスがスキャナドライバ2(他ドライバ)でサポートするデバイス(デバイス2)である場合は(ステップ210でNO)、デバイスの設定要求をスキャナドライバ2に送信して(ステップ211)、デバイスの設定を終了する。
また、スキャナドライバ1からデバイスの設定要求が送信される(ステップ211)と、デバイスの設定要求を受信したスキャナドライバ2のAPI部54は、設定が要求されたデバイスのスキャナ情報を記憶部53に記憶して、当該デバイス(デバイス2)を画像読み取り時に使用するデバイスとして設定する(ステップ212)。
そして、自ドライバ(スキャナドライバ1)でサポートするデバイス(デバイス1)が記憶部43に設定されている(ステップ202でYES)と、コマンド処理部45は、読み取り部46、画像処理部47、ネットワークアクセス部48を用いて、デバイス(1)20−1でコマンド(画像読み取り指示)を実行するための処理を行い(ステップ213)、コマンドの処理結果(画像データ)をスキャナ選択部40を介してアプリケーション11に送信する(ステップ214)。
一方、他ドライバ(スキャナドライバ2)でサポートするデバイス(デバイス2)が記憶部43に設定されている(ステップ202でNO)と、スキャナ選択部40は、スキャナドライバ2を起動させると共に、アプリケーション11からのコマンドをスキャナドライバ2のスキャナ選択部50に転送する(ステップ215)。
スキャナ選択部50は、記憶部53に設定されているデバイス(デバイス2)を画像の読み取りに使用するデバイスとして選択し、コマンド処理部55は、読み取り部56、画像処理部57、ネットワークアクセス部58を用いて、デバイス(2)20−2でコマンドを実行するための処理を行い(ステップ216)、コマンドの処理結果をスキャナ選択部50を介してスキャナドライバ1のスキャナ選択部40に送信する(ステップ217)。
そして、スキャナドライバ選択40は、スキャナドライバ2におけるコマンドの処理結果をアプリケーション11に送信する(ステップ214)。
このように本実施例では、単独で動作可能な複数のスキャナドライバが互いに連携し、画像の読み取りを行うデバイスをサポートしていないスキャナデバイスがアプリケーションから画像の読み取りを指示するコマンドを受信しても、当該デバイスをサポートするスキャナドライバにコマンドを転送し、処理を依頼するため、複数のスキャナドライバの機能を一つのスキャナドライバを通じて利用することができる。
また、ユーザは、互いに連携するスキャナドライバの何れかでサポートするデバイスであれば、何れのスキャナドライバを画像の読み取り時に使用するスキャナドライバとして設定しているかを意識することなく利用することが可能であり、ユーザの操作性や利便性を向上させることができる。
さらに従来は、スキャナドライバを選択した後、当該スキャナドライバがサポートするデバイスの中から画像の読み取りに利用するデバイスをユーザは選択しなければならなかった(図7(a)及び(b)参照)が、本発明では、スキャナドライバを選択した後にも、選択したスキャナドライバ、及び当該スキャナドライバと連携するスキャナドライバの何れかでサポートするデバイスの中から画像の読み取りに利用するデバイスを選択することが可能であり(図7(c)参照)、デバイスの選択に際しても、ユーザの操作性や利便性を向上させることができる。
本発明おけるスキャナドライバを備えた情報処理装置を用いて構成した画像読み取りシステムの構成の一例を示す該略ブロック図である。 情報処理装置と各デバイスとの接続方法の一例を示す該略ブロック図である。 スキャナドライバの構成の一例を示す機能ブロック図である。 デバイス設定時のスキャナドライバにおける処理の流れの一例を示すフローチャートである。 画像の読み取りを指示する際のアプリケーションにおけるGUIの一例を示す図である。 画像読み取り時のスキャナドライバにおける処理の流れの一例を示すフローチャートである。 デバイスを選択する際のGUIの一例を示す図である。 デバイス(スキャナ)とスキャナドライバとの関係を示す図である。
符号の説明
10…情報処理装置
11…アプリケーション
12…スキャナドライバ
13…スキャンインターフェイス
20…デバイス
30…ネットワーク
40、50…スキャナ選択部
41、51…GUI提供部
42、52…転送部
43、53…記憶部
44、54…API部
45、55…コマンド処理部
46、56…読み取り部
47、57…画像処理部
48、58…ネットワークアクセス部

Claims (6)

  1. 画像を処理するアプリケーションから受信したコマンドに基づき画像読み取り機能を備えた読み取りデバイスを複数のスキャナドライバのうちの該読み取りデバイスをサポートするスキャナドライバにより駆動して画像を読み取る処理をコンピュータに実行させるスキャナドライバであって、
    前記コンピュータに備えられている前記複数のスキャナドライバの何れかでサポートする読み取りデバイスの中から画像の読み取り時に使用する読み取りデバイスを設定する第1のデバイス設定手段と、
    前記複数のスキャナドライバのうちから前記コマンドを指示するために選択されたコマンド指示ドライバを用いて前記アプリケーションから前記コマンドを受け付けた際、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが前記コマンド指示ドライバでサポートする読み取りデバイスでないと判定された場合、該読み取りデバイスをサポートするスキャナドライバであるサポートドライバに対して当該読み取りデバイスの設定を要求する設定要求手段と、
    前記設定要求手段からの前記設定要求に基づき、当該サポートドライバがサポートする読み取りデバイスを画像の読み取り時に使用する読み取りデバイスとして設定する第2のデバイス設定手段と、
    前記コマンド指示ドライバを用いて前記アプリケーションから前記コマンドを受け付けることにより、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが前記コマンド指示ドライバでサポートする読み取りデバイスであると判定されると、前記アプリケーションから受け付けたコマンドを前記読み取りデバイスを用いて処理し、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが他のスキャナドライバがサポートする読み取りデバイスであると判定されると、前記読み取りデバイスをサポートする前記サポートドライバに対して前記設定要求手段により前記設定要求を送出させた後、前記コマンドを転送し、該サポートドライバからコマンドの処理結果を受信することによってコマンドの処理を行うコマンド処理手段と、
    前記コマンドの処理結果を前記アプリケーションに送信する処理結果送信手段と
    をコンピュータに実行させることを特徴とするスキャナドライバ。
  2. 前記第1のデバイス設定手段は、前記スキャナドライバの何れかでサポートされる読み取りデバイスの一覧を表示し、前記読み取りデバイスの選択を受け付けることを特徴とする請求項1記載のスキャナドライバ。
  3. 前記読み取りデバイスに関する情報を記憶すると共に、該読み取りデバイスを他のスキャナドライバがサポートする場合は、前記サポートドライバに関する情報を第1の記憶手段に記憶させる処理をさらにコンピュータに実行させ、
    前記コマンド処理手段は、前記第1の記憶手段に記憶されている情報に基づいて前記読み取りデバイスを判断し、該読み取りデバイスに応じたコマンドの処理を行うことを特徴する請求項1又は2記載のスキャナドライバ。
  4. 画像を処理するアプリケーションと、
    前記アプリケーションから受信したコマンドに基づく画像読み取り機能を備えた読み取りデバイスでの画像読み取り処理をサポートする複数のスキャナドライバから成るスキャナ駆動部と
    を備え、
    前記スキャナ駆動部は、
    前記複数のスキャナドライバの何れかでサポートする読み取りデバイスの中から画像の読み取り時に使用する読み取りデバイスを設定する第1のデバイス設定手段と、
    前記複数のスキャナドライバのうちから前記コマンドを指示するために選択されたコマンド指示ドライバを用いて前記アプリケーションから前記コマンドを受け付けた際、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが前記コマンド指示ドライバでサポートする読み取りデバイスでないと判定された場合、該読み取りデバイスをサポートするスキャナドライバであるサポートドライバに対して当該読み取りデバイスの設定を要求する設定要求手段と、
    前記設定要求手段からの前記設定要求に基づき、当該サポートドライバがサポートする読み取りデバイスを画像の読み取り時に使用する読み取りデバイスとして設定する第2のデバイス設定手段と、
    前記コマンド指示ドライバを用いて前記アプリケーションから前記コマンドを受け付けることにより、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが前記コマンド指示ドライバでサポートする読み取りデバイスであると判定されると、前記アプリケーションから受け付けたコマンドを前記読み取りデバイスを用いて処理し、前記第1のデバイス設定手段により設定されている前記読み取りデバイスが他のスキャナドライバがサポートする読み取りデバイスであると判定されると、前記読み取りデバイスをサポートする前記サポートドライバに対して前記設定要求手段により前記設定要求を送出させた後、前記コマンドを転送し、該サポートドライバからコマンドの処理結果を受信することによってコマンドの処理を行うコマンド処理手段と、
    前記コマンドの処理結果を前記アプリケーションに送信する処理結果送信手段と
    を具備することを特徴とするスキャナドライバ連携装置。
  5. 前記第1のデバイス設定手段は、前記スキャナドライバの何れかでサポートされる読み取りデバイスの一覧を表示し、前記読み取りデバイスの選択を受け付ける
    ことを特徴とする請求項4記載のスキャナドライバ連携装置。
  6. 前記スキャナ駆動部は、前記読み取りデバイスに関する情報を記憶すると共に、該読み取りデバイスを他のスキャナドライバがサポートする場合は、前記サポートドライバに関する情報を第1の記憶手段に記憶させる処理を更に実行し、
    前記コマンド処理手段は、前記第1の記憶手段に記憶されている情報に基づいて前記読み取りデバイスを判断し、該読み取りデバイスに応じたコマンドの処理を行う
    ことを特徴する請求項4又は5記載のスキャナドライバ連携装置。
JP2006278670A 2006-10-12 2006-10-12 スキャナドライバ、及びスキャナドライバ連携装置 Expired - Fee Related JP4876837B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006278670A JP4876837B2 (ja) 2006-10-12 2006-10-12 スキャナドライバ、及びスキャナドライバ連携装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006278670A JP4876837B2 (ja) 2006-10-12 2006-10-12 スキャナドライバ、及びスキャナドライバ連携装置

Publications (2)

Publication Number Publication Date
JP2008098994A JP2008098994A (ja) 2008-04-24
JP4876837B2 true JP4876837B2 (ja) 2012-02-15

Family

ID=39381372

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006278670A Expired - Fee Related JP4876837B2 (ja) 2006-10-12 2006-10-12 スキャナドライバ、及びスキャナドライバ連携装置

Country Status (1)

Country Link
JP (1) JP4876837B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8456715B2 (en) 2009-08-19 2013-06-04 Canon Denshi Kabushiki Kaisha Information reading system for reading information on document
JP5054078B2 (ja) * 2009-08-31 2012-10-24 キヤノン電子株式会社 情報読取装置、画像読取装置、情報処理装置、及び情報読取システム、並びに情報読取処理プログラム
JP5129213B2 (ja) * 2009-08-19 2013-01-30 キヤノン電子株式会社 画像読取システム、コンピュータプログラムおよび情報処理装置
JP5982738B2 (ja) * 2011-04-15 2016-08-31 株式会社リコー 画像処理プログラム、画像処理装置、及び記憶媒体
JP2012213230A (ja) * 2012-07-24 2012-11-01 Canon Electronics Inc 情報読取装置、画像読取装置、情報処理装置、及び情報読取システム、並びに情報読取処理プログラム
JP5395237B2 (ja) * 2012-09-14 2014-01-22 キヤノン電子株式会社 画像読取システム、コンピュータプログラムおよび情報処理装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3302112B2 (ja) * 1993-06-28 2002-07-15 キヤノン株式会社 複合通信制御装置
JP2003281013A (ja) * 2002-03-22 2003-10-03 Canon Inc 情報処理装置、情報処理システム、情報処理方法、記憶媒体、及びプログラム
JP4299994B2 (ja) * 2002-04-18 2009-07-22 シャープ株式会社 複合デバイスシステム
JP4760460B2 (ja) * 2006-03-13 2011-08-31 ブラザー工業株式会社 スキャナ制御システム、およびスキャナドライバプログラム

Also Published As

Publication number Publication date
JP2008098994A (ja) 2008-04-24

Similar Documents

Publication Publication Date Title
US20100328689A1 (en) Host device and image forming apparatus controlled by host device, and peripheral device control method
JP4240690B2 (ja) 情報処理装置と情報処理方法、及び情報処理システム、並びに記録媒体
KR101782998B1 (ko) 화상 형성 장치의 어플리케이션을 개발하는 방법 및 장치
US7831969B2 (en) Driver installing system for network devices
US8520267B2 (en) Host apparatus and control method thereof, and image reading apparatus controlled by host apparatus
US8649030B2 (en) Controlling an information processing apparatus on which a plurality of printer drivers are installed
US20110023054A1 (en) Information processing apparatus, information processing method and storage medium
EP2474906A2 (en) Network device management system, network device management apparatus, client apparatus, and network device management method
US20080239383A1 (en) Data processor saving data indicating progress status of printing process retrievable by client
JP4876837B2 (ja) スキャナドライバ、及びスキャナドライバ連携装置
US20120127541A1 (en) Image reading system, image reading apparatus, control methods and programs thereof
US20130301069A1 (en) Information processing device, computer program product, and image forming apparatus
US8922809B2 (en) Host apparatus connected to image forming apparatus and compatible function information providing method
EP1011259A2 (en) Remote scanning through a computer system network
US11093182B2 (en) Image processing system including image processing apparatus and information processing apparatus configured to inform user that specific image processing program for image processing apparatus is available
CN107656709B (zh) 图像形成设备及其控制方法和存储介质
US8810815B2 (en) Image reading system, image reading apparatus, and control methods and programs thereof
JP5142519B2 (ja) データ処理装置、データ処理システム、データ処理方法、及びプログラム
US8068246B2 (en) Image processing apparatus and control method and control program thereof
US11379167B2 (en) Non-transitory computer-read able recording medium storing computer-readable instructions for terminal device, method executed by terminal device, and terminal device for causing the printer to execute restricted printing
JP2006211473A (ja) 文書登録システム
JP7251266B2 (ja) プログラムの組み合わせおよびプログラム
JP2005301608A (ja) インストールプログラム、インストール装置および周辺機器ドライバのインストール方法
JP5017543B2 (ja) 周辺機器利用システム
JP2008283666A (ja) 情報処理装置、情報処理システム、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090916

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110412

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110608

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111101

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111114

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4876837

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20141209

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees
S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370