(57)【要約】【課題】周辺装置を制御する制御プログラムを情報処理装置にインストールすることなく、周辺装置を利用可能とすると共に、周辺装置を利用するユーザ等の利便性を向上した周辺装置、画像読取装置、情報処理システムを提供する。【解決手段】周辺装置の利用するための制御プログラムは、周辺装置から情報処理装置のメモリへとロードされる。制御プログラムの実行による制御画面の表示形態は、管理プログラムにより管理される。情報処理装置で表示される制御画面は、非表示状態と表示状態とに切り替え可能であり、例えば、非表示状態から表示状態への復帰は、管理プログラムが、周辺装置のユーザ操作に連動して実行されよう情報処理装置を機能させる。【選択図】図１
2011028739.tif 000002
【特許請求の範囲】
【請求項１】
情報処理装置に接続される周辺装置を制御する制御プログラム及び前記制御プログラムを管理する管理プログラムを記憶する記憶部と、
前記情報処理装置に対して前記記憶部から前記制御プログラムを送信する通信部と、
前記情報処理装置による前記制御プログラムの実行により前記記憶部に書き込まれる指示情報に基づいて前記周辺装置の動作を制御する制御部とを備えており、
前記管理プログラムは、前記情報処理装置での前記制御プログラムの使用が終了されたか否かを判断して前記情報処理装置の表示画面を制御することを特徴とする周辺装置。
【請求項２】
前記管理プログラムは、前記制御プログラムの実行により前記情報処理装置にて表示される前記周辺装置の制御画面に基づく操作によって前記制御プログラムの使用が終了されたか否かを管理し、前記制御プログラムの使用状況に基づいて、前記情報処理装置の表示画面である前記周辺装置の制御画面の表示形態を制御するよう前記情報処理装置を機能させることを特徴とする請求項１に記載の周辺装置。
【請求項３】
前記管理プログラムは、前記制御プログラムの使用の終了操作が行われると前記情報処理装置の表示画面の表示形態を非表示状態とするよう前記情報処理装置を機能させることを特徴とする請求項１又は２に記載の周辺装置。
【請求項４】
前記管理プログラムは、前記制御プログラムの使用が終了した状態にあるときに前記周辺装置の操作を検知した場合に前記情報処理装置の表示画面の表示形態を表示状態とするよう前記情報処理装置を機能させることを特徴とする請求項１ないし３のいずれか１項に記載の周辺装置。
【請求項５】
前記管理プログラムは、前記情報処理装置と前記周辺装置との接続を一旦切断してから再接続させて前記制御プログラムを前記情報処理装置に送信し、前記情報処理装置に前記制御プログラムを再実行させることで、前記情報処理装置の表示画面を表示状態とすることを特徴とする請求項４記載の周辺装置。
【請求項６】
前記制御プログラムを非表示状態から表示状態へ復帰させるための指示を発行するための指示部と、
前記指示が発行されると指示情報を前記記憶部に書き込む書込部と
を備え、
前記管理プログラムは、
前記記憶部に前記指示情報が書き込まれたか否かを判定する判定手段と、
前記指示情報が書き込まれると前記制御プログラムを非表示状態から表示状態へ切り替える表示切替手段と
して前記情報処理装置を機能させることを特徴とする請求項４に記載の周辺装置。
【請求項７】
前記管理プログラムは、
前記制御プログラムが終了した状態かどうかを判別する判別手段と、
前記制御プログラムが完全に終了した状態にあれば、前記記憶部に記憶されている前記制御プログラムを前記情報処理装置のメモリに再度ロードする再ロード手段と
として前記情報処理装置を機能させることを特徴とする請求項４に記載の周辺装置。
【請求項８】
前記制御プログラムおよび前記管理プログラムは、前記情報処理装置が備えるオートラン機能によって前記記憶部から前記情報処理装置のメモリにロードされて実行されるプログラムであることを特徴とする請求項１ないし７のいずれか１項に記載の周辺装置。
【請求項９】
情報処理装置に接続される周辺装置を制御する制御プログラムと前記制御プログラムを管理する管理プログラムとを含む周辺装置操作プログラムを記憶する記憶部と、
前記情報処理装置に対して前記記憶部から前記周辺装置操作プログラムを送信する通信部と、
前記情報処理装置による前記制御プログラムの実行により前記情報処理装置によって前記記憶部に書き込まれる指示情報に基づいて前記周辺装置の動作を制御する制御部とを備え、
前記周辺装置操作プログラムは、前記情報処理装置のプロセッサを、前記情報処理装置での前記制御プログラムの使用が終了されたか否かを判断すると共に前記管理プログラムを通じて前記情報処理装置の表示画面を制御する手段として機能させることを特徴とする周辺装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、イメージスキャナ、イメージリーダまたは複合機などの画像読み取り装置や周辺装置に関する。
【背景技術】
【０００２】
イメージスキャナ、イメージリーダまたは複合機などの画像読み取り装置は広く普及している。一般に、画像読み取り装置をコンピュータ上で使用できるようにするためには、その画像読み取り装置用のデバイスドライバやアプリケーションプログラムをインストールしなければならない。従来は、デバイスドライバやアプリケーションプログラムを記憶したＣＤ−ＲＯＭをＣＤ−ＲＯＭドライブに挿入してハードディスクドライブへインストールする必要があり、面倒であった。
【０００３】
特許文献１によれば、プリンタをＣＤ−ＲＯＭドライブとしてコンピュータに認識させ、オートランによってプリンタドライバやアプリケーションプログラムをパソコンにインストールする技術が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１１５４２７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、周辺装置用のデバイスドライバやアプリケーションプログラムをインストールすることが制限されているコンピュータが存在する。この制限はセキュリティ対策で課されることが多い。例えば、マイクロソフトウインドウズ（登録商標）等のオペレーティングシステム（ＯＳ）では、管理者権限を有しているユーザのみがデバイスドライバをインストールできる。したがって、一般ユーザはデバイスドライバやアプリケーションプログラムをインストールできない。このような状況は、外出先のコンピュータを使用する場合に度々発生することが予想される。よって、このような制限のある状況下では、特許文献１に記載の発明は有効ではない。
【０００６】
そこで、本発明では、周辺装置を制御する制御プログラムを情報処理装置にインストールすることなく、周辺装置を利用可能とすると共に、周辺装置を利用するユーザ等の利便性を向上した周辺装置、画像読取装置、情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明は、例えば、情報処理装置に接続される周辺装置を制御する制御プログラム及び前記制御プログラムを管理する管理プログラムを記憶する記憶部と、前記情報処理装置に対して前記記憶部から前記制御プログラムを送信する通信部と、前記情報処理装置による前記制御プログラムの実行により前記記憶部に書き込まれる指示情報に基づいて前記周辺装置の動作を制御する制御部とを備えており、前記管理プログラムは、前記情報処理装置での前記制御プログラムの使用が終了されたか否かを判断して前記情報処理装置の表示画面を制御することを特徴とする。
【０００８】
具体的には、管理プログラムは、前記制御プログラムの実行により前記情報処理装置にて表示される前記周辺装置の制御画面に基づく操作によって前記制御プログラムの使用が終了されたか否かを管理し、前記制御プログラムの使用状況に基づいて、前記情報処理装置の表示画面である前記周辺装置の制御画面の表示形態を制御するよう前記情報処理装置を機能させることを特徴とする。
【発明の効果】
【０００９】
本発明は、周辺装置を制御する制御プログラムを情報処理装置にインストールすることなく周辺装置の利用を可能としつつ、周辺装置を利用するユーザ等の利便性を向上させることができるという効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】本発明の第１の実施例に係る一般的な情報処理装置として例示したコンピュータ１００と、画像読み取り装置としてのスキャナ装置とを示した斜視図である。
【図２】一般的なパーソナルコンピュータとして例示するコンピュータとスキャナのハードウエアブロック図である。
【図３】本発明の第１の実施例に係るコンピュータとスキャナ装置とのソフトウエアブロック図である。
【図４】コンピュータ１００からキャプチャアプリケーション３１９を利用してスキャナ装置１１０で画像読み取りを行う処理のフローチャートである。
【図５】ドライブレターを割り当てられたディスクドライブ（スキャナ装置１１０）をファイル管理ソフトで開いた様子を示す図である。
【図６】キャプチャアプリケーション３１９が起動したときに表示されるユーザインターフェース６００の一例を示した図である。
【図７】イベント監視モジュール３１８の動作を説明するための図である。
【図８】非表示状態で待機しているキャプチャアプリケーションの動作を示したフローチャートである。
【図９】イベント監視モジュール３１８の動作を示したフローチャートである。
【発明を実施するための形態】
【００１１】
以下に本発明の実施例の例を示す。以下で説明される個別の実施例は、本発明の上位概念、中位概念および下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施例によって限定されるわけではない。
【００１２】
＜第１の実施例＞
図１は、本発明の第１の実施例に係る一般的な情報処理装置として例示したコンピュータ１００と、画像読み取り装置としてのスキャナ装置とを示した斜視図である。なお、本発明の特徴は周辺装置を利用するためのアプリケーションプログラムを周辺装置から情報処理装置のメモリへと直接ロードすることに１つの特徴がある。そのため、周辺装置は、画像読み取り装置や画像形成装置に限定されることはなく、種々の周辺装置であってもよい。
【００１３】
スキャナ装置１１０には、原稿（シート）を積載する給紙トレイ１１２が装置本体１１１に対してヒンジ部を介して開閉可能に支持されている。給紙トレイ１１２は、閉じた状態で原稿の給紙口１１３を覆い、開放された状態で積載面１１４に原稿が積載される。そして、給紙トレイ１１２に載置される原稿は、１枚ずつ給送されるようになっている。例えば、給紙トレイ１１２に積載された複数枚の原稿は、フィードローラと分離パッドとによって最も下の原稿から１枚ずつ搬送路に分離給送される。搬送路に給送された原稿は、搬送ローラ対により下流側に搬送される。さらに原稿は、読取センサにより表裏両面の画像が読み取られ、その後、搬送ローラ対により排紙口１１６から排紙される。
【００１４】
スキャナ装置１１０は、ＵＳＢケーブルなどの通信ケーブル１０１を介してコンピュータ１００に接続する。情報処理装置であるコンピュータ１００は、例えば、パーソナルコンピュータ（ＰＣ）である。
【００１５】
とりわけ、本実施例のスキャナ装置１１０は読み書き可能なディスクドライブとしてコンピュータに認識されたまま、画像の読み取りを行い、画像データを自身の記憶装置に保存しておく。このスキャナ装置１１０の記憶装置は、コンピュータ１００からも外付けの記憶装置としてアクセス可能である。よって、コンピュータ１００は、スキャナ装置１１０の記憶装置を介して画像データを読み出すことができる。
【００１６】
ここで、コンピュータ１００は、スキャナ装置１１０に対する読取設定の情報や制御コマンドなどをスキャナ装置１１０の記憶装置に記憶された制御ファイルに書き込むよう制御する。一方、スキャナ装置１１０は、自己の記憶装置に書き込まれた制御ファイルから読取設定の情報や制御コマンドなどを抽出して画像の読み取りを実行するようになっている。
【００１７】
また、本実施例では、スキャナ装置１１０の記憶領域には、スキャナ装置１１０を制御するための制御プログラムが記憶されている。また、スキャナ装置１１０の記憶領域には、制御プログラムを管理する管理プログラムが記憶されている。そして、コンピュータ１００とスキャナ装置１１０とを通信ケーブル１０１により接続した際、スキャナ装置１１０の記憶領域から制御プログラムがコンピュータ１００のメモリに送られる。コンピュータ１００は、スキャナ装置１１０から受け取った制御プログラムを実行することで、スキャナ装置１１０の制御が可能となる。すなわち、本実施例においては、コンピュータ１００のハードディスクドライブに制御プログラム等のソフトウエアをインストールしなくても、スキャナ装置１１０を利用することができる。これは操作者にとって極めて便利な反面、一旦、制御プログラムを完全終了してしまうと、再び、制御プログラムをスキャナ装置１１０からコンピュータ１００のメモリへとロードしなければ、スキャナ装置１１０の制御画面を表示してその制御画面からスキャナ装置１１０を制御することができない。このため、上記の所謂オートラン機能を再現するためには、スキャナ装置１１０の電源のオフ・オンや通信ケーブル１０１の物理的なケーブルの抜き差し、あるいはファイルシステムを利用してコンピュータ１００のメモリ内の制御プログラムを検索して再実行しなければならない。本実施例では、このようなユーザの作業負担を軽減し、ユーザの利便性を向上するものである。なお、制御画面は、表示オブジェクトの一種である。表示オブジェクトは、コンピュータ１００のデスクトップに表示されるオブジェクトのことであり、ウィンドウ、ポップアップダイアログ、ボタン、チェックボックス、ラジオボタン、タスクバー、タスクトレイ、および、アイコンなどである。ユーザは、スキャナ装置１１０などの周辺装置を制御したり、周辺装置の動作状態を認識したりするために、オブジェクトを使用して、周辺装置の設定を実行する。
【００１８】
そして、本実施例では、上述したようにスキャナ装置１１０の記憶領域には、制御プログラムの他に、この制御プログラムを管理する管理プログラムとが記憶されている。
【００１９】
管理プログラムは、例えば、情報処理装置（本実施例ではコンピュータ１００）で実行されると、当該情報処理装置において周辺装置（本実施例ではスキャナ装置１１０）の制御画面を表示する。このような管理プログラムは、情報処理装置での制御プログラムの使用が終了されたか否かを判断して情報処理装置の表示画面を制御するプログラムである。具体的には、管理プログラムは、ユーザ等の操作により制御プログラムの使用が終了したか否かを管理し、制御プログラムの使用状況に基づいて周辺装置の制御画面の表示形態を制御するよう情報処理装置を機能させるためのプログラムとなる。なお、このような管理プログラムは、制御プログラムと共に周辺装置から情報処理装置に送信されて情報処理装置で実行されるようにしてもよいし、周辺装置に常駐させて情報処理装置で実行される制御プログラムを遠隔で管理するようにしてもよい。
【００２０】
ここで、本発明では、上記の「制御プログラムの使用が終了する」とは、制御プログラムが完全に終了する場合（この状態を完全終了状態と呼べる。）、例えば、メモリから開放される場合と、制御プログラム自体は終了せずに起動状態（例えば、メモリに常駐した状態で実行状態）を維持しながらも制御プログラムの実行に基づく周辺装置の制御画面を非表示状態とする場合（この状態を非完全終了状態、一時的終了状態、停止状態または待機状態と呼べる。）を少なくとも含む。また、上記の「制御プログラムの使用状況」とは、少なくとも制御プログラムが完全に終了している状況と、制御プログラムが完全に終了せずに周辺装置の制御画面を非表示状態としている状況とを少なくとも含む。
【００２１】
ここで、本実施例を具体的に説明すると、図１及び図２に示すように、スキャナ装置１１０の本体に設けられた操作ボタン１１５は、例えば、スキャナ装置１１０にスキャンの開始を指示するための指示部（スキャン実行ボタン）である。例えば、本実施例では、詳細は後述するが、スキャナ装置１１０の読取操作を制御するアプリケーションプログラム（以下、キャプチャアプリケーション）の実行によりコンピュータ１００においてスキャナ装置１１０の制御画面を表示するようになっている。
【００２２】
そして、本実施例では、ユーザ等がスキャナ装置１１０の制御画面を終了操作（キャンセルボタンや閉じるボタンの押し下げ操作）すると、管理プログラムは、当該制御画面を非表示状態として待機させるようコンピュータ１００を機能させる。次に、この状態からスキャナ装置１１０の操作ボタン１１５が操作されると、管理プログラムは、コンピュータ１００においてスキャナ装置１１０の制御画面を再び表示状態に切り替えるようコンピュータ１００を機能させる。これにより、例えば、上記のオートラン機能を再現する際の操作者の負担を軽減できる。このように、操作ボタン１１５は、キャプチャアプリケーションの実行により表示されるスキャナ装置１１０の制御画面を非表示状態から表示状態へ復帰させるための指示を発行するための指示部の一例である。
【００２３】
図２は、本実施例においてパーソナルコンピュータとして例示するコンピュータとスキャナのハードウエアブロック図である。図２において、コンピュータ１００は、ＣＰＵ２０１、ＲＯＭ２０３、ＲＡＭ２０４、ハードディスクドライブ２０２、ＵＳＢインターフェース２０５を備えている。ＵＳＢインターフェース２０５は、情報処理装置と通信するための通信部の一例であり、ＵＳＢケーブルである通信ケーブル１０１を介してスキャナ装置１１０と接続される。また、キーボード／マウス２３０とディスプレイ２３１は、ＣＰＵ２０１に接続されている。
【００２４】
コンピュータ１００に電力が投入されると、制御部としてのＣＰＵ２０１は、ＲＯＭ２０３からファームウエアを起動し、ハードディスクドライブ２０２から、例えば、マイクロソフト社などが提供しているオペレーティングシステム（ＯＳ）を起動する。ＯＳなどの必要なソフトウエアは、ＲＡＭ２０４にロードされる。ハードディスクドライブ２０２は、ソリッド・ステート・ドライブ（ＳＳＤ）などのメモリ型の記憶装置であってもよい。ＣＰＵは、中央演算処理装置の略称であるが、制御装置、演算装置またはプロセッサを呼ばれることもある。
【００２５】
一方、スキャナ装置１１０は、ＣＰＵ２１１、ＲＯＭ２１３、ＲＡＭ２１４、画像読み取り部２１６、ＵＳＢコントローラ２１２、ＵＳＢインターフェース２１５及び操作ボタン１１５を備えている。スキャナ装置１１０に電力が投入されると、制御部としてのＣＰＵ２１１は、ファームウエアをＲＯＭ２１３から起動する。本実施例で、ＲＯＭ２１３は、不揮発性のメモリであり、コンピュータ１００によって情報を書き込むことが可能なメモリである。ＲＯＭ２１３には、少なくとも、後述するキャプチャアプリケーション３１９とイベント監視モジュール３１８が記憶される。ここで、上述した制御プログラム及び管理プログラムの機能は、例えば、本実施例では、これらキャプチャアプリケーション３１９及びイベント監視モジュール３１８、及びＣＰＵ２１１により機能分散して実現される。本実施例によれば、制御プログラムの使用状況を監視する機能（監視機能）と、制御プログラムの使用状況の監視結果に基づいて制御プログラムのユーザインターフェースの表示形態や表示状態を制御する機能（表示制御機能）、周辺装置を制御する機能（周辺装置制御機能）とが必要となる。これらの３つの機能は制御プログラム及び管理プログラムの間で適宜分散させることができる。一般に、管理プログラムが監視機能と表示制御機能とを備え、制御プログラムが周辺装置制御機能を備えている。ただし、本実施例では、監視機能をイベント監視モジュール３１８に組み込み、表示制御機能と周辺装置制御機能とをキャプチャアプリケーション３１９に組み込むものとする。つまり、管理プログラムの２つの機能が、イベント監視モジュール３１８側とキャプチャアプリケーション３１９側とに分散して配置されている。勿論、３つの機能を３つの独立したプログラムモジュールとして実現してもよい。また、イベント監視モジュール３１８が監視機能と表示制御機能とを備え、キャプチャアプリケーション３１９が周辺装置制御機能を備えてもよい。
【００２６】
また、ＲＯＭ２１３やＲＡＭ２１４の両方または一方は、画像読み取り装置を使用するために情報処理装置で実行されるソフトウエアを記憶したソフトウエア記憶手段や制御ファイル等を記憶するデータ記憶手段の一例である。なお、ＲＯＭ２１３やＲＡＭ２１４は、フラッシュメモリやＥＥＰＲＯＭなどの不揮発性メモリによって実現されてもよい。特にＲＯＭ２１３にソフトウエアを記憶し、バージョンアップを可能とする場合は、ＲＯＭ２１３を不揮発性メモリにすることが望ましい。また、１つの不揮発性メモリによってＲＯＭ２１３とＲＡＭ２１４が実現されてもよい。なお、ＲＡＭ２１４には、画像読み取り部２１６によって取得された画像データを一時的に格納するためのバッファ領域が確保されてもよい。
【００２７】
図３は、本発明の第１の実施例に係るコンピュータとスキャナ装置とのソフトウエアブロック図である。
【００２８】
コンピュータ１００のハードディスクドライブ２０２には、オペレーティングシステム３０１、ファイルシステム３０２、ＵＳＢマスストレージドライバ３０３及びＵＳＢインターフェースドライバ３０４がインストールされている。オペレーティングシステム３０１は、コンピュータ１００の基本ソフトウエアである。ファイルシステム３０２は、ハードディスクドライブなどの記憶装置にファイルを格納するためのソフトウエアである。ＵＳＢマスストレージドライバ３０３は、ハードディスクドライブ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ−Ｒ、ＵＳＢメモリなどのマスストレージを制御するためのソフトウエアである。ＵＳＢインターフェースドライバ３０４は、ＵＳＢインターフェースに接続されたＵＳＢデバイスを制御するためのソフトウエアである。一般に、これらのソフトウエアはＯＳの一部として提供される。
【００２９】
スキャナ装置１１０には、スキャナドライバ３１０、キャプチャアプリケーション３１９、イベント監視モジュール３１８、オートランファイル３１７、制御ファイル３１５、ＵＳＢディスクドライブインターフェース３１４及びＵＳＢマスストレージクラスインターフェース３１３が備えられている。すなわち、スキャナ装置１１０の記憶領域には、ＵＳＢマスストレージクラスインターフェース３１３のサブクラスとして、ＵＳＢディスクドライブインターフェース３１４だけでなく、スキャナドライバ３１０、オートランファイル３１７、イベント監視モジュール３１８、及びキャプチャアプリケーション３１９が記憶されている。
【００３０】
スキャナドライバ３１０は、コンピュータ１００とスキャナ装置１１０との通信を行うためのソフトウエアであるが、例えば、スキャナドライバＤＬＬ（ドライバモジュール）としてもよい。また、このようなスキャナドライバ３１０は、イベント発生毎に、制御ファイル等のイベントキューに各種イベント情報を登録する。そして、スキャナドライバ３１０は、イベント監視モジュール３１８からスキャナ装置１１０のイベント情報を聞かれた場合、イベントキューからイベント情報を取り出し、イベント監視モジュール３１８に渡すよう機能する。なお、本実施例では、キャプチャアプリケーション３１９とスキャナドライバ３１０とを別々としたが、勿論、スキャナドライバの機能を備えたキャプチャアプリケーションとしてもよい。
【００３１】
オートランファイル３１７は、キャプチャアプリケーション３１９をコンピュータ１００で自動的に実行することを指示するための情報を含んでいる。オートランファイル３１７は、例えば、ａｕｔｏｒｕｎ．ｉｎｆである。オペレーティングシステム３０１がマイクロソフト（登録商標）ウインドウズであれば、ＵＳＢディスクドライブインターフェース３１４にＵＳＢメモリが挿入されると「ａｕｔｏｒｕｎ．ｉｎｆ」を実行するようになっている。オートランファイル３１７は、ＵＳＢディスクドライブインターフェース３１４を介してアクセスされるため、自動的に起動されることになる。
【００３２】
なお、本実施例では、オートランファイル３１７をコンピュータ１００が読み出して実行することで、キャプチャアプリケーション３１９とイベント監視モジュール３１８がコンピュータ１００のＲＡＭ２０４にロードされ起動される。すなわち、キャプチャアプリケーション３１９は、通信部を介して情報処理装置に転送されるプログラムであって情報処理装置で実行されるアプリケーションプログラムの一例である。なお、本実施例では、このようなキャプチャアプリケーション３１９やイベント監視モジュール３１８は、スキャナ装置１１０のＲＯＭ２１３からコンピュータ１００のＲＡＭ２０４に送るようにしてもよいが、スキャナ装置１１０のＲＯＭ２１３から一旦、同装置のＲＡＭ２１４に移し、このスキャナ装置１１０のＲＡＭ２１４からコンピュータ１００のＲＡＭ２０４へ送られるようにしてもよい。
【００３３】
ここで、キャプチャアプリケーション３１９は、コンピュータ１００で実行されて画像を読み取るための制御を行うソフトウエアである。キャプチャアプリケーション３１９は、コンピュータ１００で実行されて、スキャナ装置１１０において画像を読み取るための制御を行うソフトウエアである。
【００３４】
キャプチャアプリケーション３１９は、デバイスドライバを備えていないＰＣや、デバイスドライバやアプリケーションのインストールを制限されているＰＣにおいて有効である。なぜなら、キャプチャアプリケーション３１９は、ＰＣにデバイスドライバや任意のキャプチャアプリケーションをインストールすることなく、スキャナドライバ３１０を介して、直接スキャナ装置１１０を制御できるソフトウエアだからである。
【００３５】
そして、上述したキャプチャアプリケーションは、本実施例では、コンピュータ１００で実行されると、コンピュータ１００の画面にスキャナ装置１１０の制御画面を表示する。この制御画面は、ユーザ等により操作可能な画面であり、画面表示終了のための画面表示終了ボタン（例えば、「キャンセルボタン」、「×ボタン」等任意に設定可能）が含まれている。本実施例においては、キャプチャアプリケーションは、このような制御画面上の画面終了ボタンがユーザにより押下されたことを検知する機能を備えている。また、キャプチャアプリケーションは、画面終了ボタンがユーザにより押下されたことを検知すると、起動状態を完全終了の状態に移行せず、上述した管理プログラムの一部の機能を発揮し、スキャナ装置１１０の制御画面を非表示化するようコンピュータ１００を機能させるようになっている。
【００３６】
一方、イベント監視モジュール３１８は、通信部を介して情報処理装置に転送されるプログラムであって情報処理装置で実行され周辺装置の動作を監視するための監視プログラムの一例である。
【００３７】
ここで、イベント監視モジュール３１８は、スキャナ装置１１０の操作ボタン１１５が押下されたか否かを定期的に監視するプログラムである。スキャナ装置１１０のファームウエアは、操作ボタン１１５が押下されているか否かを示す情報を制御ファイル３１５に書き込む。この情報は、通常、操作ボタン１１５が押下されたときに更新される。そして、イベント監視モジュール３１８は、制御ファイル３１５に含まれているこの情報を監視することで、操作ボタン１１５が押下されたか否かを判定する。
【００３８】
なお、スキャナ装置１１０を制御するための制御ファイル３１５は、キャプチャアプリケーション３１９を実行しているコンピュータ１００からの制御コマンドなどが書き込まれるファイルである。制御コマンドは、通信部を介して転送されてきたアプリケーションプログラムを情報処理装置が実行することで情報処理装置から書き込まれる制御コマンドに相当する。制御ファイル３１５に、画像読み取り部２１６が生成した画像データが書き込まれる。よって、画像データは、制御コマンドに応じて周辺装置により生成されたデータの一例である。なお、制御ファイル３１５は、目的別に異なるファイルとして用意されてもよい。
【００３９】
ＵＳＢディスクドライブインターフェース３１４は、スキャナ装置１１０に備えられているメモリ（フラッシュメモリ、ＥＥＰＲＯＭなど）をディスクドライブとして使用するためのソフトウエアである。ＵＳＢマスストレージクラスインターフェース３１３は、ＵＳＢディスクドライブインターフェース３１４を介してメモリをＵＳＢマスストレージとして使用するためのソフトウエアである。
【００４０】
スキャナ装置１１０は、オプションとして、ＵＳＢスキャナクラスインターフェース３１２とスイッチ３１１とを備えていてもよい。スイッチ３１１は、スキャナ装置１１０の筐体設けられた切り替えスイッチと連動する。すなわち、切り替えスイッチがスキャナモード側に切り替えられていると、ＵＳＢスキャナクラスインターフェース３１２をコンピュータ１００と接続させる。すなわち、スキャナ装置１１０は、従来どおりのスキャナとしてコンピュータ１００に認識される。スキャナモードで動作しているスキャナ装置１１０を使用するには、コンピュータ１００はスキャナドライバを必要とする。
【００４１】
一方、切り替えスイッチがドライブモード側に切り替えられていると、スイッチ３１１は、コンピュータ１００をＵＳＢマスストレージクラスインターフェース３１３と接続する。すなわち、スキャナ装置１１０は、外部記憶装置としてコンピュータ１００によって認識され、キャプチャアプリケーション３１９と制御ファイル３１５を通じて画像読み取り装置として機能する。
【００４２】
ところで、コンピュータ１００上のオペレーティングシステム３０１は、ＵＳＢインターフェース２０５に通信ケーブル１０１を介して何らかの周辺装置が接続された場合、周辺装置のインターフェースにアクセスしてインターフェースクラスの情報取得し、周辺装置の種類を確定する。
【００４３】
図４は、コンピュータ１００からキャプチャアプリケーション３１９を利用してスキャナ装置１１０で画像読み取りを行う処理のフローチャートである。
【００４４】
コンピュータ１００のＣＰＵ２０１は、ＵＳＢインターフェース２０５に何からの周辺装置が接続されたか否かを判定する（Ｓ４０１）。周辺装置が接続されると、Ｓ４０２に進む。コンピュータ１００のＣＰＵ２０１は、ＵＳＢインターフェースドライバ３０４を通じて、接続された周辺装置のインターフェース（ＵＳＢマスストレージクラスインターフェース３１３）に接続する（Ｓ４０２）。コンピュータ１００のＣＰＵ２０１は、インターフェースクラスの情報をスキャナ装置１１０のＵＳＢマスストレージクラスインターフェース３１３から取得する（Ｓ４０３）。ＣＰＵ２０１は、この情報に基づいて、接続された周辺装置の種類を認識できる（Ｓ４０４）。ここでは、周辺装置がディスクドライブ（ＵＳＢマスストレージデバイス）であることが判明する。ＣＰＵ２０１は、オペレーティングシステム３０１及びＣＰＵ２０１は、接続されたスキャナ装置１１０をディスクドライブとしてファイルシステムに追加する（Ｓ４０５）。すなわち、オペレーティングシステム３０１は、スキャナ装置１１０内に保存してある制御ファイル３１５とオートランファイル３１７とキャプチャアプリケーション３１９に対応するテーブルを、ファイルシステム３０２に関連付けたファイルフォルダ内に形成する。これより、ＣＰＵ２０１は、スキャナ装置１１０内に格納してある制御ファイル３１５を、ドライブレター（例：Ｄ）を割り当てたディスクドライブ上のファイルとして認識する。このように、周辺装置は、情報処理装置に外部記憶装置として認識されて使用される。
【００４５】
図５は、ドライブレターを割り当てられたディスクドライブ（スキャナ装置１１０）をファイル管理ソフトで開いた様子を示す図である。スキャナ装置１１０が提供するメモリは、フォルダ５００に対応している。フォルダ５００は、コンピュータ１００に接続されたキーボード／マウス２３０を使用して開くことができる。フォルダ５００は読み書き可能なフォルダであり、制御ファイル３１５（ファイル名：Ｃｏｎｔｒｏｌ．ｄａｔ）と、キャプチャアプリケーション３１９（ファイル名：ＣａｐｔｕｒｅＡｐｐｌｉｃａｔｉｏｎ．ｅｘｅ）と、オートランファイル３１７（ファイル名：Ａｕｔｏｒｕｎ．ｉｎｆ）とが格納されている。また、イベント監視モジュール３１８（ファイル名：ＥｖｅｎｔＭｏｎｉｔｏｒＭｏｄｕｌｅ．ｅｘｅ）も格納されている。
【００４６】
なお、上述したイベント監視モジュール３１８は、ｅｘｅ形式の実行ファイルとして例示したが、勿論、本発明はこれに限定されず、例えば、ｄｌｌ形式のライブラリファイルとして、キャプチャアプリケーション３１９にロードされる構成であってもよい。
【００４７】
次に、オペレーティングシステム３０１（ＣＰＵ２０１）は、ＵＳＢディスクドライブ内にデータＵＳＢメモリが挿入されたと判定し、スキャナ装置１１０内にあるオートランファイル３１７をＲＡＭ２０４にロードして実行する（Ｓ４０６）。オートランファイル３１７には、キャプチャアプリケーション３１９とイベント監視モジュール３１８を起動するよう記載されている。よって、オペレーティングシステム３０１（ＣＰＵ２０１）は、オートランファイル３１７にしたがってキャプチャアプリケーション３１９とイベント監視モジュール３１８を起動する（Ｓ４０７）。この際に、スキャナ装置１１０からコンピュータ１００へキャプチャアプリケーション３１９とイベント監視モジュール３１８などの制御プログラムが送信されることになる。この送信処理は、コンピュータ１００から見れば読み出し処理に相当する。すなわち、オペレーティングシステム３０１及びＣＰＵ２０１は、スキャナ装置１１０内にあるキャプチャアプリケーション３１９とイベント監視モジュール３１８をＲＡＭ２０４にロードして起動する。ＣＰＵ２０１は、スキャナ装置１１０を外部記憶装置として認識されているため、キャプチャアプリケーション３１９およびイベント監視モジュール３１８を直接起動することができる。
【００４８】
コンピュータ１００には、ディスプレイ２３１が接続されており、各種ユーザインターフェースの表示ができる。
【００４９】
図６は、キャプチャアプリケーション３１９が起動したときに表示されるスキャナ装置１１０の制御画面であるユーザインターフェース６００の一例を示した図である。ユーザインターフェース６００には、スキャン設定を行うためのプルダウンメニュー、ファイル名を入力するためのテキストボックス、スキャンボタン６０１、キャンセルボタン６０２、終了ボタン６０３などが配置されている。スキャンボタン６０１は、画像の読み取りを開始させるための指示を発行するためのボタンである。キャンセルボタン６０２は、キャプチャアプリケーション３１９をＲＡＭに常駐させたままユーザインターフェース６００を非表示状態に切り替えるための指示を発行するボタンである。終了ボタン６０３は、キャプチャアプリケーション３１９をＲＡＭから開放して完全に終了させるための指示を発行するボタンである。
【００５０】
図６に示すようなキャプチャアプリケーション３１９のユーザインターフェースが表示されると、ユーザは、キーボード／マウス２３０を操作して、スキャン設定を実行する。例えば、読み取りモード（本実施例では、白黒）、用紙サイズ（本実施例では、Ａ４）、解像度（本実施例では、３００ｄｐｉ）、読み取り面（本実施例では、両面）がキーボード／マウス２３０を使用して選択される。さらに、読み取った画像を保存するための画像ファイルのファイル名（本実施例では、ｔｅｓｔ１）もキーボード／マウス２３０を操作して入力される。最後に、スキャンボタン６０１がキーボード／マウス２３０を使用してクリックされる。
【００５１】
スキャンボタン６０１がキーボード／マウス２３０によりクリックされると、キャプチャアプリケーション３１９（ＣＰＵ２０１）は、スキャン設定を受け付け、スキャナ装置１１０内の制御ファイル３１５にスキャン設定を書き込む。さらに、ＣＰＵ２０１は、スキャン開始コマンドデータも制御ファイル３１５に書き込むよう制御する（Ｓ４０８）。
【００５２】
スキャナ装置１１０のＣＰＵ２１１は、制御ファイル３１５を監視している。そうして、ＣＰＵ２１１は、スキャン設定およびスキャン開始コマンドデータが制御ファイル３１５に書かれたことを検出すると、制御ファイル３１５を読み込んで、そこに書かれているスキャン設定にしたがって画像読み取り部２１６を制御し、スキャンを開始する。スキャナ装置１１０はスキャンを開始すると、画像読み取り部２１６で読み取った画像を制御ファイル３１５に書き込む。制御コマンドに対応するステータスデータなども制御ファイル３１５に書き込まれる。この制御ファイルは、スキャン設定を可能としている制御ファイルと同一であってもよいし、異なってもよい。
【００５３】
なお、スキャナ装置１１０においては、原稿の給紙口１１３に原稿検知センサ（図示なし）を設け、原稿検知センサにより原稿がないと判断された場合には、上述したＳ４０８の動作を実行しないように設定してもよい。具体的には、スキャナ装置１１０とコンピュータ１００とが接続している状態で、操作ボタン１１５を押下すると、キャプチャアプリケーション３１９が起動する。この際、原稿検知センサにより原稿がない旨の判断がされている状態においては、スキャンを開始しないようにする。再び、操作ボタン１１５が押下されると、スキャン動作を開始し、その際、原稿がない状態であれば、キャプチャアプリケーション３１９を介して原稿なしのエラー表示を行わせるようにしてもよい。
【００５４】
コンピュータ１００のＣＰＵ２０１（キャプチャアプリケーション３１９）は、画像データが制御ファイル３１５に書き込まれたか否かを監視する（Ｓ４０９）。画像データが制御ファイル３１５に書き込まれたことを検出すると、ＣＰＵ２０１（キャプチャアプリケーション３１９）は、制御ファイル３１５から画像データを読み出す（Ｓ４１０）。
【００５５】
キャプチャアプリケーション３１９は、読み出した画像データから、指定されたファイル名（本実施例では、ｔｅｓｔ１）を付与した画像ファイルを生成してハードディスクドライブ２０２などに保存する（Ｓ４１１）。
【００５６】
このように、本実施例によれば、デバイスドライバやソフトウエアをコンピュータにインストールすることなく、画像読み取り装置が利用可能となる。これは、画像読み取り装置を外部記憶装置として情報処理装置に認識させ、この外部記憶装置に画像ファイルを書き込み、情報処理装置がこの画像ファイルを読み出すことで実現される。情報処理装置を制御するオペレーティングシステム（ＯＳ）は、画像読み取り装置のデバイスドライバを有していないが、外部記憶装置のデバイスドライバであれば有しているからである。この点に着目し、本発明では、画像読み取り装置を外部記憶装置として情報処理装置に認識させたまた、画像の読み取り処理を実現できる。したがって、デバイスドライバやアプリケーションプログラムを情報処理装置にインストールする手間を省ける。また、管理者権限を有していないユーザであっても、画像の読み取りを実行できる。また、デバイスドライバやアプリケーションプログラムを準備する必要はなく、これらを記憶したＣＤ−ＲＯＭを持ち運ぶ必要はないし、紛失してしまってもよい。メーカーは、ＣＤ−ＲＯＭを製品パッケージに同梱する必要がなくなるため、製造コスト面で有利である。
【００５７】
画像ファイルの保存が完了すると、コンピュータ１００のＣＰＵ２０１（キャプチャアプリケーション３１９）は、表示状態にあるキャプチャアプリケーション３１９の非表示状態への移行が指示されたか否かを判定する（Ｓ４１２）。たとえば、キャンセルボタン６０２の押し下げを検出したときは、非表示状態への移行が指示されたと判定する。非表示状態への移行が指示されると、Ｓ４１３に進む。キャプチャアプリケーション３１９は、ユーザインターフェース６００を非表示に切り替えるようＣＰＵ２０１を機能させる（Ｓ４１３）。すなわち、ここでのキャプチャアプリケーション３１９は、上述した管理プログラムの一部の機能を発揮するようになっている。このように、アプリケーションプログラムは周辺装置の使用が終了した後で非表示状態に切り換わる。キャプチャアプリケーション３１９はバックグラウンドで動作を継続し、再開または表示状態への移行の指示を待つことになる（図７、図８）。後述するように、非表示状態から表示状態に復帰すると、Ｓ４１４に進み、ＣＰＵ２０１は、終了ボタン６０３が押し下げられたか否かを判定する。
【００５８】
なお、キャプチャアプリケーション３１９の非表示状態への移行は一種のイベントである。よって、イベント監視モジュール３１８は、キャプチャアプリケーション３１９の非表示状態への移行したことを検出する。
【００５９】
非表示状態には、いくつかの手法がある。例えば、タスクバーに表示される最小表示状態、タスクトレイにアイコンとして表示される状態、デスクトップ上には一切表示されない状態などがある。
【００６０】
ここで、イベント監視モジュール３１８にキャプチャアプリケーション３１９の実行状態に関するイベントを知らせる方法としては、例えば、ユーザインターフェースからキャンセルボタンや終了ボタン等を押下された場合、または、コンピュータ１００から「Ａｌｔ＋Ｆ４」や「Ｅｓｃ」等が押下されてキャプチャアプリケーション３１９の終了指示がなされた場合において、メモリから開放される前に、イベント監視モジュール３１８に対して、何らかのメッセージ（ＷＭ＿ＡＰＰＬＩＣＡＴＩＯＮ＿ＥＮＤ等の独自メッセージ）を送信する等の方法が挙げられる。なお、上記以外の方法としては、コンピュータ１００のオペレーションシステムを利用し、実行中のアプリケーションについて、イベント監視モジュールからキャプチャアプリケーション３１９の終了状態を確認するようにしてもよい。
【００６１】
一方、非表示状態への移行が指示されていなければ、Ｓ４１４に進む。ＣＰＵ２０１（キャプチャアプリケーション３１９）は、終了ボタン６０３が押し下げられたか否かを判定する（Ｓ４１４）。終了ボタン６０３が押し下げられていなければ、Ｓ４０８に戻り、ＣＰＵ２０１は、キャプチャアプリケーション３１９の表示状態を継続する。一方、終了ボタン６０３が押し下げられたことを検出すると、Ｓ４１５に進む。ＣＰＵ２０１は、ＲＡＭ２０４からキャプチャアプリケーション３１９を消去し、ＲＡＭ２０４を開放する（Ｓ４１５）。
【００６２】
図７は、イベント監視モジュール３１８の動作を説明するための図である。ＣＰＵ２０１は、イベント監視モジュール３１８にしたがって、所定周期（例：５００ミリ秒）ごと（Ｓ７０１）、スキャナ装置１１０の操作ボタン１１５の状態を確認する(Ｓ７０２)。スキャナ装置１１０のＣＰＵ２１１は、操作ボタン１１５の押し下げを監視している。ＣＰＵ２１１は、押し下げを検出すると、制御ファイル３１５に操作ボタン１１５の押し下げられたことを意味する指示情報を書き込む。ここでは、操作ボタン１１５の押し下げは、キャプチャアプリケーション３１９の再開または表示状態への移行を意味する操作である。このように、スキャナ装置１１０のＣＰＵ２１１は、指示部により指示が発行されると指示情報をデータ記憶部に書き込む書込部の一例である。
【００６３】
コンピュータ１００のＣＰＵ２０１は、イベント監視モジュール３１８にしたがって、制御ファイル３１５から指示情報を読み出し、指示情報に基づいて操作ボタンが押し下げられたか否かを判定する（Ｓ７０３）。このように、ＣＰＵ２０１は、データ記憶部に指示情報が書き込まれたか否かを判定する判定手段の一例である。操作ボタン１１５が押下されたことを検出すると、ＣＰＵ２１１は、キャプチャアプリケーション３１９に対して、操作ボタン１１５が押下されたことを意味するWM_BUTTON_PUSHメッセージを送信する(Ｓ７０４)。WM_BUTTON_PUSHメッセージは、実質的に、キャプチャアプリケーション３１９の再開または表示状態への移行を指示するために発行される情報である。このように、ＣＰＵ２０１は、指示情報が書き込まれるとアプリケーションプログラムを非表示状態から表示状態へ切り替える表示切替手段の一例である。
【００６４】
図８は、非表示状態で待機しているキャプチャアプリケーションの動作を示したフローチャートである。このフローチャートは、Ｓ４１３をサブルーチンとして示したものである。
【００６５】
ＣＰＵ２０１は、キャプチャアプリケーション３１９にしたがって、WM_BUTTON_PUSHメッセージを受信したか否かを判定する（Ｓ８０１）。イベント監視モジュール３１８がWM_BUTTON_PUSHメッセージを送信してくると、Ｓ８０２に進む。ＣＰＵ２０１は、キャプチャアプリケーション３１９にしたがってユーザインターフェース６００を非表示状態から表示状態に切り替える（Ｓ８０２）。これにより、操作者（ユーザ）の利便性を格段に向上することができる。例えば、操作者は、キャプチャアプリケーション３１９を再度利用して画像の読み取りを実行できるようになる。
【００６６】
ここでは、イベント監視モジュール３１８が制御ファイル３１５を通じて操作ボタン１１５の監視を行うものとして説明した。しかし、イベント監視モジュール３１８はキャプチャアプリケーション３１９に内蔵されていてもよい。この場合、キャプチャアプリケーション３１９が制御ファイル３１５を通じて操作ボタン１１５の監視を行う。いずれにしても、本発明においては、各アプリケーション等のソフトウエア、周辺装置側のＣＰＵ、情報処理装置側のＣＰＵ等を適宜連携させて、上述した制御プログラム及び管理プログラムの機能を発揮するようにすればよく、上述した本実施例に限定されるものではない。
【００６７】
第１の実施例においては、キャプチャアプリケーション３１９からスキャンを開始する例を説明した。しかし、スキャナ装置１１０に設けられた操作ボタン１１５が押下されたことをＣＰＵ２１１が検知すると、スキャナ装置１１０がスキャンを開始してもよい。キャプチャアプリケーション３１９は、操作ボタン１１５が押下されたことを、制御ファイル３１５を介して監視する。この場合は、ＣＰＵ２１１が操作ボタン１１５を押下されたことを制御ファイル３１５に書き込むことになる。
【００６８】
なお、キャプチャアプリケーション３１９（ＣＰＵ２０１）が、制御ファイル３１５に画像データが格納されたことを検知してスキャンが開始されたと判断してもよい。
【００６９】
＜第２の実施例＞
上述した第１の実施例では、周辺装置（スキャナ装置）の制御画面（ユーザインターフェース）に基づくユーザ操作によって制御プログラム（キャプチャアプリケーション）の使用の終了操作が行われた場合に、制御プログラムを実質的に起動状態を維持したまま上記制御画面を非表示状態とし、その後この非表示状態から表示状態に切り替えるよう情報処理装置（コンピュータ）を機能させるようにした例について説明した。
【００７０】
第２の実施例ではキャプチャアプリケーション３１９が完全に終了した状態からの再起動について説明する。上述したように、終了ボタン６０３が操作されると、キャプチャアプリケーション３１９はＲＡＭ２０４から開放される。よって、キャプチャアプリケーション３１９を再起動するには、再度、キャプチャアプリケーション３１９をＲＡＭ２０４にロードしなければならない。
【００７１】
そこで、本実施例では、キャプチャアプリケーション３１９が完全に終了した後でもイベント監視モジュール３１８をＲＡＭ２０４に常駐させておき、イベント監視モジュール３１８が操作ボタン１１５の操作を検出すると、キャプチャアプリケーション３１９を起動させる。イベント監視モジュール３１８は、キャプチャアプリケーション３１９のフルパスの情報を知っているものとする。この場合、ＣＰＵ２０１は、アプリケーションプログラムが終了状態にあれば、ソフトウエア記憶部に記憶されているアプリケーションプログラムを情報処理装置のメモリに再度ロードする再ロード手段として機能する。
【００７２】
一方、イベント監視モジュール３１８は、キャプチャアプリケーション３１９のフルパスを知らない場合は、スキャナ装置１１０とコンピュータ１００とのケーブル接続を物理的に抜き差しすることなく、当該スキャナ装置１１０とコンピュータ１００との接続状態を一旦解除（ソフト的に）してから再接続することで、コンピュータ１００のオートラン機能を働かせ、キャプチャアプリケーション３１９を再起動してもよい。なお、このようなキャプチャアプリケーション３１９の再起動に伴う制御は、例えば、コンピュータ１００からの電源供給を一旦停止し、供給することでも実現することができる。これにより、ユーザの利便性を格段に向上することができる。
【００７３】
図９は、イベント監視モジュール３１８の動作を示したフローチャートである。すでに説明した箇所には同一の参照符号を付与することで、説明を簡潔にする。上述したＳ７０１ないしＳ７０３を実行したあとで、Ｓ９０１に進む。
【００７４】
ＣＰＵ２０１は、イベント監視モジュール３１８にしたがって、キャプチャアプリケーション３１９が起動中か否かを確認する(Ｓ９０１)。起動中か否かの確認は、プリケーションプログラムが終了した状態かどうかを判別する処理に相当する。よって、ＣＰＵ２０１は、アプリケーションプログラムが終了した状態かどうかを判別する判別手段として機能している。キャプチャアプリケーション３１９がＲＡＭ２０４にロードされていれば、Ｓ７０１に戻る。なお、キャプチャアプリケーション３１９が非表示状態にあれば、ＣＰＵ２０１は、Ｓ７０４を実行してからＳ７０１に戻る。
【００７５】
キャプチャアプリケーション３１９がＲＡＭ２０４にロードされていなければ、Ｓ９０２に進む。ＣＰＵ２０１は、イベント監視モジュール３１８にしたがって、スキャナ装置１１０との接続を解除する（Ｓ９０２）。例えば、ＣＰＵ２０１は、ＵＳＢインターフェース２０５を制御して、ＵＳＢバスのＤ＋信号とＤ−信号を共に０にする。これにより、コンピュータ１００からスキャナ装置１１０を切り離す。なお、ＵＳＢケーブルの挿抜は不要である。さらに、ＣＰＵ２０１は、ＵＳＢインターフェース２０５をＵＳＢバスリセットステートに移行させることで、スキャナ装置１１０が接続状態に移行する（Ｓ９０３）。これにより、図４に示したＳ４０１ないしＳ４０７が実行され、キャプチャアプリケーション３１９が起動する。このように、ＣＰＵ２０１は、アプリケーションプログラムが終了した状態にあれば、通信部と情報処理装置との接続を一旦切断してから再接続する再接続制御手段として機能する。
【００７６】
本実施例においては、操作ボタン１１５が押下されたときに、周辺装置と情報処理装置との接続（切断及び再接続）をシミュレーションすることによって、スキャナ装置１１０からキャプチャアプリケーション３１９等をコンピュータ１００に再度ロードし、コンピュータ１００によりキャプチャアプリケーション３１９を再起動することができる。これにより、ユーザの利便性を格段に向上することができる。
【００７７】
なお、セキュリティの観点からスキャン機能を実行させたくない場合であれば、コンピュータ１００のオートラン機能をオフに設定することによって、スキャン機能の実行を制限することもできる。一般に、マイクロソフトウインドウズ（登録商標）よれば、レジストリの設定を書き替えることによって、容易にオートラン機能の設定を変更することが可能である。
【００７８】
＜他の実施例＞
以上、本発明を第１、第２および第３の実施例に基づいて説明したが、本発明は上述した第１、第２および第３の実施例に限定されるものではない。
【００７９】
例えば、上述した第１又は第２の実施例では、周辺装置としてスキャナ装置１１０を例示して説明したが、本発明は勿論これに限定されず、周辺装置の制御画面を情報処理装置側に表示させるような態様で使用される周辺装置であれば本発明を適用可能である。具体的には、イメージリーダまたは複合機などの画像読み取り装置や、その他、複写機、プリンタ等の周辺装置にも適用可能である。
【００８０】
なお、情報処理装置に接続される周辺装置を制御する制御プログラムと、制御プログラムを管理する管理プログラムとは、周辺装置操作プログラムの一部であってもよい。周辺装置操作プログラムは、スキャナ装置１１０のＲＯＭ２１３に記憶されており、スキャナ装置１１０の通信部であるＵＳＢインタフェース２１５を通じて、情報処理装置であるパーソナルコンピュータ１００へ送信される。パーソナルコンピュータ１００のＣＰＵ２０１は、受信した周辺装置操作プログラムを実行する。とりわけ、ＣＰＵ２０１は、制御プログラムを実行することで、スキャナ装置１１０のＲＡＭ２１４へ、周辺装置であるスキャナ装置１１０の動作を制御するための指示情報を書き込む。スキャナ装置１１０のＣＰＵ２１１は、ＲＡＭ２１４に書き込まれた指示情報にしたがってスキャナ装置１１０の画像読取部２１６などを制御する。パーソナルコンピュータ１００のＣＰＵ２０１は、受信した周辺装置操作プログラムを実行することで、制御プログラムの使用が終了されたか否かを判断する。さらに、ＣＰＵ２０１は、管理プログラムを通じてパーソナルコンピュータ１００の表示画面（ユーザインタフェース）を制御する手段として機能する。
【００８１】
周辺装置操作プログラムは、キャプチャーアプリケーション３１９単独で構成されてもよいし、キャプチャーアプリケーション３１９とイベント監視モジュール３１８とで構成されてもよい。後者の場合、周辺装置側に周辺装置の操作を監視する操作監視監視プログラムが残されてもよい。キャプチャーアプリケーション３１９は、制御プログラムと管理プログラムの一部（周辺装置操作画面の操作監視機能）とで構成され、イベント監視モジュール３１８は、管理プログラムのその他の機能部（周辺装置の操作監視機能）で構成されてもよい。管理プログラムの機能を分散させてもよい。例えば、一部の機能をキャプチャーアプリケーション３１９側に配置し、残りの機能をイベント監視モジュール３１８に配置されてもよい。
【００８２】
１００  パーソナルコンピュータ
１０１  ＵＳＢ通信ケーブル
１１０  スキャナ装置
２０１  コンピュータ１００内のＣＰＵ
２０２  コンピュータ１００内のハードディスクドライブ
２０３  コンピュータ１００内のＲＯＭ
２０４  コンピュータ１００内のＲＡＭ
２０５  コンピュータ１００内のＵＳＢインターフェース
２１１  スキャナ装置１１０内のＣＰＵ
２１２  スキャナ装置１１０内のＵＳＢコントローラ
２１３  スキャナ装置１１０内のＲＯＭ
２１４  スキャナ装置１１０内のＲＡＭ
２１５  スキャナ装置１１０内のＵＳＢインターフェース
２１６  スキャナ装置１１０内の画像読み取り部
２２２  コンピュータ１００にインストールされたキャプチャアプリケーション
２３０  キーボード/マウス
２３１  ディスプレイ
３０１  オペレーティングシステム
３０２  ファイルシステム
３０３  ＵＳＢマスストレージドライバ
３０４  ＵＳＢインターフェースドライバ
３１１  切り替えスイッチ
３１２  ＵＳＢスキャナクラスインターフェース
３１３  ＵＳＢマスストレージインターフェース
３１４  ＵＳＢディスクドライブインターフェース
３１５  制御ファイル
３１７  オートランファイル
３１８  イベント監視モジュール
３１９  キャプチャアプリケーション
５００  ドライブレターを割り当てられたディスクドライブ
６００  キャプチャアプリケーションのユーザインターフェース
６０１  キャプチャアプリケーション上のスキャンボタン
６０２  キャプチャアプリケーション上のキャンセルボタン
６０３  キャプチャアプリケーション上の閉じるボタン
【図１】
2011028739.tif 000003
【図２】
2011028739.tif 000004
【図３】
2011028739.tif 000005
【図４】
2011028739.tif 000006
【図５】
2011028739.tif 000007
【図６】
2011028739.tif 000008
【図７】
2011028739.tif 000009
【図８】
2011028739.tif 000010
【図９】
2011028739.tif 000011