JP2010097284A - Peripheral equipment - Google Patents

Peripheral equipment Download PDF

Info

Publication number
JP2010097284A
JP2010097284A JP2008265689A JP2008265689A JP2010097284A JP 2010097284 A JP2010097284 A JP 2010097284A JP 2008265689 A JP2008265689 A JP 2008265689A JP 2008265689 A JP2008265689 A JP 2008265689A JP 2010097284 A JP2010097284 A JP 2010097284A
Authority
JP
Japan
Prior art keywords
information processing
software module
control software
peripheral device
installation
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.)
Withdrawn
Application number
JP2008265689A
Other languages
Japanese (ja)
Inventor
Kiyoshi Ito
清志 伊藤
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.)
Canon Electronics Inc
Original Assignee
Canon Electronics Inc
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 Canon Electronics Inc filed Critical Canon Electronics Inc
Priority to JP2008265689A priority Critical patent/JP2010097284A/en
Publication of JP2010097284A publication Critical patent/JP2010097284A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To manage the number of times of installation while installing software in a computer from peripheral equipment. <P>SOLUTION: Peripheral equipment includes: a storage means; a transfer means; and a management means. The storage means stores a control software module so as to be used for controlling a function as external peripheral equipment by an information processor, and functions as an external storage device. When both a control software module of the same version as the control software module stored in the storage means and a control software module of a newer version is not installed in the information processor, the transfer means transfers the control software module stored in the storage means so as to be installed in the information processor. The management means manages the number of times of the installation of the control software module into one of the information processor. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、情報処理装置に接続されて利用される周辺装置に関する。   The present invention relates to a peripheral device used by being connected to an information processing device.

イメージスキャナ、プリンタまたは複合機などの周辺装置は広く普及している。これらの周辺装置に接続するインターフェースとして、シリアルインタフェース、パラレルインタフェース、USB、IEEE1394、LANなどが知られている。   Peripheral devices such as image scanners, printers, and multifunction peripherals are widely used. As an interface for connecting to these peripheral devices, a serial interface, a parallel interface, USB, IEEE 1394, LAN, and the like are known.

ところで、周辺装置をコンピュータ上で使用できるようにするためには、その周辺装置用のデバイスドライバやアプリケーションソフトウエアをインストールしなければならない(特許文献1)。
特開2004−334449号公報
Incidentally, in order to be able to use a peripheral device on a computer, it is necessary to install a device driver and application software for the peripheral device (Patent Document 1).
JP 2004-334449 A

しかし、デバイスドライバやアプリケーションソフトウエアをインストールすることが制限されているコンピュータが存在する。この制限はセキュリティ対策で課されることが多い。例えば、マイクロソフトウインドウズ(登録商標)等のオペレーティングシステム(OS)では、管理者権限を有しているユーザのみがデバイスドライバをインストールできる。したがって、一般ユーザはデバイスドライバやアプリケーションソフトウエアをインストールできないため、周辺装置を利用できなくなってしまう。このような状況は、外出先のコンピュータを使用する場合に度々発生することが予想される。   However, there are computers that are restricted from installing device drivers and application software. This restriction is often imposed by security measures. For example, in an operating system (OS) such as Microsoft Windows (registered trademark), only a user having administrator authority can install a device driver. Therefore, since a general user cannot install a device driver or application software, the peripheral device cannot be used. Such a situation is expected to occur frequently when using a computer outside the office.

また、従来は、管理者権限を持つユーザであっても、画像読み取り装置を接続する前に、予め、デバイスドライバをインストールしておかなければならなかった。すなわち、従来は、デバイスドライバをコンピュータにインストールしていない状態で、周辺装置を利用することができなかった。   Conventionally, even a user having administrator authority has to install a device driver in advance before connecting the image reading apparatus. That is, conventionally, a peripheral device cannot be used without a device driver installed in the computer.

さらに、デバイスドライバは、一般に、CD−ROMにより頒布されている。よって、このCD−ROMを用意しなければ、デバイスドライバをインストールすることができなかった。例えば、CD−ROMを紛失してしまうと、デバイスドライバをインストールすることができなかった。インターネットを介してデバイスドライバを入手できるケースもあるが、そのためにインターネットに接続できる環境が必要である。また、デバイスドライバを提供しているWEBサイトのURLや、周辺装置の種類や名称を正確に把握して入力しなければならず、面倒であった。   Furthermore, the device driver is generally distributed by a CD-ROM. Therefore, the device driver cannot be installed unless this CD-ROM is prepared. For example, if the CD-ROM is lost, the device driver cannot be installed. In some cases, the device driver can be obtained via the Internet. For this reason, an environment capable of connecting to the Internet is required. In addition, it is troublesome because it is necessary to accurately grasp and input the URL of the WEB site providing the device driver and the type and name of the peripheral device.

ところで、デバイスドライバやキャプチャアプリケーションをインストールできる回数(PCの台数)が、許諾契約によって、制限されることがある。これは、これらのソフトウエアが意図されていないPCへ不用意に配布されることを禁止するためである。一方で、古いPCから新しいPCに買い替える場合、古いPCからソフトウエアを削除して、新しいPCにソフトウエアをインストールすることがある。この場合は、インストールできる回数が契約にしたがって守られているといえる。このようなインストール回数の管理は、従来、管理者が手動で行っていたため、極めて面倒であった。よって、インストール回数が契約通りに守られているかを、自動的に管理することが望まれている。   By the way, the number of times that the device driver and the capture application can be installed (the number of PCs) may be limited by a license agreement. This is to prevent the software from being inadvertently distributed to an unintended PC. On the other hand, when replacing an old PC with a new PC, the software may be deleted from the old PC and installed on the new PC. In this case, it can be said that the number of installable times is kept according to the contract. Such management of the number of times of installation has been extremely troublesome because it has been performed manually by an administrator. Therefore, it is desired to automatically manage whether or not the number of installations is kept as contracted.

そこで、本発明は、このような課題および他の課題のうち、少なくとも1つを解決することを目的とする。例えば、本発明は、周辺装置からソフトウエアをコンピュータにインストールできるようにしつつ、インストール回数を管理できるようにすることを目的とする。なお、他の課題については明細書の全体を通して理解できよう。   Therefore, an object of the present invention is to solve at least one of such problems and other problems. For example, an object of the present invention is to enable management of the number of installations while allowing software to be installed in a computer from a peripheral device. Other issues can be understood throughout the specification.

本発明は、例えば、情報処理装置の外部記憶装置としての機能と該情報処理装置の外部周辺機器としての機能とを備えた周辺装置に適用できる。周辺装置は、記憶手段、転送手段、管理手段を含む。記憶手段は、外部周辺機器としての機能を情報処理装置が制御するために使用する制御ソフトウエアモジュールを記憶するとともに、外部記憶装置としても機能する。転送手段は、記憶手段に記憶されている制御ソフトウエアモジュールと同一バージョンの制御ソフトウエアモジュールまたはより新しいバージョンの制御ソフトウエアモジュールのいずれもが情報処理装置にインストールされていないときに、記憶手段に記憶されている制御ソフトウエアモジュールを情報処理装置にインストールするために転送する。管理手段は、制御ソフトウエアモジュールをいずれかの情報処理装置にインストールした回数を管理する。   The present invention can be applied, for example, to a peripheral device having a function as an external storage device of an information processing device and a function as an external peripheral device of the information processing device. The peripheral device includes storage means, transfer means, and management means. The storage means stores a control software module used for the information processing apparatus to control a function as an external peripheral device, and also functions as an external storage apparatus. The transfer means stores in the storage means when neither the control software module of the same version as the control software module stored in the storage means nor the control software module of a newer version is installed in the information processing apparatus. The stored control software module is transferred for installation in the information processing apparatus. The management means manages the number of times that the control software module is installed in any information processing apparatus.

本発明によれば、制御ソフトウエアモジュールを周辺装置から情報処理装置にインストールできるため、従来のように、事前に制御ソフトウエアモジュールをインストールしておく必要はない。同様に、制御ソフトウエアモジュールを記憶したCD−ROMなどを用意する手間を省ける。このように、インストール作業が非常に簡略化されるメリットがある。さらに、インストール回数についても管理手段によって管理することができるため、ユーザに契約を遵守させやすくなる。   According to the present invention, since the control software module can be installed from the peripheral device to the information processing device, it is not necessary to install the control software module in advance as in the prior art. Similarly, the trouble of preparing a CD-ROM storing the control software module can be saved. Thus, there is an advantage that the installation work is greatly simplified. Furthermore, since the number of installations can be managed by the management means, it is easy for the user to comply with the contract.

以下に本発明の一実施形態を示す。以下で説明される個別の実施形態は、本発明の上位概念、中位概念および下位概念など種々の概念を理解するために役立つであろう。また、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。   An embodiment of the present invention is shown below. The individual embodiments described below will help to understand various concepts, such as the superordinate concept, intermediate concept and subordinate concept of the present invention. Further, the technical scope of the present invention is determined by the scope of the claims, and is not limited by the following individual embodiments.

<本発明の基本的な技術思想>
はじめに本発明の基本的な技術思想について列挙する。
<Basic technical idea of the present invention>
First, basic technical ideas of the present invention will be listed.

[観点1]
情報処理装置の外部記憶装置としての機能と該情報処理装置の外部周辺機器としての機能とを備えた周辺装置であって、
前記外部周辺機器としての機能を前記情報処理装置が制御するために使用する制御ソフトウエアモジュールを記憶するとともに、前記外部記憶装置として記憶領域を提供する記憶手段と、
前記制御ソフトウエアモジュールが前記情報処理装置にインストールされていないときに、前記記憶手段に記憶されている前記制御ソフトウエアモジュールを前記情報処理装置にインストールするために転送する転送手段と、
前記制御ソフトウエアモジュールをいずれかの情報処理装置にインストールした回数を管理する管理手段と
を含むことを特徴とする周辺装置。
[Viewpoint 1]
A peripheral device having a function as an external storage device of the information processing device and a function as an external peripheral device of the information processing device,
Storage means for storing a control software module used for the information processing apparatus to control the function as the external peripheral device, and providing a storage area as the external storage device;
Transfer means for transferring the control software module stored in the storage means for installation in the information processing apparatus when the control software module is not installed in the information processing apparatus;
And a management unit that manages the number of times the control software module is installed in any of the information processing apparatuses.

なお、前記制御ソフトウエアモジュールが前記情報処理装置にインストールされていないときは、例えば、前記記憶手段に記憶されている前記制御ソフトウエアモジュールと同一バージョンの制御ソフトウエアモジュールまたはより新しいバージョンの制御ソフトウエアモジュールのいずれもが前記情報処理装置にインストールされていないときである。   When the control software module is not installed in the information processing apparatus, for example, the control software module of the same version as the control software module stored in the storage means or the control software of a newer version This is when none of the wear modules is installed in the information processing apparatus.

本発明によれば、周辺装置から制御ソフトウエアモジュールを情報処理装置にインストールできるため、従来のように、事前に制御ソフトウエアモジュールをインストールしておく必要はない。同様に、制御ソフトウエアモジュールを記憶したCD−ROMなどを用意する手間を省ける。このように、インストール作業が非常に簡略化されるメリットがある。さらに、インストール回数についても管理手段によって管理することができるため、ユーザに契約を遵守させやすくなる。   According to the present invention, since the control software module can be installed in the information processing apparatus from the peripheral device, it is not necessary to install the control software module in advance as in the prior art. Similarly, the trouble of preparing a CD-ROM storing the control software module can be saved. Thus, there is an advantage that the installation work is greatly simplified. Furthermore, since the number of installations can be managed by the management means, it is easy for the user to comply with the contract.

[観点2]
前記情報処理装置に前記外部記憶装置として認識させるか、前記外部周辺機器として認識させるかを切り替える切り替え手段をさらに備え、
前記記憶手段は、前記制御ソフトウエアモジュールのインストールを制御するコンピュータプログラムを記憶しており、
前記コンピュータプログラムは、前記周辺装置を前記外部記憶装置として認識している前記情報処理装置によって前記記憶手段から読み出されて実行されるコンピュータプログラムであり、
さらに、前記コンピュータプログラムは、前記情報処理装置を、
前記記憶手段に記憶されている前記制御ソフトウエアモジュールが前記情報処理装置にインストールされているか否か、及び前記情報処理装置にインストールされている当該制御ソフトウエアモジュールのバージョンが前記記憶手段に記憶されている前記制御ソフトウエアモジュールのバージョンよりも古いか否か、の少なくとも一方を判定する判定手段と、
前記記憶手段に記憶されている前記制御ソフトウエアモジュールが前記情報処理装置にインストールされていないとき、または前記制御ソフトウエアモジュールよりも古いバージョンの該制御ソフトウエアモジュールが前記情報処理装置にインストールされているときに、前記記憶手段から前記制御ソフトウエアモジュールを読み出して前記情報処理装置に書き込む書き込み手段と、
前記情報処理装置にインストールされている当該制御ソフトウエアモジュールのバージョンが前記記憶手段に記憶されている前記制御ソフトウエアモジュールのバージョンよりも古くないと判定されたとき、または、前記記憶手段から前記制御ソフトウエアモジュールが前記情報処理装置に書き込まれたときに、前記切り替え手段に切り替え命令を送信することで、前記周辺装置を前記外部周辺機器として認識させる認識制御手段
として機能させるコンピュータプログラムであることを特徴とする観点1に記載の周辺装置。
[Viewpoint 2]
A switching means for switching whether the information processing apparatus recognizes the external storage device or the external peripheral device;
The storage means stores a computer program for controlling installation of the control software module,
The computer program is a computer program that is read from the storage unit and executed by the information processing apparatus that recognizes the peripheral device as the external storage device,
Further, the computer program causes the information processing apparatus to
Whether the control software module stored in the storage means is installed in the information processing apparatus, and the version of the control software module installed in the information processing apparatus is stored in the storage means. Determination means for determining at least one of whether the version of the control software module is older than,
When the control software module stored in the storage means is not installed in the information processing apparatus, or a version of the control software module older than the control software module is installed in the information processing apparatus Writing means for reading out the control software module from the storage means and writing it into the information processing device;
When it is determined that the version of the control software module installed in the information processing apparatus is not older than the version of the control software module stored in the storage means, or the control from the storage means When the software module is written in the information processing apparatus, the computer program causes the peripheral device to be recognized as the external peripheral device by transmitting a switching command to the switching unit. The peripheral device according to aspect 1, which is characterized.

本発明によれば、周辺装置に記憶されているコンピュータプログラムによって、予め適切な制御ソフトウエアモジュールが情報処理装置に存在しないと判定されると、制御ソフトウエアモジュールが情報処理装置にインストールされることになる。逆に、すでに切な制御ソフトウエアモジュールが存在すれば、インストールは実行されない。また、周辺装置は、当初、外部記憶装置(例:USBメモリやUSBタイプのCDドライブなど)として認識されているため、コンピュータプログラムを情報処理装置に簡単な手法で転送することができる。そして、適切な制御ソフトウエアモジュールが存在しているか、または、インストールが完了すれば、周辺装置が、外部周辺機器(例:イメージスキャナなど)として認識される。このように、情報処理装置が、周辺装置の認識を切り替えることで、ユーザの負担を緩和しつつ、周辺装置を外部周辺機器として利用できるようになる。   According to the present invention, when it is determined in advance by the computer program stored in the peripheral device that an appropriate control software module does not exist in the information processing device, the control software module is installed in the information processing device. become. On the other hand, if there is already a control software module, the installation is not executed. Further, since the peripheral device is initially recognized as an external storage device (eg, a USB memory or a USB type CD drive), the computer program can be transferred to the information processing device by a simple method. If an appropriate control software module exists or if the installation is completed, the peripheral device is recognized as an external peripheral device (for example, an image scanner). Thus, the information processing apparatus can use the peripheral device as an external peripheral device while reducing the burden on the user by switching the recognition of the peripheral device.

[観点3]
前記外部記憶装置は、CDドライブであり、前記コンピュータプログラムは、前記記憶手段のうちCDドライブとして認識される記憶領域に記憶されているAutorun.infによって自動的に起動されるように記述されていることを特徴とする観点2に記載の周辺装置。
[Viewpoint 3]
The external storage device is a CD drive, and the computer program is stored in a storage area recognized as a CD drive in the storage means. The peripheral device according to aspect 2, wherein the peripheral device is described so as to be automatically activated by inf.

Autorun.infは、自動的にコンピュータプログラムを起動するためのファイルとしてよく知られているため、比較的に簡単な方法で、本発明を実現できる。   Autorun. Since inf is well known as a file for automatically starting a computer program, the present invention can be realized by a relatively simple method.

[観点4]
前記管理手段は、
前記制御ソフトウエアモジュールをいずれかの情報処理装置にインストールした回数を計数する計数手段を備えることを特徴とする観点1ないし3のいずれか1項に記載の周辺装置。
[Viewpoint 4]
The management means includes
4. The peripheral device according to any one of aspects 1 to 3, further comprising a counting unit that counts the number of times the control software module is installed in any of the information processing devices.

本発明によれば、周辺装置がインストール回数を計数することで、制御ソフトウエアモジュールのインストールを管理しやすくなる。周辺装置は、一般に、複数の情報処理装置と接続できるため、周辺装置自身が制御ソフトウエアモジュールのインストールを管理することが望ましいのである。   According to the present invention, the installation of the control software module can be easily managed by the peripheral device counting the number of installations. Since the peripheral device can generally be connected to a plurality of information processing devices, it is desirable that the peripheral device itself manages the installation of the control software module.

[観点5]
前記計数手段は、
前記制御ソフトウエアモジュールが前記情報処理装置からアンインストールされると前記回数を減数することを特徴とする観点4に記載の周辺装置。
[Viewpoint 5]
The counting means includes
5. The peripheral device according to aspect 4, wherein the number of times is reduced when the control software module is uninstalled from the information processing device.

古いPCなどからのソフトウエアのアンインストールに伴いインストール回数を減数することで、ユーザの正規の利用を管理しやすくなる。   By reducing the number of installations accompanying the uninstallation of software from an old PC or the like, it becomes easier to manage the regular use of the user.

[観点6]
前記記憶手段の少なくとも一部の記憶領域は、不揮発性の記憶領域であり、
前記コンピュータプログラムは、前記情報処理装置を、
前記制御ソフトウエアモジュールをいずれかの情報処理装置にインストールした回数を計数して前記不揮発性の記憶領域に書き込む回数書き込み手段と、
前記インストールした回数と、予め定められたインストール可能回数とを比較する比較手段と、
前記インストールした回数がインストール可能回数未満であれば前記制御ソフトウエアモジュールのインストールを許可し、前記インストールした回数がインストール可能回数以上であれば前記制御ソフトウエアモジュールのインストールを禁止するインストール制限手段と
して機能させることを特徴とする観点2または3に記載の周辺装置。
[Viewpoint 6]
At least a part of the storage area of the storage means is a nonvolatile storage area,
The computer program stores the information processing apparatus.
Count writing means for counting the number of times the control software module is installed in any one of the information processing devices and writing it in the nonvolatile storage area, and
Comparison means for comparing the number of times of installation with a predetermined number of installable times,
If the number of times of installation is less than the number of installable times, the installation of the control software module is permitted. 4. The peripheral device according to aspect 2 or 3, wherein

本発明によれば、周辺装置がインストール回数を計数することで、制御ソフトウエアモジュールのインストールを管理しやすくなる。周辺装置は、一般に、複数の情報処理装置と接続できるため、周辺装置自身が制御ソフトウエアモジュールのインストールを管理することが望ましいのである。   According to the present invention, the installation of the control software module can be easily managed by the peripheral device counting the number of installations. Since the peripheral device can generally be connected to a plurality of information processing devices, it is desirable that the peripheral device itself manages the installation of the control software module.

[観点7]
前記制御ソフトウエアモジュールは、ドライバソフトウエアとアンインストーラプログラムとを含み、
前記アンインストーラは、前記情報処理装置を、
前記ドライバソフトウエアが前記情報処理装置からアンインストールされると前記インストールした回数を減数するか、または、前記インストール可能回数を増やす回数調整手段として機能させることを特徴とする観点6に記載の周辺装置。
[Viewpoint 7]
The control software module includes driver software and an uninstaller program,
The uninstaller removes the information processing apparatus.
7. The peripheral device according to aspect 6, wherein when the driver software is uninstalled from the information processing apparatus, the driver software functions as a frequency adjusting means that reduces the number of installations or increases the number of installable times. .

古いPCなどからのソフトウエアのアンインストールに伴いインストール回数やインストール可能回数を調整することで、ユーザの正規の利用を管理しやすくなる。   By adjusting the number of installations and the number of installable times in accordance with the uninstallation of software from an old PC or the like, it becomes easier to manage the regular use of the user.

[観点8]
前記コンピュータプログラムは、前記情報処理装置を、
前記周辺装置が保有している固有の識別情報を前記情報処理装置に保持させる保持手段として機能させ、
前記アンインストーラは、前記情報処理装置を、
前記周辺装置が保有している固有の識別情報と、前記情報処理装置に保持されている識別情報とが一致するか否かを判断する判断手段と、
前記周辺装置が保有している固有の識別情報と、前記情報処理装置に保持されている識別情報とが一致するときに、前記ドライバソフトウエアを前記情報処理装置から削除する削除手段と
して機能させることを特徴とする観点7に記載の周辺装置。
[Viewpoint 8]
The computer program stores the information processing apparatus.
Function as holding means for holding the unique identification information held by the peripheral device in the information processing device;
The uninstaller removes the information processing apparatus.
Determination means for determining whether the unique identification information held by the peripheral device matches the identification information held by the information processing device;
When the unique identification information held by the peripheral device matches the identification information held by the information processing device, the driver software is caused to function as a deletion unit that deletes the driver software from the information processing device. The peripheral device according to aspect 7, characterized by the above.

複数の周辺装置が使用される環境下においては、第1の周辺装置からPCにインストールされたソフトウエアが、第2の周辺装置によって削除されてしまうことがある。本来であれば、第1の周辺装置によって管理されているインストール回数やインストール可能回数を調整しなければならないが、第2の周辺装置のインストール回数やインストール可能回数が変更されてしまうおそれがある。そこで、周辺装置の識別情報とソフトウエアのインストールとを関連付けて管理することで、各周辺装置によるインストール回数を適切に管理できるようになる。   In an environment where a plurality of peripheral devices are used, software installed on the PC from the first peripheral device may be deleted by the second peripheral device. Originally, the number of installations and the number of installable times managed by the first peripheral device must be adjusted, but there is a possibility that the number of installations and the number of installable times of the second peripheral device may be changed. Thus, by managing the identification information of the peripheral device and the software installation in association with each other, the number of installations by each peripheral device can be appropriately managed.

[観点9]
前記周辺装置は、画像読取装置であることを特徴とする観点1ないし8のいずれか1項に記載の周辺装置。
[Viewpoint 9]
The peripheral device according to any one of viewpoints 1 to 8, wherein the peripheral device is an image reading device.

本発明は、画像読取装置において、好適に利用されよう。なぜなら、画像読取装置などの周辺装置は、様々なPCに接続された利用される可能性があるからである。   The present invention is preferably used in an image reading apparatus. This is because a peripheral device such as an image reading device may be used connected to various PCs.

図1は、コンピュータとスキャナ装置とのソフトウエアブロック図である。パーソナルコンピュータ100は、例えば、一般的なパーソナルコンピュータ(PC)などのホストコンピュータである。ここでは、情報処理装置の一例として、パーソナルコンピュータ100について説明する。   FIG. 1 is a software block diagram of a computer and a scanner device. The personal computer 100 is a host computer such as a general personal computer (PC). Here, a personal computer 100 will be described as an example of the information processing apparatus.

パーソナルコンピュータ100には、オペレーティングシステム101、ファイルシステム201、USBマスストレージドライバ202及びUSBドライバ103がインストールされている。オペレーティングシステム101は、いわゆるOSのことであり、パーソナルコンピュータ100の基本ソフトウエアである。ここでは、マイクロソフトウインドウズ(登録商標)オペレーティングシステムがOSとして採用されているものとする。ファイルシステム201は、ハードディスクドライブなどの記憶装置にファイルを格納するためのソフトウエアである。USBマスストレージドライバ202は、ハードディスクドライブ、CD−ROM、DVD−ROM、CD−R、DVD−R、USBメモリなどのマスストレージを制御するためのソフトウエアである。USBドライバ103は、USBインターフェースに接続されたUSBデバイスを制御するためのソフトウエアである。なお、これらのソフトウエアはOSの一部であってもよい。   In the personal computer 100, an operating system 101, a file system 201, a USB mass storage driver 202, and a USB driver 103 are installed. The operating system 101 is a so-called OS and is basic software of the personal computer 100. Here, it is assumed that the Microsoft Windows (registered trademark) operating system is employed as the OS. The file system 201 is software for storing files in a storage device such as a hard disk drive. The USB mass storage driver 202 is software for controlling mass storage such as a hard disk drive, a CD-ROM, a DVD-ROM, a CD-R, a DVD-R, and a USB memory. The USB driver 103 is software for controlling a USB device connected to the USB interface. Note that these software may be a part of the OS.

スイッチ220を切り替えることで、USBマスストレージドライバ202以外のデバイスドライバへ接続を切り替えることができるものとする。スイッチ220は、ソフトウエアで実現されてもよいし、電気的に切り替え可能な電子スイッチを用いてハードウエアによって実現されてよい。また、ソフトウエア及びハードウエアの両方も用いてスイッチ220が実現されてもよい。   It is assumed that the connection can be switched to a device driver other than the USB mass storage driver 202 by switching the switch 220. The switch 220 may be realized by software, or may be realized by hardware using an electronic switch that can be electrically switched. Further, the switch 220 may be realized by using both software and hardware.

スキャナ装置106は、情報処理装置の外部記憶装置としての機能と情報処理装置の外部周辺機器としての機能とを備えた周辺装置の一例である。スキャナ装置106には、USBスキャナクラスインターフェース108、CDドライブインターフェース205、USBマスストレージクラスインターフェース206、スイッチ221、オートランファイル207、判断アプリケーション224、インストーラ225、キャプチャアプリケーション231、USBスキャナドライバ226、アンインストーラ230、インストール回数カウンタ227、スキャナID228、アンインストールフラグ232などを備えている。   The scanner device 106 is an example of a peripheral device having a function as an external storage device of the information processing device and a function as an external peripheral device of the information processing device. The scanner device 106 includes a USB scanner class interface 108, a CD drive interface 205, a USB mass storage class interface 206, a switch 221, an autorun file 207, a determination application 224, an installer 225, a capture application 231, a USB scanner driver 226, and an uninstaller 230. , An installation number counter 227, a scanner ID 228, an uninstall flag 232, and the like.

USBスキャナクラスインターフェース108は、スキャナ装置106をUSB接続型の画像読取装置として使用するためのインターフェースである。CDドライブインターフェース205は、スキャナ装置106に備えられているメモリ(フラッシュメモリ、EEPROMなど)の少なくとも1部をCD−ROMドライブとして使用するためのソフトウエアである。USBマスストレージクラスインターフェース206は、CDドライブインターフェース205を介してメモリをUSBマスストレージとして使用するためのソフトウエアである。スイッチ221は、PCに接続されるインターフェースを、USBマスストレージクラスインターフェース206と、USBスキャナクラスインターフェース108とのいずれか一方に切り替えるためのスイッチである。スイッチ221は、情報処理装置に外部記憶装置として認識させるか、外部周辺機器として認識させるかを切り替える切り替え手段の一例である。   The USB scanner class interface 108 is an interface for using the scanner device 106 as a USB connection type image reading device. The CD drive interface 205 is software for using at least a part of a memory (flash memory, EEPROM, etc.) provided in the scanner device 106 as a CD-ROM drive. The USB mass storage class interface 206 is software for using a memory as a USB mass storage via the CD drive interface 205. The switch 221 is a switch for switching the interface connected to the PC to either the USB mass storage class interface 206 or the USB scanner class interface 108. The switch 221 is an example of a switching unit that switches whether the information processing apparatus is recognized as an external storage device or an external peripheral device.

オートランファイル207は、例えば、Autorun.infなどで、CD−ROMが認識されたときに自動的に読み出されるファイルである。オートランファイル207の内部には、自動的に起動すべきソフトウエアを指定するための記述が含まれている。   The auto-run file 207 is, for example, Autorun. This file is automatically read when the CD-ROM is recognized by inf or the like. The autorun file 207 includes a description for designating software to be automatically started.

判断アプリケーション224は、スキャナ装置106用の適切なスキャナドライバやキャプチャアプリケーションなどがPCにインストールされているかどうかを判定するコンピュータプログラムである。なお、判断アプリケーション224は、制御ソフトウエアモジュールのインストールを制御するコンピュータプログラムの一例である。また、判断アプリケーション224は、周辺装置を外部記憶装置として認識している情報処理装置によって記憶手段から読み出されて実行されるコンピュータプログラムである。   The determination application 224 is a computer program that determines whether an appropriate scanner driver or capture application for the scanner device 106 is installed in the PC. The determination application 224 is an example of a computer program that controls installation of the control software module. The determination application 224 is a computer program that is read from a storage unit and executed by an information processing device that recognizes a peripheral device as an external storage device.

インストーラ225は、USBスキャナドライバ226やキャプチャアプリケーション231をPCにインストールするためのコンピュータプログラムである。キャプチャアプリケーション231は、スキャナ装置106によって読み取られた画像データを編集したり、任意の圧縮形式のファイルに変換したりするためのコンピュータプログラムである。USBスキャナドライバ226は、PCがPCに接続されたスキャナ装置106を制御するためのコンピュータプログラムである。アンインストーラ230は、USBスキャナドライバ226やキャプチャアプリケーション231をPCから削除するためのコンピュータプログラムである。   The installer 225 is a computer program for installing the USB scanner driver 226 and the capture application 231 on the PC. The capture application 231 is a computer program for editing image data read by the scanner device 106 or converting the image data into a file of an arbitrary compression format. The USB scanner driver 226 is a computer program for controlling the scanner device 106 connected to the PC. The uninstaller 230 is a computer program for deleting the USB scanner driver 226 and the capture application 231 from the PC.

インストール回数カウンタ227は、制御ソフトウエアモジュールをいずれかの情報処理装置にインストールした回数を管理する管理手段の一例である。インストール回数カウンタ227は、USBスキャナドライバ226やキャプチャアプリケーション231をPCにインストールした回数をカウントするためのカウンタである。スキャナID228は、各スキャナ装置106が保有している固有の識別情報である。アンインストールフラグ232は、アンインストールの実行時にセットされ、通常はクリアされているフラグである。   The installation number counter 227 is an example of a management unit that manages the number of times that the control software module is installed in any of the information processing apparatuses. The installation number counter 227 is a counter for counting the number of times the USB scanner driver 226 and the capture application 231 are installed in the PC. The scanner ID 228 is unique identification information held by each scanner device 106. The uninstallation flag 232 is a flag that is set when the uninstallation is executed and is normally cleared.

図2は、キャプチャアプリケーションおよびスキャナドライバをインストールした状態のパーソナルコンピュータとスキャナ装置とについてのソフトウエアブロック図である。すでに説明した箇所には同一の参照符号を付与することで、説明を簡潔にする。   FIG. 2 is a software block diagram of the personal computer and the scanner device in a state where the capture application and the scanner driver are installed. The description will be simplified by giving the same reference numerals to the parts already described.

図1と比較すると、図2では、PCにキャプチャアプリケーション222およびUSBスキャナドライバ102がインストールされている。インストール元情報229は、ハードディスクドライブ122に保持されており、キャプチャアプリケーション222およびUSBスキャナドライバ102をインストールしたスキャナ装置106の識別情報を含んでいる。このように、ハードディスクドライブ122は、周辺装置が保有している固有の識別情報を情報処理装置に保持させる保持手段の一例である。   Compared to FIG. 1, in FIG. 2, the capture application 222 and the USB scanner driver 102 are installed in the PC. The installation source information 229 is held in the hard disk drive 122 and includes identification information of the scanner device 106 in which the capture application 222 and the USB scanner driver 102 are installed. As described above, the hard disk drive 122 is an example of a holding unit that causes the information processing apparatus to hold unique identification information held by the peripheral device.

図3は、パーソナルコンピュータとスキャナ装置とについてのハードウエアブロック図である。   FIG. 3 is a hardware block diagram of the personal computer and the scanner device.

パーソナルコンピュータ100は、CPU121、ROM123、RAM124、ハードディスクドライブ122、USBインターフェース104で構成される。パーソナルコンピュータ100は、USBケーブル105を介してスキャナ装置106と接続される。また、パーソナルコンピュータ100には、キーボード/マウス125とディスプレイ126が接続されている。   The personal computer 100 includes a CPU 121, ROM 123, RAM 124, hard disk drive 122, and USB interface 104. The personal computer 100 is connected to the scanner device 106 via the USB cable 105. In addition, a keyboard / mouse 125 and a display 126 are connected to the personal computer 100.

パーソナルコンピュータ100に電力が投入されると、CPU121は、ROM123からファームウエアを読み出して起動し、ハードディスクドライブ122からマイクロソフト(登録商標)オペレーティングシステム101を起動する。OSなどの必要なソフトウエアは、RAM124にロードされる。   When power is applied to the personal computer 100, the CPU 121 reads and activates firmware from the ROM 123 and activates the Microsoft (registered trademark) operating system 101 from the hard disk drive 122. Necessary software such as an OS is loaded into the RAM 124.

一方、スキャナ装置106は、CPU110、ROM127、RAM203、画像読み取り部112、USBコントローラ128、USBインターフェース107で構成され、スキャナ装置106を制御する不図示のファームウエアがROM127から起動する。   On the other hand, the scanner device 106 includes a CPU 110, a ROM 127, a RAM 203, an image reading unit 112, a USB controller 128, and a USB interface 107, and firmware (not shown) that controls the scanner device 106 is activated from the ROM 127.

ROM123は、外部周辺機器としての機能を情報処理装置が制御するために使用する制御ソフトウエアモジュールを記憶するとともに、外部記憶装置として記憶領域を提供する記憶手段の一例である。ROM123は、例えば、純粋なリードオンリーメモリ、EEPROM、SRAM、フラッシュメモリなどを組み合わせて実現されている。RAM124は、例えば、DRAMなどである。   The ROM 123 is an example of a storage unit that stores a control software module used for the information processing apparatus to control a function as an external peripheral device and provides a storage area as an external storage device. The ROM 123 is realized by combining, for example, pure read-only memory, EEPROM, SRAM, flash memory, and the like. The RAM 124 is, for example, a DRAM.

パーソナルコンピュータ100上のオペレーティングシステム101は、USBインターフェース104にUSBケーブル105を介して何らかの周辺装置が接続されたことを検出すると、周辺装置のクラスインターフェースにアクセスし、周辺装置の種類を確定する。   When the operating system 101 on the personal computer 100 detects that any peripheral device is connected to the USB interface 104 via the USB cable 105, the operating system 101 accesses the class interface of the peripheral device and determines the type of the peripheral device.

ここで、スキャナ装置106は、CPU121及びオペレーティングシステム101にマスストレージデバイスクラスとして認識してもらうために、USBマスストレージクラスインターフェース206を備えている。また、スキャナ装置106は、CPU121やオペレーティングシステム101に、スキャナデバイスクラスとして認識してもらうために、USBスキャナクラスインターフェース108を有している。これら2つのクラスインターフェースは、スイッチ221を矢印Bの方向に切り替えることで、有効となるクラスインターフェースが選択される。   Here, the scanner device 106 includes a USB mass storage class interface 206 in order for the CPU 121 and the operating system 101 to recognize the mass storage device class. The scanner device 106 also has a USB scanner class interface 108 so that the CPU 121 and the operating system 101 can recognize it as a scanner device class. As these two class interfaces, the effective class interface is selected by switching the switch 221 in the direction of arrow B.

一方、パーソナルコンピュータ100上で動作するオペレーティングシステム101は、標準で、マスストレージクラスのUSBデバイスをサポートしている。すなわち、オペレーティングシステム101がマスストレージクラスのUSBデバイスドライバ(USBマスストレージドライバ202)を含んでいるため、パーソナルコンピュータ100への特別なドライバ等のインストールせずに、マスストレージクラスのUSBデバイスにアクセスできる。また、マスストレージクラスデバイスへの標準アクセスは、オペレーティングシステム101を使用して、管理者権限なしに実行可能である。   On the other hand, the operating system 101 operating on the personal computer 100 supports a mass storage class USB device as a standard. That is, since the operating system 101 includes a mass storage class USB device driver (USB mass storage driver 202), it is possible to access a mass storage class USB device without installing a special driver or the like in the personal computer 100. . In addition, standard access to the mass storage class device can be executed using the operating system 101 without administrator authority.

このように、パーソナルコンピュータ100にスキャナ装置106を接続すると、パーソナルコンピュータ100への特別なドライバ等をインストールすることなく、スキャナ装置106は、マスストレージデバイスとしてオペレーティングシステム101に認識され、アクセスが可能となる。これは、予めUSBマスストレージドライバ202がPCにインストールされており、かつ、スキャナ装置106がUSBマスストレージクラスインターフェース206を有しているためである。   As described above, when the scanner device 106 is connected to the personal computer 100, the scanner device 106 is recognized as a mass storage device by the operating system 101 and can be accessed without installing a special driver or the like to the personal computer 100. Become. This is because the USB mass storage driver 202 is installed in the PC in advance, and the scanner device 106 has the USB mass storage class interface 206.

なお、パーソナルコンピュータ100内のスイッチ220を矢印Aの方向に切り替えることでUSBマスストレージドライバ202以外のドライバへ接続を切り替えることができるものとする。このようなスイッチ220は、ソフトウエアによって実現されてもよいし、ハードウエアによって実現されてもよい。   It is assumed that the connection can be switched to a driver other than the USB mass storage driver 202 by switching the switch 220 in the personal computer 100 in the direction of arrow A. Such a switch 220 may be realized by software or hardware.

パーソナルコンピュータ100にスキャナ装置106が接続されると、オペレーティングシステム101(CPU121)は、USBインターフェース104により何らかの周辺装置が接続されたことを検知する。USBインターフェース104は、USBケーブル105を介して、スキャナ装置106のUSBインターフェース107にアクセスする。   When the scanner device 106 is connected to the personal computer 100, the operating system 101 (CPU 121) detects that some peripheral device is connected via the USB interface 104. The USB interface 104 accesses the USB interface 107 of the scanner device 106 via the USB cable 105.

この際、オペレーティングシステム101は、どのような周辺装置が接続されたのかを判別するため、コントロール転送のセットアップステージにて、GET_DESCRIPTOR標準デバイスリクエストを発行する。スキャナ装置106のUSBインターフェース107は、GET_DESCRIPTOR標準デバイスリクエストを受信すると、要求されたディスクリプタを返す。ディスクリプタは、デバイスの種類や特性や属性などの情報を表現するために使用される情報であり、この情報のフォーマットは予め定義されている。   At this time, the operating system 101 issues a GET_DESCRIPTOR standard device request at the control transfer setup stage in order to determine what peripheral device is connected. Upon receiving the GET_DESCRIPTOR standard device request, the USB interface 107 of the scanner device 106 returns the requested descriptor. The descriptor is information used to express information such as device type, characteristics, and attributes, and the format of this information is defined in advance.

オペレーティングシステム101は、スキャナ装置106から受信したGET_DESCRIPTOR標準デバイスリクエストのうち、標準デバイスディスクリプタ、標準構成(コンフィグレーション)ディスクリプタ、標準インターフェースディスクリプタによって、接続されたデバイスの種類や特性や属性などの情報を取得する。   In the GET_DESCRIPTOR standard device request received from the scanner device 106, the operating system 101 acquires information such as the type, characteristics, and attributes of the connected device by using the standard device descriptor, the standard configuration (configuration) descriptor, and the standard interface descriptor. To do.

スキャナ装置106のCPU110は、USBインターフェース107にパーソナルコンピュータ100からのアクセスを検出すると、初期インターフェースとして、切り替えスイッチ221をUSBマスストレージクラスインターフェース206に切り替える。これにより、パーソナルコンピュータ100は、USBマスストレージクラスインターフェース206にアクセスする。   When the CPU 110 of the scanner device 106 detects access from the personal computer 100 to the USB interface 107, the CPU 110 switches the changeover switch 221 to the USB mass storage class interface 206 as an initial interface. As a result, the personal computer 100 accesses the USB mass storage class interface 206.

オペレーティングシステム101は、スキャナ装置106のUSBマスストレージクラスインターフェース206にアクセスしたことを認識すると、切り替えスイッチ220を、USBドライバ103とUSBマスストレージドライバ202とを接続するように切り替える。これにより、USBインターフェース104は、USBケーブル105を介してスキャナ装置106にアクセス可能になる。   When the operating system 101 recognizes that the USB mass storage class interface 206 of the scanner device 106 has been accessed, the operating system 101 switches the changeover switch 220 to connect the USB driver 103 and the USB mass storage driver 202. As a result, the USB interface 104 can access the scanner device 106 via the USB cable 105.

また、スキャナ装置106は、オペレーティングシステム101に、先述したように、マスストレージクラスデバイスとして認識されている。そのため、パーソナルコンピュータ100は、スキャナ装置106のUSBインターフェース107、USBマスストレージクラスインターフェース206、CDドライブインターフェース205を介して、オペレーティングシステム101の管理者権限なしに、スキャナ装置106にアクセスができる。   The scanner device 106 is recognized as a mass storage class device by the operating system 101 as described above. Therefore, the personal computer 100 can access the scanner device 106 via the USB interface 107, the USB mass storage class interface 206, and the CD drive interface 205 of the scanner device 106 without the administrator authority of the operating system 101.

上述したように、スキャナ装置106のROM127には、オペレーティングシステム101上で動作するキャプチャアプリケーション222およびUSBスキャナドライバ102をインストールするインストーラ225と、キャプチャアプリケーション222およびUSBスキャナドライバ102をアンインストールするアンインストーラ230と、インストーラ225によりパーソナルコンピュータ100にインストールされるUSBスキャナドライバ226と、キャプチャアプリケーション231と、USBスキャナドライバ226をインストールした回数を保持するインストール回数カウンタ227と、スキャナ装置106に製品製造時に個体ごとに割り当てられるスキャナID228と、アンインストーラ230によるアンインストールを実行するか否かを示す情報を保持するためのアンインストールフラグ232と、パーソナルコンピュータ100にUSBスキャナドライバ102がインストールされているかどうかを判断する判断アプリケーション224と、スキャナ装置106をパーソナルコンピュータ100に接続した際に判断アプリケーション224を自動実行するための記述を備えたオートランファイル207が予め保存されている。   As described above, the ROM 127 of the scanner device 106 has an installer 225 for installing the capture application 222 and the USB scanner driver 102 operating on the operating system 101, and an uninstaller 230 for uninstalling the capture application 222 and the USB scanner driver 102. A USB scanner driver 226 installed on the personal computer 100 by the installer 225, a capture application 231, an installation number counter 227 that holds the number of times the USB scanner driver 226 has been installed, and the scanner device 106 for each product at the time of product manufacture. Assigned scanner ID 228 and uninstall by uninstaller 230 An uninstall flag 232 for holding information indicating whether or not to execute the process, a determination application 224 for determining whether the USB scanner driver 102 is installed in the personal computer 100, and the scanner device 106 as a personal computer. An autorun file 207 having a description for automatically executing the determination application 224 when connected to the system 100 is stored in advance.

なお、ROM127上のインストーラ225とアンインストーラ230とUSBスキャナドライバ226とキャプチャアプリケーション231と判断アプリケーション224とオートランファイル207は、CDドライブインターフェース205を介して、パーソナルコンピュータ100からアクセスできる。   The installer 225, uninstaller 230, USB scanner driver 226, capture application 231, determination application 224, and autorun file 207 on the ROM 127 can be accessed from the personal computer 100 via the CD drive interface 205.

また、上述したように、オペレーティングシステム101は、CDドライブ内にデータCDが挿入された場合、「autorun.inf」と呼ばれる、データCD上のファイルを検出して自動実行する機能を備えている。よって、オートランファイル207は、CDドライブインターフェース205を介してアクセスされ、CPU121によって自動的に実行されるものとする。   As described above, the operating system 101 has a function called “autorun.inf” for detecting and automatically executing a file on the data CD when the data CD is inserted into the CD drive. Accordingly, it is assumed that the autorun file 207 is accessed via the CD drive interface 205 and automatically executed by the CPU 121.

なお、スキャナ装置106のCPU110は、パーソナルコンピュータ100に接続した時点で、CDドライブ内にデータCDが挿入されていない状態となり、直後に、CDが挿入された状態へと遷移する。スキャナ装置106のCPU110は、USBインターフェース107を介して、データCDが挿入されたことを示す信号をパーソナルコンピュータ100に送信する。これにより、CPU121は、外部記憶装置(ここではUSB接続タイプのCDROMドライブ)として認識しているスキャナ装置106からオートランファイル207を読み出して自動実行する。   When the CPU 110 of the scanner device 106 is connected to the personal computer 100, the data CD is not inserted into the CD drive, and immediately after that, the CPU 110 transitions to the state where the CD is inserted. The CPU 110 of the scanner device 106 transmits a signal indicating that the data CD has been inserted to the personal computer 100 via the USB interface 107. Thereby, the CPU 121 reads the autorun file 207 from the scanner device 106 recognized as an external storage device (here, a USB connection type CD ROM drive) and automatically executes it.

さらに、パーソナルコンピュータ100は、ファイルシステム201のファイルフォルダ内にスキャナ装置106内に保存してある、インストーラ225とアンインストーラ230とUSBスキャナドライバ226とキャプチャアプリケーション231と判断アプリケーション224とオートランファイル207に対応するテーブルを形成する。   Further, the personal computer 100 supports an installer 225, an uninstaller 230, a USB scanner driver 226, a capture application 231, a determination application 224, and an autorun file 207 that are stored in the scanner device 106 in the file folder of the file system 201. To form a table.

<基本的な読み取り動作>
図4は、制御ソフトウエアモジュールのインストールからその実行までを示したフローチャートである。
<Basic reading operation>
FIG. 4 is a flowchart showing the process from installation to execution of the control software module.

ステップS3001で、パーソナルコンピュータ100のCPU121は、USBインターフェース104にスキャナ装置106が接続されたことを検出し、スイッチ220を切り替えることで、USBドライバ103をUSBマスストレージドライバ202へ接続する。これは、CPU121が、スキャナ装置106をマスストレージクラスのデバイス(CDドライブ)であることを認識したためである。なお、スイッチ221は、USBマスストレージクラスインターフェースが有効となるように、切り替えられていることを前提としている。   In step S3001, the CPU 121 of the personal computer 100 detects that the scanner device 106 is connected to the USB interface 104, and switches the switch 220 to connect the USB driver 103 to the USB mass storage driver 202. This is because the CPU 121 recognizes that the scanner device 106 is a mass storage class device (CD drive). Note that it is assumed that the switch 221 is switched so that the USB mass storage class interface is enabled.

ステップS3002で、CPU121は、接続されたスキャナ装置106をCDドライブとして認識しているため、ファイルシステム201にCDドライブとして追加する。スキャナ装置106は、USBマスストレージクラスインターフェース206のサブクラスとして、CDドライブインターフェース205を有しているためである。   In step S3002, since the CPU 121 recognizes the connected scanner device 106 as a CD drive, the CPU 121 adds it to the file system 201 as a CD drive. This is because the scanner device 106 has a CD drive interface 205 as a subclass of the USB mass storage class interface 206.

ステップS3003で、CPU121は、オペレーティングシステム101にしたがって、ファイルシステム201のファイルフォルダ内にスキャナ装置106内に保存してある、インストーラ225とアンインストーラ230とUSBスキャナドライバ226とキャプチャアプリケーション231と判断アプリケーション224とオートランファイル207に対応するテーブルを形成する。これにより、CPU121は、インストーラ225とアンインストーラ230とUSBスキャナドライバ226とキャプチャアプリケーション231と判断アプリケーション224とオートランファイル207を、CDドライブ上のファイルとして扱うことができる。   In step S3003, the CPU 121 determines that the installer 225, uninstaller 230, USB scanner driver 226, capture application 231 and determination application 224 are stored in the scanner device 106 in the file folder of the file system 201 in accordance with the operating system 101. And a table corresponding to the autorun file 207 is formed. As a result, the CPU 121 can handle the installer 225, the uninstaller 230, the USB scanner driver 226, the capture application 231, the determination application 224, and the autorun file 207 as files on the CD drive.

図5は、CDドライブに相当するフォルダの一例を示した図である。フォルダ304は、CDドライブに相当し、上述したインストーラ225とアンインストーラ230とUSBスキャナドライバ226とキャプチャアプリケーション231と判断アプリケーション224とオートランファイル207が格納されている。ユーザは、パーソナルコンピュータ100に接続されたキーボード/マウス125を使用して、フォルダ304を開き、ダブルクリックによって、アンインストーラ230などの起動を指示することができる。   FIG. 5 is a diagram showing an example of a folder corresponding to a CD drive. A folder 304 corresponds to a CD drive, and stores the above-described installer 225, uninstaller 230, USB scanner driver 226, capture application 231, determination application 224, and autorun file 207. The user can use the keyboard / mouse 125 connected to the personal computer 100 to open the folder 304 and double-click to instruct activation of the uninstaller 230 or the like.

ステップS3003で、CPU121は、オペレーティングシステム101にしたがって、CDドライブ内にデータCDが挿入されたと判断し、オートランファイル207を参照して実行する。オートランファイル207には、予め、管理者権限を持つユーザによって、すでに、スキャナ装置106で画像読み取りを行うためのオペレーティングシステム101上で動作するUSBスキャナドライバ102がインストールされているかどうか判断する判断アプリケーション224を起動するための指示が記述されている。   In step S3003, the CPU 121 determines that the data CD has been inserted into the CD drive according to the operating system 101, and executes it with reference to the autorun file 207. A determination application 224 for determining whether or not the USB scanner driver 102 that operates on the operating system 101 for performing image reading with the scanner device 106 is already installed in the auto-run file 207 in advance by a user having administrator authority. Instructions for starting up are described.

ステップS3004で、CPU121は、オートランファイル207にしたがって、判断アプリケーション224を起動する。オートランファイル207は、記憶手段のうちCDドライブとして認識される記憶領域に記憶されている。よって、判断アプリケーション224は、記憶手段のうちCDドライブとして認識される記憶領域に記憶されているAutorun.infによって自動的に起動されるように記述されているコンピュータプログラムの一例である。判断アプリケーション224は、画像読み取りに必要となる制御ソフトウエアモジュールがインストール済みであるかどうかを判定し、インストール済みでなければ、上述した各種のソフトウエアをインストールする。   In step S3004, the CPU 121 activates the determination application 224 according to the autorun file 207. The auto-run file 207 is stored in a storage area recognized as a CD drive in the storage means. Therefore, the judgment application 224 is configured to store the Autorun. Stored in the storage area recognized as the CD drive in the storage unit. It is an example of the computer program described so that it might be started automatically by inf. The determination application 224 determines whether or not a control software module necessary for image reading has been installed. If not, the various applications described above are installed.

ステップS3005で、CPU121は、判断アプリケーション224にしたがって、USBスキャナドライバ102がパーソナルコンピュータ100にインストールされているか否かを判定する。インストールされている場合は、ステップS3006に進む。一方、インストールされていない場合は、CPU121は、画像読み取りを行わず処理を終了する。   In step S3005, the CPU 121 determines whether the USB scanner driver 102 is installed in the personal computer 100 according to the determination application 224. If installed, the process advances to step S3006. On the other hand, if it is not installed, the CPU 121 ends the process without performing image reading.

ステップS3006で、CPU121は、判断アプリケーション224にしたがって、スキャナ装置106に、USBスキャナクラスインターフェース108で接続しなおすよう指示を送信する。このように、CPU121は、制御ソフトウエアモジュールが情報処理装置にインストールされているとき、または、記憶手段から制御ソフトウエアモジュールが情報処理装置に書き込まれたときに、切り替え手段に切り替え命令を送信することで、周辺装置を外部周辺機器として認識させる認識制御手段の一例である。なお、制御ソフトウエアモジュールは、記憶手段に記憶されている制御ソフトウエアモジュールと同一であってもよいし、または、より新しいバージョンの制御ソフトウエアモジュールであってもよい。   In step S <b> 3006, the CPU 121 transmits an instruction to reconnect to the scanner device 106 via the USB scanner class interface 108 according to the determination application 224. As described above, the CPU 121 transmits a switching command to the switching unit when the control software module is installed in the information processing apparatus or when the control software module is written from the storage unit to the information processing apparatus. Thus, this is an example of a recognition control means for recognizing a peripheral device as an external peripheral device. The control software module may be the same as the control software module stored in the storage means, or may be a newer version of the control software module.

ステップS3007で、スキャナ装置106のCPU110は、USBスキャナクラスインターフェースの切り替え指示を受信すると、一度、パーソナルコンピュータ100から接続を切り離し、再度、接続状態に移行する。   In step S3007, when the CPU 110 of the scanner device 106 receives a USB scanner class interface switching instruction, the CPU 110 once disconnects the connection from the personal computer 100 and shifts to the connected state again.

ステップS3008で、CPU121は、キャプチャアプリケーション222の起動指示がキーボードやマウスを通じて入力されたか否かを判定する。キャプチャアプリケーション222の起動指示が入力されると、ステップS3009に進む。   In step S3008, the CPU 121 determines whether an activation instruction for the capture application 222 has been input through a keyboard or a mouse. When the activation instruction of the capture application 222 is input, the process proceeds to step S3009.

ステップS3009で、CPU121は、キャプチャアプリケーション222を起動する。   In step S3009, the CPU 121 activates the capture application 222.

図6は、キャプチャアプリケーションが起動したときにディスプレイに表示されるユーザインターフェースの一例を示した図である。キャプチャアプリケーション222のユーザインターフェースが表示されると、ユーザは、キーボード/マウス125を操作して、スキャン設定を実行する。例えば、読み取りモード(本実施形態では、白黒)、用紙サイズ(本実施形態では、A4)、解像度(本実施形態では、300dpi)、読み取り面(本実施形態では、両面)がキーボード/マウス125を使用して選択される。さらに、読み取った画像を保存するための画像ファイルのファイル名(本実施形態では、test1)もキーボード/マウス125を操作して入力される。最後に、スキャンボタン301がキーボード/マウス125を使用してクリックされる。   FIG. 6 is a diagram illustrating an example of a user interface displayed on the display when the capture application is activated. When the user interface of the capture application 222 is displayed, the user operates the keyboard / mouse 125 to execute scan settings. For example, the reading mode (monochrome in this embodiment), paper size (A4 in this embodiment), resolution (300 dpi in this embodiment), reading surface (both sides in this embodiment) is the keyboard / mouse 125. Selected using. Further, the file name (test 1 in this embodiment) of the image file for storing the read image is also input by operating the keyboard / mouse 125. Finally, the scan button 301 is clicked using the keyboard / mouse 125.

スキャンボタン301がキーボード/マウス125によりクリックされると、ステップS3010に進む。   When the scan button 301 is clicked with the keyboard / mouse 125, the process proceeds to step S3010.

ステップS3010で、キャプチャアプリケーション222(CPU121)は、USBスキャナドライバ102からUSBドライバ103とUSBインターフェース104を介して、スキャナ装置106にスキャン設定を送信し、さらにスキャン開始コマンドを送信する。   In step S3010, the capture application 222 (CPU 121) transmits scan settings from the USB scanner driver 102 to the scanner device 106 via the USB driver 103 and the USB interface 104, and further transmits a scan start command.

スキャナ装置106のCPU110は、USBインターフェース107からUSBスキャナクラスインターフェース108を介して、スキャン設定およびスキャン開始コマンドデータを受信したことを検出すると、スキャン設定にしたがって画像読み取り部112を用いて原稿のスキャンを開始する。スキャナ装置106は、スキャンを開始すると、画像読み取り部112で読み取った画像をUSBスキャナクラスインターフェース108からUSBインターフェース107を介して、パーソナルコンピュータ100に送信する。   When the CPU 110 of the scanner device 106 detects that the scan setting and scan start command data are received from the USB interface 107 via the USB scanner class interface 108, the CPU 110 scans the document using the image reading unit 112 according to the scan setting. Start. When scanning starts, the scanner device 106 transmits an image read by the image reading unit 112 from the USB scanner class interface 108 to the personal computer 100 via the USB interface 107.

ステップS3011で、CPU121は、キャプチャアプリケーション222にしたがって、画像データの受信を開始したか否かを判定する。画像データの受信が開始されると、ステップS3012に進む。   In step S <b> 3011, the CPU 121 determines whether reception of image data has started according to the capture application 222. When the reception of image data is started, the process proceeds to step S3012.

ステップS3012で、CPU121は、すべての画像データを受信し終えるまで、受信を継続する。   In step S <b> 3012, the CPU 121 continues reception until all image data has been received.

ステップS3013で、受信した画像データを指定された保存ファイル名(本実施形態では、test1)でハードディスクドライブ122に保存する。   In step S3013, the received image data is stored in the hard disk drive 122 with the specified storage file name (test1 in this embodiment).

図7は、キャプチャアプリケーションが起動したときにディスプレイに表示されるユーザインターフェースの一例を示した図である。すでに説明した箇所には、同一の参照符号を付与している。   FIG. 7 is a diagram illustrating an example of a user interface displayed on the display when the capture application is activated. The parts already described are given the same reference numerals.

キャプチャアプリケーション222のユーザインターフェースに設けられているアンインストールボタン302は、スキャナドライバやキャプチャアプリケーションなどのアンインストールを指示するためのボタンである。キャプチャアプリケーション222起動時に、CPU121は、パーソナルコンピュータ100にインストールされているUSBスキャナドライバ102が管理しているインストール元情報229と、スキャナ装置106内に保持されているスキャナID228とが一致しているか否かを判定する。そして、CPU121は、両者が一致している場合にのみ、アンインストールボタン302を表示するようにしてもよい。   An uninstall button 302 provided on the user interface of the capture application 222 is a button for instructing to uninstall a scanner driver, a capture application, and the like. When the capture application 222 is activated, the CPU 121 determines whether the installation source information 229 managed by the USB scanner driver 102 installed in the personal computer 100 matches the scanner ID 228 held in the scanner device 106. Determine whether. Then, the CPU 121 may display the uninstall button 302 only when the two match.

図8は、アンインストールボタンが押下られたときに表示されるユーザインターフェース(ダイアログ)の一例を示す図である。CPU121は、キーボード/マウス125を使用してアンインストールボタン302が押下られたことを検出すると、USBスキャナドライバ102及びキャプチャアプリケーション222のアンインストールを実行するため、スキャナ装置106を一旦パーソナルコンピュータ100から取り外し、再度パーソナルコンピュータ100に接続する旨のダイアログを表示する。   FIG. 8 is a diagram illustrating an example of a user interface (dialog) displayed when the uninstall button is pressed. When the CPU 121 detects that the uninstall button 302 has been pressed using the keyboard / mouse 125, the CPU 121 temporarily removes the scanner device 106 from the personal computer 100 in order to uninstall the USB scanner driver 102 and the capture application 222. Then, a dialog to connect to the personal computer 100 is displayed again.

USBスキャナドライバ102(CPU121)は、スキャナ装置106のUSBスキャナクラスインターフェース108を経由して、アンインストールフラグ232をセットするように指示する。また、CPU110は、この指示を受信すると、アンインストールフラグ232をセットする。アンインストールフラグ232は、デフォルトでクリアされているものとする。   The USB scanner driver 102 (CPU 121) instructs to set the uninstall flag 232 via the USB scanner class interface 108 of the scanner device 106. Further, when the CPU 110 receives this instruction, the CPU 110 sets an uninstall flag 232. It is assumed that the uninstall flag 232 is cleared by default.

なお、スキャナ装置106をパーソナルコンピュータ100から一度取り外して再度パーソナルコンピュータ100に接続させているのは、アンインストールを円滑に実行するためである。   The reason why the scanner device 106 is once removed from the personal computer 100 and is connected to the personal computer 100 again is to smoothly perform uninstallation.

<マスストレージデバイスへの切り替え処理>
図9は、パーソナルコンピュータにおけるマスストレージデバイスへの切り替え処理の詳細を示した図である。
<Switching to mass storage device>
FIG. 9 is a diagram showing details of the switching process to the mass storage device in the personal computer.

ステップS8001で、CPU121は、オペレーティングシステム101にしたがって、USBインターフェース104にて何らかの周辺装置の接続を検知したか否かを判定する。何らかの周辺装置の接続を検知すると、ステップS8002に進む。   In step S <b> 8001, the CPU 121 determines whether connection of any peripheral device is detected by the USB interface 104 according to the operating system 101. If any connection of peripheral devices is detected, the process proceeds to step S8002.

ステップS8002で、CPU121は、USBドライバ103を図示しない標準的な周辺装置のクラスインターフェースに接続するよう、スイッチ221を切り替える。   In step S8002, the CPU 121 switches the switch 221 to connect the USB driver 103 to a standard peripheral device class interface (not shown).

ステップS8003で、CPU121は、オペレーティングシステム101にしたがって、GET_DESCRIPTORリクエストを発行する。これは、どのような周辺装置が接続されたのかを判別するため、周辺装置から情報を取得するためである。   In step S8003, the CPU 121 issues a GET_DESCRIPTOR request according to the operating system 101. This is for acquiring information from the peripheral device in order to determine what peripheral device is connected.

ステップS8004で、CPU121は、スキャナ装置106送信したディスクリプタを受信する。標準デバイスディスクリプタのデバイスクラスコード、あるいは、インターフェースクラスコードにて、USBマスストレージクラスコードが指定される。これにより、CPU121は、接続された周辺装置がマスストレージデバイスであると認識する。   In step S8004, the CPU 121 receives the descriptor transmitted from the scanner device 106. The USB mass storage class code is specified by the device class code or the interface class code of the standard device descriptor. Thereby, the CPU 121 recognizes that the connected peripheral device is a mass storage device.

ステップS8005で、CPU121は、スキャナ装置106のUSBマスストレージクラスインターフェース206にアクセスするため、USBマスストレージクラスコードに関連するUSBマスストレージドライバや、その他のクライアントドライバをRAM124に展開する。すなわち、CPU121は、USBマスストレージドライバ202が有効となるように、ソフト的にスイッチ220を切り替える。これにより、CPU121は、USBインターフェース104からUSBケーブル105を介してスキャナ装置106にアクセス可能になる。   In step S8005, the CPU 121 expands the USB mass storage driver related to the USB mass storage class code and other client drivers in the RAM 124 in order to access the USB mass storage class interface 206 of the scanner device 106. In other words, the CPU 121 switches the switch 220 in software so that the USB mass storage driver 202 is enabled. As a result, the CPU 121 can access the scanner device 106 from the USB interface 104 via the USB cable 105.

図10は、スキャナ装置におけるマスストレージデバイスへの切り替え処理の詳細を示した図である。   FIG. 10 is a diagram showing details of the switching process to the mass storage device in the scanner device.

ステップS9001で、スキャナ装置106のCPU110は、USBインターフェース107を介してパーソナルコンピュータ100と接続したことを検出したか否かを判定する。パーソナルコンピュータ100との接続を検出すると、ステップS9002に進む。   In step S <b> 9001, the CPU 110 of the scanner device 106 determines whether it is detected that the personal computer 100 is connected via the USB interface 107. If connection with the personal computer 100 is detected, the process advances to step S9002.

ステップS9002で、CPU110は、ソフト的にスイッチ221を切り替えて、初期インターフェースとしてUSBマスストレージクラスインターフェース206を有効にする。   In step S9002, the CPU 110 switches the switch 221 in software to enable the USB mass storage class interface 206 as an initial interface.

ステップS9003で、CPU110は、GET_DESCRIPTORリクエストを受信したか否かを判定する。GET_DESCRIPTORリクエストを受信すると、ステップ9004に進む。   In step S9003, the CPU 110 determines whether a GET_DESCRIPTOR request has been received. If a GET_DESCRIPTOR request is received, the process proceeds to step 9004.

ステップS9004で、CPU110は、ディスクリプタをパーソナルコンピュータ100に送信する。GET_DESCRIPTORリクエストに対して返信する標準デバイスディスクリプタのデバイスクラスコード、あるいは、標準インターフェースディスクリプタのインターフェースクラスコードには、USBマスストレージクラスコードが指定される。   In step S9004, the CPU 110 transmits the descriptor to the personal computer 100. The USB mass storage class code is designated as the device class code of the standard device descriptor returned in response to the GET_DESCRIPTOR request or the interface class code of the standard interface descriptor.

<判断アプリケーションの動作>
図11A、図11Bは、判断アプリケーションの動作の一例を示したフローチャートである。スキャナ装置106内のスキャナID228には”ScannerID0”が設定されているものとする。なお、スキャナID228には、製品製造時に個体ごとに割り当てられた固有のIDが選択され、例えば、個体ごとに割り当てたシリアル番号(例えば、00000001、00000002、00000003)が採用されてもよい。
<Operation of judgment application>
11A and 11B are flowcharts illustrating an example of the operation of the determination application. It is assumed that “ScannerID0” is set in the scanner ID 228 in the scanner device 106. As the scanner ID 228, a unique ID assigned to each individual at the time of product manufacture is selected. For example, a serial number assigned to each individual (for example, 00000001, 00000002, or 00000003) may be employed.

ステップS4001で、CPU121は、USBスキャナドライバ102がインストールされているかどうかを判断する。インストールされているかは、例えば、レジストリを参照することにより判断できる。このように、CPU121は、判断アプリケーションによって、制御ソフトウエアモジュールが情報処理装置にインストールされているか否かを判定する判定手段として機能することになる。インストールされていないと判断した場合(図1のパーソナルコンピュータ100のソフトウエアブロック構成である場合)には、ステップS4002に進む。   In step S4001, the CPU 121 determines whether the USB scanner driver 102 is installed. Whether it is installed can be determined by referring to a registry, for example. As described above, the CPU 121 functions as a determination unit that determines whether or not the control software module is installed in the information processing apparatus by the determination application. If it is determined that it is not installed (if the software block configuration of the personal computer 100 in FIG. 1), the process advances to step S4002.

ステップS4002で、CPU121は、ドライバなどの制御ソフトウエアモジュールを契約条件にしたがってPCにインストール可能か否かを判定する。例えば、CPU121は、インストール回数カウンタ227のカウント値(インストール回数)と、契約により定められたインストール可能回数とをスキャナ装置106に問い合せ、インストール回数がインストール可能回数未満であるか否かを判定する。インストール回数カウンタ227は、制御ソフトウエアモジュールをいずれかの情報処理装置にインストールした回数を計数する計数手段の一例である。また、CPU121は、インストールした回数と、予め定められたインストール可能回数とを比較する比較手段の一例である。   In step S4002, the CPU 121 determines whether or not a control software module such as a driver can be installed in the PC according to the contract conditions. For example, the CPU 121 inquires of the scanner device 106 about the count value (installation count) of the installation count counter 227 and the installable count determined by the contract, and determines whether the install count is less than the installable count. The installation number counter 227 is an example of a counting unit that counts the number of times that the control software module is installed in any of the information processing apparatuses. The CPU 121 is an example of a comparison unit that compares the number of times of installation with a predetermined number of installable times.

なお、インストール回数カウンタ227が、残りのインストール可能回数(残数)をカウントしても良い。この場合、インストール回数カウンタ227の初期値は、予め許可された最大のインストール可能回数が設定される。そして、インストール回数カウンタ227は、インストールが実行されるたびに、カウント値を減数して行く。CPU121は、カウント値(残数)がゼロになっているか否かを判定する。インストール可能であれば、ステップS4003に進む。   The installation number counter 227 may count the remaining installable number of times (remaining number). In this case, the maximum number of installable times permitted in advance is set as the initial value of the installation number counter 227. The installation number counter 227 decrements the count value every time installation is executed. The CPU 121 determines whether or not the count value (remaining number) is zero. If installation is possible, the process proceeds to step S4003.

ステップS4003で、CPU121は、インストール可能である旨のインストール開始メッセージを表示する。   In step S4003, CPU 121 displays an installation start message indicating that installation is possible.

図12は、インストール開始メッセージの一例を示した図である。このメッセージ上には、インストールを実行するか否かを問い合せるためのOKボタン1201と、キャンセルボタン1202とが配置されている。   FIG. 12 is a diagram showing an example of the installation start message. On this message, an OK button 1201 and a cancel button 1202 for inquiring whether or not to execute the installation are arranged.

ステップS4004で、CPU121は、インストールを実行すべきか否かを判定する。例えば、CPU121は、OKボタン1201の押下を検出するとインストールを実行すべきと判定し、ステップS4005に進む。一方、CPU121は、キャンセルボタン1202の押下を検出するとインストールを実行すべきでないと判定し、本処理を終了する。   In step S4004, the CPU 121 determines whether or not to perform installation. For example, when the CPU 121 detects that the OK button 1201 is pressed, the CPU 121 determines that the installation should be executed, and the process advances to step S4005. On the other hand, when the CPU 121 detects that the cancel button 1202 is pressed, it determines that the installation should not be executed, and ends the present process.

ステップS4005で、CPU121は、インストーラ225を起動する。   In step S4005, the CPU 121 activates the installer 225.

ステップS4006で、CPU121は、インストーラ225にしたがって、パーソナルコンピュータ100にキャプチャアプリケーション222およびUSBスキャナドライバ102をスキャナ装置106から読み出してインストールする。キャプチャアプリケーション222およびUSBスキャナドライバ102は、例えば、ハードディスクドライブにCPU121によって書き込まれる。よって、CPU121は、記憶手段に記憶されている制御ソフトウエアモジュールと同一またはより新しいバージョンの制御ソフトウエアモジュールのいずれもが情報処理装置にインストールされていないときに、記憶手段から制御ソフトウエアモジュールを読み出して情報処理装置に書き込む書き込み手段の一例である。   In step S4006, the CPU 121 reads out the capture application 222 and the USB scanner driver 102 from the scanner device 106 and installs them in the personal computer 100 according to the installer 225. The capture application 222 and the USB scanner driver 102 are written to the hard disk drive by the CPU 121, for example. Therefore, when the control software module of the same or newer version than the control software module stored in the storage means is not installed in the information processing apparatus, the CPU 121 removes the control software module from the storage means. It is an example of the writing means which reads and writes in information processing apparatus.

キャプチャアプリケーション222およびUSBスキャナドライバ102は、CPU110、USBコントローラ128及びUSBインターフェース107によって、ROM127から読み出されて、パーソナルコンピュータ100へと転送される。よって、CPU110、USBコントローラ128及びUSBインターフェース107は、記憶手段に記憶されている制御ソフトウエアモジュールと同一またはより新しいバージョンの制御ソフトウエアモジュールのいずれもが情報処理装置にインストールされていないときに、記憶手段に記憶されている制御ソフトウエアモジュールを情報処理装置にインストールするために転送する転送手段の一例といえよう。   The capture application 222 and the USB scanner driver 102 are read from the ROM 127 and transferred to the personal computer 100 by the CPU 110, USB controller 128, and USB interface 107. Therefore, the CPU 110, the USB controller 128, and the USB interface 107, when none of the control software modules of the same or newer version than the control software modules stored in the storage unit are installed in the information processing apparatus, It can be said that it is an example of transfer means for transferring the control software module stored in the storage means for installation in the information processing apparatus.

なお、インストールは、管理者権限を持つユーザでなければ実行できない。よって、管理者権限を持つユーザでなければ、管理者権限を持つユーザがインストールを実行するよう促す必要がある。   Note that installation can only be performed by a user with administrator privileges. Therefore, if the user is not a user with administrator authority, a user with administrator authority needs to be prompted to execute installation.

図13は、管理者権限を持つユーザによるログインを求める旨のダイアログの一例を示した図である。   FIG. 13 is a diagram showing an example of a dialog requesting login by a user having administrator authority.

CPU121は、現在のユーザが管理者権限を有していないと判定すると、このダイアログボックスをディスプレイ127に表示する。当該ダイアログには、ユーザIDの入力部1301と、パスワードの入力部1302とが配置されている。なお、管理者権限を持つユーザによるログインを求める旨のダイアログを表示する代わりに、CPU121は、インストール作業を中止してもよい。   If the CPU 121 determines that the current user does not have administrator authority, the CPU 121 displays this dialog box on the display 127. In the dialog, a user ID input unit 1301 and a password input unit 1302 are arranged. Instead of displaying a dialog requesting login by a user having administrator authority, the CPU 121 may cancel the installation operation.

ステップS4007で、CPU121は、インストールが正常終了したか否かを判定する。管理者権限を持つユーザがログインしていれば、通常、インストールは正常に終了する。   In step S4007, the CPU 121 determines whether the installation has been normally completed. If a user with administrator privileges is logged in, the installation normally ends normally.

ステップS4008で、CPU121は、インストール回数カウンタ227のカウント値を1つ増やす。なお、インストール回数カウンタ227で残数をカウントしている場合は、残数を1つ減数する。インストール回数カウンタ227は、例えば、CPU121からアクセス可能な不揮発性の記憶領域(SRAMやEEPROMなど)に記憶されたファイルである。また、CPU121は、制御ソフトウエアモジュールをいずれかの情報処理装置にインストールした回数を計数して不揮発性の記憶領域に書き込む回数書き込み手段の一例である。   In step S4008, the CPU 121 increments the count value of the installation number counter 227 by one. When the remaining number is counted by the installation number counter 227, the remaining number is reduced by one. The installation number counter 227 is, for example, a file stored in a nonvolatile storage area (SRAM, EEPROM, etc.) accessible from the CPU 121. In addition, the CPU 121 is an example of a number writing unit that counts the number of times that the control software module is installed in any one of the information processing apparatuses and writes the counted number in the nonvolatile storage area.

ステップS4009で、CPU121は、パーソナルコンピュータ100内にインストールしたUSBスキャナドライバ102が管理しているインストール元情報229に、スキャナ装置106から読み出したスキャナID228(”ScannerID0”)をセットする。   In step S4009, the CPU 121 sets the scanner ID 228 (“ScannerID0”) read from the scanner device 106 in the installation source information 229 managed by the USB scanner driver 102 installed in the personal computer 100.

一方、インストール開始メッセージ上のキャンセルボタンの押下によってインストールが中止された場合(S4004でNO)、管理者権限を持たないユーザがログインしていた場合、管理者権限を持つユーザによるログインを求める旨のダイアログにてキャンセルボタンが選択され場合、または、ダイアログが表示されずにインストール作業が失敗した場合(S4007でNO)、CPU121は、インストール作業を行わずに、次の処理に移る。   On the other hand, if the installation is canceled by pressing the cancel button on the installation start message (NO in S4004), if a user without administrator authority is logged in, the user with administrator authority is requested to log in. If the cancel button is selected in the dialog, or if the installation operation fails without displaying the dialog (NO in S4007), the CPU 121 proceeds to the next process without performing the installation operation.

また、インストール回数が契約により定められた上限回数に達していた場合(S4002でNO)、ステップS4010に進む。   If the number of installations has reached the upper limit number determined by the contract (NO in S4002), the process proceeds to step S4010.

ステップS4010で、CPU121は、インストール回数が上限に達しているため、パーソナルコンピュータ100に画像読み取りを行うためのキャプチャアプリケーション222およびUSBスキャナドライバ102をインストールできない旨のメッセージを表示する。その後、CPU121は、インストール作業を中止して、次の処理に進む。このように、CPU121は、インストールした回数がインストール可能回数未満であれば制御ソフトウエアモジュールのインストールを許可し、インストールした回数がインストール可能回数以上であれば制御ソフトウエアモジュールのインストールを禁止するインストール制限手段の一例である。   In step S4010, the CPU 121 displays a message indicating that the capture application 222 and the USB scanner driver 102 for reading an image cannot be installed in the personal computer 100 because the number of installations has reached the upper limit. Thereafter, the CPU 121 stops the installation work and proceeds to the next processing. As described above, the CPU 121 permits the installation of the control software module if the number of times of installation is less than the installable number, and prohibits the installation of the control software module if the number of times of installation is the installable number or more. It is an example of a means.

図14は、インストール回数が上限に達したことを示すメッセージの一例を示した図である。   FIG. 14 is a diagram illustrating an example of a message indicating that the number of installations has reached the upper limit.

一方、すでに、USBスキャナドライバ102がパーソナルコンピュータ100内にインストールされていると判断した場合(S4001でYES)、つまり、図2に示したパーソナルコンピュータ100のソフトウエアブロック構成である場合、ステップS4011に進む。   On the other hand, if it is determined that the USB scanner driver 102 has already been installed in the personal computer 100 (YES in S4001), that is, if the software block configuration of the personal computer 100 shown in FIG. move on.

ステップS4011で、CPU121は、アンインストールフラグ232がセットされているかどうかを判定する。アンインストールフラグ232は、キャプチャアプリケーション222のユーザインターフェース上に設けられたアンインストールボタン302を押下することによりセットされる。アンインストールフラグ232がセットされている場合(S4011でYES)には、ステップS4012に進む。   In step S4011, the CPU 121 determines whether the uninstall flag 232 is set. The uninstall flag 232 is set by pressing an uninstall button 302 provided on the user interface of the capture application 222. If the uninstall flag 232 is set (YES in S4011), the process proceeds to step S4012.

ステップS4012で、CPU121は、パーソナルコンピュータ内に保持されているインストール元情報229と、スキャナ装置106に保持されているスキャナID228とを比較し、両者が一致するか否かを判定する。すなわち、PCにドライバをインストールする際に使用されたスキャナ装置と、アンインストールを実行しようとしているスキャナ装置とが同一の個体であるか否かを判定する。両者が同一であれば、ステップS4013に進む。このように、CPU121は、周辺装置が保有している固有の識別情報と、情報処理装置に保持されている識別情報とが一致するか否かを判断する判断手段の一例である。   In step S4012, the CPU 121 compares the installation source information 229 held in the personal computer with the scanner ID 228 held in the scanner device 106, and determines whether or not they match. That is, it is determined whether or not the scanner device used when installing the driver on the PC and the scanner device about to be uninstalled are the same individual. If both are the same, the process proceeds to step S4013. As described above, the CPU 121 is an example of a determination unit that determines whether the unique identification information held by the peripheral device matches the identification information held by the information processing device.

ステップS4013で、CPU121は、USBスキャナドライバ102、及びキャプチャアプリケーション222をアンインストールする旨のアンインストール開始メッセージをディスプレイに表示する。   In step S <b> 4013, the CPU 121 displays an uninstall start message to uninstall the USB scanner driver 102 and the capture application 222 on the display.

図15は、アンインストール開始メッセージの一例を示した図である。アンインストール開始メッセージには、アンインストールを許可するためのOKボタン1501と、キャンセルするためのキャンセルボタン1502とが配置されている。   FIG. 15 is a diagram showing an example of the uninstallation start message. In the uninstallation start message, an OK button 1501 for permitting uninstallation and a cancel button 1502 for canceling are arranged.

ステップS4014で、CPU121は、アンインストールが許可されたか否かを判定する。このメッセージ上のOKボタンが押下られると、CPU121は、アンインストールが許可されたものと認識し、ステップS4015に進む。   In step S4014, the CPU 121 determines whether or not uninstallation is permitted. When the OK button on this message is pressed, the CPU 121 recognizes that the uninstallation is permitted, and proceeds to step S4015.

ステップS4015で、CPU121は、アンインストーラ230を起動する。   In step S4015, the CPU 121 activates the uninstaller 230.

ステップS4016で、CPU121は、アンインストーラ230にしたがって、キャプチャアプリケーション222およびUSBスキャナドライバ102をアンインストールする。これにより、キャプチャアプリケーション222およびUSBスキャナドライバ102がハードディスクドライブ122から削除される。このように、CPU121は、周辺装置が保有している固有の識別情報と、情報処理装置に保持されている識別情報とが一致するときに、ドライバソフトウエアを情報処理装置から削除する削除手段の一例である。   In step S <b> 4016, the CPU 121 uninstalls the capture application 222 and the USB scanner driver 102 according to the uninstaller 230. As a result, the capture application 222 and the USB scanner driver 102 are deleted from the hard disk drive 122. Thus, the CPU 121 deletes the driver software from the information processing device when the unique identification information held by the peripheral device matches the identification information held by the information processing device. It is an example.

なお、アンインストールも、管理者権限を持つユーザでなければ実行できない。そのため、CPU121は、制限ユーザあるいは一般ユーザがログインしているときは、管理者権限を持つユーザによるログインを求める旨のダイアログをディスプレイに表示する。   Uninstallation can only be performed by a user with administrator privileges. Therefore, when a restricted user or a general user is logged in, the CPU 121 displays a dialog requesting login by a user having administrator authority on the display.

図16は、管理者権限を持つユーザによるログインを求める旨のダイアログの一例を示した図である。アンインストールを継続するには、管理者権限のユーザIDとパスワードとを入力する必要がある。なお、CPU121は、ダイアログを表示せず、アンインストール作業を中止してもよい。   FIG. 16 is a diagram illustrating an example of a dialog requesting login by a user having administrator authority. In order to continue the uninstallation, it is necessary to input a user ID and password with administrator authority. Note that the CPU 121 may cancel the uninstall operation without displaying the dialog.

ステップS4017で、CPU121は、アンインストールが正常終了したか否かを判定する。管理者権限を持つユーザがログインしていれば、通常、アンインストールは正常に終了する。アンインストールが正常終了していれば、ステップS4018に進む。   In step S4017, the CPU 121 determines whether or not the uninstallation has ended normally. If a user with administrator privileges is logged in, uninstallation normally ends normally. If the uninstallation is normally completed, the process proceeds to step S4018.

ステップS4018で、CPU121は、インストール回数カウンタ227のカウント値を1つ減数する。このように、インストール回数カウンタ227は、制御ソフトウエアモジュールが情報処理装置からアンインストールされると回数を減数する計数手段の一例である。なお、インストール回数カウンタ227で残数をカウントしている場合は、残数を1つ増やす。このように、CPU121は、ドライバソフトウエアが情報処理装置からアンインストールされるとインストールした回数を減数するか、または、インストール可能回数(残数)を増やす回数調整手段の一例である。なお、CPU121は、しきい値としてのインストール可能回数を増やしてもよい。   In step S4018, the CPU 121 decrements the count value of the installation number counter 227 by one. Thus, the installation number counter 227 is an example of a counting unit that decrements the number of times when the control software module is uninstalled from the information processing apparatus. When the remaining number is counted by the installation number counter 227, the remaining number is increased by one. As described above, the CPU 121 is an example of a number adjusting unit that reduces the number of times of installation when the driver software is uninstalled from the information processing apparatus or increases the number of installable times (remaining number). Note that the CPU 121 may increase the number of installable times as a threshold value.

ステップS4019で、CPU121は、USBスキャナドライバ102が管理していたインストール元情報229を削除する。   In step S4019, the CPU 121 deletes the installation source information 229 managed by the USB scanner driver 102.

ステップS4020で、CPU121は、スキャナ装置106内に保持しているアンインストールフラグ232をクリアし、次の処理に移る。   In step S4020, the CPU 121 clears the uninstall flag 232 held in the scanner device 106, and proceeds to the next process.

一方、インストール元情報229とスキャナID228とが一致しなかった場合(S4012でNO)、アンインストール開始メッセージ上のCancelボタンが押下られてアンインストールを中止した場合(S4015でNO)、または、管理者権限を持たないユーザがログインしていない場合であって管理者権限を持つユーザによるログインを求める旨のダイアログにてCancelを選択した場合、若しくは、ダイアログが表示されずにアンインストール作業が失敗に終わった場合(S4018でNO)、ステップS4020に進む。すなわち、アンインストールフラグ232がクリアされる。   On the other hand, when the installation source information 229 and the scanner ID 228 do not match (NO in S4012), when the Cancel button on the uninstallation start message is pressed to cancel the uninstallation (NO in S4015), or the administrator If Cancel is selected in a dialog box requesting login by a user with administrator authority when an unauthorized user is not logged in, or the dialog box is not displayed, the uninstall operation has failed. If NO in step S4018, the flow advances to step S4020. That is, the uninstall flag 232 is cleared.

ところで、アンインストールフラグ232がセットされていない場合(S4011でNO)には、ステップS4021に進む。   If the uninstall flag 232 is not set (NO in S4011), the process proceeds to step S4021.

スキャナ装置106が保有しているUSBスキャナドライバ226は、機能向上等を目的に、バージョンが更新されることがある。よって、市場には、それぞれバージョンの異なるUSBスキャナドライバ226を保有する複数のスキャナ装置106が存在することとなる。このような状況は、1ユーザが所有している複数のスキャナ装置106にも発生しうる。よって、最新のドライバでは機能が向上していることが多いため、より最新のドライバがインストールされることが望ましい。   The USB scanner driver 226 owned by the scanner device 106 may be updated for the purpose of improving the function. Therefore, there are a plurality of scanner devices 106 each having a different version of the USB scanner driver 226 in the market. Such a situation can also occur in a plurality of scanner devices 106 owned by one user. Therefore, since the functions of the latest driver are often improved, it is desirable to install the latest driver.

ステップS4021で、CPU121は、パーソナルコンピュータ100内にインストールされているUSBスキャナドライバ102のバージョンとスキャナ装置106内にあるUSBスキャナドライバ226のバージョンとを比較し、前者が後者よりも古いか否かを判定する。インストールされているUSBスキャナドライバ102はスキャナ装置内にあるUSBスキャナドライバ226よりバージョンが古いと判断した場合、ステップS4022に進む。このように、CPU121は、判断アプリケーションによって、記憶手段に記憶されている制御ソフトウエアモジュールと同一またはより新しいバージョンの制御ソフトウエアモジュールのいずれかが情報処理装置にインストールされているか否かを判定する判定手段として機能することになる。   In step S4021, the CPU 121 compares the version of the USB scanner driver 102 installed in the personal computer 100 with the version of the USB scanner driver 226 in the scanner device 106, and determines whether the former is older than the latter. judge. If the installed USB scanner driver 102 determines that the version is older than the USB scanner driver 226 in the scanner device, the process advances to step S4022. In this manner, the CPU 121 determines whether any control software module of the same or newer version than the control software module stored in the storage unit is installed in the information processing apparatus by the determination application. It will function as a determination means.

ステップS4022で、CPU121は、インストール開始メッセージをディスプレイ126に表示する。なお、ここでは、インストール開始メッセージを表示する前に、S4002で行っているようなインストール回数カウンタの確認をしていない。その理由は、パーソナルコンピュータにUSBスキャナドライバ102がインストール済みであるため、これをインストールした際にインストール回数カウンタが確認されているためである。すなわち、インストール済みのドライバを更新することは、契約内の作業である。よって、インストール回数カウンタを再度確認する必要は無いのである。   In step S4022, the CPU 121 displays an installation start message on the display 126. Here, before displaying the installation start message, the installation counter is not checked as in S4002. The reason is that since the USB scanner driver 102 has already been installed in the personal computer, the installation counter is confirmed when the USB scanner driver 102 is installed. In other words, updating the installed driver is a work within the contract. Therefore, there is no need to check the installation number counter again.

ステップS4023で、CPU121は、更新インストール(いわゆるアップデート)を実行すべきか否かを判定する。例えば、インストール開始メッセージに設けられOKボタン1201が押下られたのであれば、CPU121は、インストールを実行すべきと判定する。インストールを実行すべきであれば、ステップS4024に進む。   In step S4023, the CPU 121 determines whether update installation (so-called update) should be executed. For example, if the OK button 1201 provided in the installation start message is pressed, the CPU 121 determines that the installation should be executed. If installation is to be executed, the process proceeds to step S4024.

ステップS4024で、CPU121は、インストーラ225を起動する。   In step S4024, the CPU 121 activates the installer 225.

ステップS4025で、CPU121は、インストーラ225にしたがって、パーソナルコンピュータ100にキャプチャアプリケーション222およびUSBスキャナドライバ102を上書きインストールする。この際、新規インストールでないため、スキャナ装置106で保持しているインストール回数カウンタ227、パーソナルコンピュータ100内にインストールしたUSBスキャナドライバ102で管理しているインストール元情報229の変更は行わない。   In step S 4025, the CPU 121 overwrites and installs the capture application 222 and the USB scanner driver 102 in the personal computer 100 according to the installer 225. At this time, since it is not a new installation, the installation number counter 227 stored in the scanner device 106 and the installation source information 229 managed by the USB scanner driver 102 installed in the personal computer 100 are not changed.

一方、インストール開始メッセージ上のCancelボタンが押下られてインストールが中止された場合(S4023でNO)、CPU121は、インストール作業は行わず、次の処理に移る。   On the other hand, when the Cancel button on the installation start message is pressed and installation is stopped (NO in S4023), the CPU 121 proceeds to the next process without performing the installation operation.

また、インストールされているUSBスキャナドライバ102はスキャナ内にあるUSBスキャナドライバ226よりバージョンが古くはないと判断した(S4012でNO)場合も、CPU121は、インストール作業を行わずに、次の処理に移る。   Also, if the installed USB scanner driver 102 determines that the version is not older than the USB scanner driver 226 in the scanner (NO in S4012), the CPU 121 proceeds to the next process without performing the installation work. Move.

<スキャナクラスデバイスへの切り替え処理>
図17は、パーソナルコンピュータにおけるスキャナクラスデバイスへの切り替え処理を示したフローチャートである。この処理は、オペレーティングシステム101が実行するステップS3007に相当する。
<Switching to scanner class device>
FIG. 17 is a flowchart showing the switching process to the scanner class device in the personal computer. This process corresponds to step S3007 executed by the operating system 101.

ステップS8006で、CPU121は、パーソナルコンピュータ100に周辺装置(スキャナ装置106)が接続されたか否かを判定する。スキャナ装置106が接続されたことを検出すると、ステップS8007に進む。   In step S8006, the CPU 121 determines whether a peripheral device (scanner device 106) is connected to the personal computer 100. If it is detected that the scanner device 106 is connected, the process advances to step S8007.

ステップS8007で、CPU121は、スイッチ221を切り替え、標準的な周辺装置のクラスインターフェースを有効にする。すなわち、USBマスストレージドライバ202が無効となる。   In step S8007, the CPU 121 switches the switch 221 to enable the standard peripheral device class interface. That is, the USB mass storage driver 202 becomes invalid.

ステップS8008で、CPU121は、どのような周辺装置が接続されたのかを判別するため、周辺装置から情報を取得する。この周辺装置からの情報取得するためには、例えば、CPU121が、GET_DESCRIPTORリクエストを発行する。   In step S8008, the CPU 121 acquires information from the peripheral device in order to determine what peripheral device is connected. In order to acquire information from the peripheral device, for example, the CPU 121 issues a GET_DESCRIPTOR request.

ステップS8009で、CPU121は、スキャナ装置106が送信したディスクリプタを受信する。標準デバイスディスクリプタのデバイスクラスコード、あるいは、インターフェースクラスコードにて、USBスキャナクラスコードが指定されている。そのため、CPU121は、接続された周辺装置をUSBスキャナクラスデバイスであると認識する。   In step S8009, the CPU 121 receives the descriptor transmitted by the scanner device 106. The USB scanner class code is specified by the device class code or the interface class code of the standard device descriptor. Therefore, the CPU 121 recognizes the connected peripheral device as a USB scanner class device.

ステップS8010で、CPU121は、USBスキャナクラスコードに関連するUSBスキャナドライバや、その他のクライアントドライバをRAM124に展開する。これにより、CPU121は、スイッチ220をソフト的に切り替え、USBスキャナドライバ102を有効とする。   In step S8010, the CPU 121 develops the USB scanner driver related to the USB scanner class code and other client drivers in the RAM 124. As a result, the CPU 121 switches the switch 220 in software and validates the USB scanner driver 102.

図18は、スキャナ装置におけるスキャナクラスデバイスへの切り替え処理を示したフローチャートである。   FIG. 18 is a flowchart showing the switching process to the scanner class device in the scanner apparatus.

ステップS9005で、スキャナ装置106のCPU110は、クラスインターフェースの切り替えが指示されたると、パーソナルコンピュータ100から接続の切り離しを実行する。例えば、CPU110は、USBバスのD+信号とD−信号をともに0にする。   In step S9005, the CPU 110 of the scanner device 106 disconnects the connection from the personal computer 100 when an instruction to switch the class interface is given. For example, the CPU 110 sets both the D + signal and the D− signal of the USB bus to 0.

ステップS9006で、CPU110は、USBインターフェースを介して、パーソナルコンピュータ100に再接続を実行する。例えば、CPU110は、USBバスリセットステートに移行する。   In step S9006, the CPU 110 executes reconnection to the personal computer 100 via the USB interface. For example, the CPU 110 shifts to the USB bus reset state.

ステップS9007で、CPU110は、ソフト的にスイッチ221を切り替え、USBスキャナクラスインターフェース108を有効とし、USBマスストレージクラスインターフェース206を無効にする。   In step S9007, the CPU 110 software switches the switch 221 to enable the USB scanner class interface 108 and disable the USB mass storage class interface 206.

ステップS9008で、CPU110は、GET_DESCRIPTORリクエストを受信したか否かを判定する。GET_DESCRIPTORリクエストを受信したことを検知すると、ステップS9009に進む。   In step S9008, the CPU 110 determines whether a GET_DESCRIPTOR request has been received. If it is detected that a GET_DESCRIPTOR request has been received, the process advances to step S9009.

ステップS9009で、CPU110は、ディスクリプタをパーソナルコンピュータ100に送信する(S9009)。なお、GET_DESCRIPTORリクエストに対して返信する標準デバイスディスクリプタのデバイスクラスコード、あるいは、標準インターフェースディスクリプタのインターフェースクラスコードに、USBスキャナクラスコードが指定され。   In step S9009, the CPU 110 transmits the descriptor to the personal computer 100 (S9009). Note that the USB scanner class code is designated as the device class code of the standard device descriptor returned to the GET_DESCRIPTOR request or the interface class code of the standard interface descriptor.

なお、本実施形態では、デバイスクラスコード、あるいは、インターフェースクラスコードで、USBスキャナクラスコードを送信した。しかし、CPU110は、クラスなし(0)を送信し、CPU121は、標準デバイスディスクリプタのベンダIDとプロダクトIDから、予めパーソナルコンピュータ100にインストールしてある定義ファイルを参照してクラスを確定してもよい。   In this embodiment, the USB scanner class code is transmitted using the device class code or the interface class code. However, the CPU 110 may send no class (0), and the CPU 121 may determine the class from the vendor ID and product ID of the standard device descriptor with reference to the definition file installed in the personal computer 100 in advance. .

以上説明したように、画像読み取り装置自身で保持しているキャプチャアプリケーションおよび画像読み取り装置に対するデバイスドライバが意図されていないパーソナルコンピュータに不用意に配布される可能性が小さくなる。すなわち、許諾契約上の権利を保守させやすくなる。従来のように、何台のPCにインストールしたかを管理者が手動でカウントすることは、もはや不要となろう。   As described above, the possibility that the capture application held by the image reading apparatus itself and the device driver for the image reading apparatus are inadvertently distributed to an unintended personal computer is reduced. That is, it becomes easy to maintain the rights in the license agreement. It will no longer be necessary for the administrator to manually count how many PCs are installed as in the prior art.

また、一旦インストールしたキャプチャアプリケーションおよび画像読み取り装置に対するデバイスドライバを削除したときは、インストール回数を減数するか、インストール残数を増やすようにした。これにより、画像読み取りを行うパーソナルコンピュータを買い換えた場合などであっても、ユーザの利益が損なわれにくくなった。   In addition, when the installed capture application and device driver for the image reading device are deleted, the number of installations is reduced or the remaining number of installations is increased. As a result, even when a personal computer that reads an image is replaced, the user's profit is hardly lost.

なお、本実施形態においては、スキャナ装置106に対する、制御ソフトウエアモジュールとして、インストーラ225によりパーソナルコンピュータ100にインストールされるUSBスキャナドライバ102とスキャナ装置106内に保持しているUSBスキャナドライバ226についてバージョンを比較する例を説明した。しかし、インストーラ225によりパーソナルコンピュータ100にインストールされるキャプチャアプリケーション222とスキャナ装置106内に保持しているキャプチャアプリケーション231とについても、バージョン比較による更新インストールを適用してもよい。また、USBスキャナドライバ102については更新インストールを行わずにキャプチャアプリケーション231について更新インストールを行う場合も本発明に含まれる。   In the present embodiment, the version of the USB scanner driver 102 installed in the personal computer 100 by the installer 225 and the USB scanner driver 226 held in the scanner device 106 are used as control software modules for the scanner device 106. An example of comparison has been described. However, update installation based on version comparison may also be applied to the capture application 222 installed in the personal computer 100 by the installer 225 and the capture application 231 held in the scanner device 106. The present invention also includes a case where update installation is performed for the capture application 231 without performing update installation for the USB scanner driver 102.

また、本実施形態においては、ROM127上のインストーラ225、アンインストーラ230、USBスキャナドライバ226、キャプチャアプリケーション231を、仮想的なCDドライブに装着されたデータCD上のファイルとみなして扱うことができる構成とした。しかし、データCD上のファイルとして扱うことができない構成であってもよい。例えば、仮想的なCDドライブは、仮想的なCD−RWドライブ、仮想的なDVD−ROMドライブまたは仮想的なハードディスクドライブ等であってもよく、オートランファイルが実行可能な構成等の、プログラムを自動実行可能とする構成であればよい。   In the present embodiment, the installer 225, the uninstaller 230, the USB scanner driver 226, and the capture application 231 on the ROM 127 can be regarded as files on the data CD attached to the virtual CD drive. It was. However, the configuration may not be handled as a file on the data CD. For example, the virtual CD drive may be a virtual CD-RW drive, a virtual DVD-ROM drive, a virtual hard disk drive, or the like, and automatically executes a program such as a configuration capable of executing an autorun file. Any configuration that enables execution is acceptable.

また、本実施形態において、キャプチャアプリケーション222のユーザインターフェースは、画像表示機能を備えていないが、画像表示機能を備えるようにしてもよい。   In the present embodiment, the user interface of the capture application 222 does not have an image display function, but may have an image display function.

また、本実施形態においては、キャプチャアプリケーション222とUSBスキャナドライバ102がインストールされたパーソナルコンピュータがあることを前提に、アンインストールを説明した。しかし、インストールされたキャプチャアプリケーション222とUSBスキャナドライバ102をアンインストールする前に、インストールしていたパーソナルコンピュータが壊れてしまうこともある。このような事態にも対処することが望ましい。   In the present embodiment, the uninstallation has been described on the assumption that there is a personal computer in which the capture application 222 and the USB scanner driver 102 are installed. However, the installed personal computer may be broken before the installed capture application 222 and USB scanner driver 102 are uninstalled. It is desirable to deal with such a situation.

図19は、コンピュータとスキャナ装置とのソフトウエアブロック図である。既に説明した箇所には、同一の参照符号を付与している。ここでは、パーソナルコンピュータが故障した場合に、インストール回数カウンタを正しく復旧する方法について説明する。   FIG. 19 is a software block diagram of the computer and the scanner device. The parts already described are given the same reference numerals. Here, a method for correctly restoring the installation number counter when a personal computer fails will be described.

図19によれば、カウンタ復旧アプリケーション284が追加されている。カウンタ復旧アプリケーション284は、パーソナルコンピュータが故障した場合に、インストール回数カウンタを正しく復旧するためのコンピュータプログラムである。   According to FIG. 19, a counter recovery application 284 is added. The counter restoration application 284 is a computer program for correctly restoring the installation number counter when a personal computer breaks down.

図20は、カウンタ復旧アプリケーションのユーザインターフェースの一例を示した図である。例えば、スキャナ装置106の製造者や営業担当者等、インストールするキャプチャアプリケーション222とUSBスキャナドライバ102の許諾契約上認められるインストール可能残数を復旧する者が、カウンタ復旧アプリケーション284を起動して、インストール回数カウンタ227を復旧してもよい。   FIG. 20 is a diagram illustrating an example of a user interface of the counter recovery application. For example, a person who recovers the installable remaining number permitted by the license agreement of the capture application 222 to be installed and the USB scanner driver 102 such as a manufacturer or sales representative of the scanner device 106 starts the counter recovery application 284 and installs it. The number counter 227 may be restored.

インストールカウンタ復旧アプリケーション234のユーザインターフェースには、スキャナ装置106が保持しているインストール回数カウンタ227のカウント値と、製品仕様として定義している最大インストール可能回数とが表示される。さらに、復旧後のインストール回数カウンタのカウント値を入力するためのエディットボックス303も表示される。CPU121は、エディットボックス303に入力された数値を、インストール回数カウンタ227に設定する。なお、インストール回数カウンタ227が、インストール可能残数をカウントするカウンタであっても、本発明を適用できることはいうまでもない。   On the user interface of the installation counter recovery application 234, the count value of the installation number counter 227 held by the scanner device 106 and the maximum installable number of times defined as product specifications are displayed. Further, an edit box 303 for inputting the count value of the installation number counter after restoration is also displayed. The CPU 121 sets the numerical value input in the edit box 303 in the installation number counter 227. Needless to say, the present invention can be applied even if the installation number counter 227 is a counter that counts the remaining installable number.

本実施形態においては、マイクロソフトウインドウズ(登録商標)オペレーティングシステムを一例として説明した。しかし、マック(登録商標)オペレーティングシステムやリナックス(登録商標)オペレーティングシステムなど、その他のオペレーティングシステムであっても本発明を同様に適用可能である。また、本発明は更新インストールを行わず、インストールされていないUSBスキャナドライバおよびインストールされていないキャプチャアプリケーションの少なくとも一方をインストールする場合も含むものとする。   In this embodiment, the Microsoft Windows (registered trademark) operating system has been described as an example. However, the present invention can be similarly applied to other operating systems such as a Mac (registered trademark) operating system and a Linux (registered trademark) operating system. Further, the present invention includes a case in which at least one of a USB scanner driver that is not installed and a capture application that is not installed is installed without performing update installation.

コンピュータとスキャナ装置とのソフトウエアブロック図である。It is a software block diagram of a computer and a scanner apparatus. キャプチャアプリケーションおよびスキャナドライバをインストールした状態のパーソナルコンピュータとスキャナ装置とについてのソフトウエアブロック図である。FIG. 2 is a software block diagram of a personal computer and a scanner device in a state where a capture application and a scanner driver are installed. パーソナルコンピュータとスキャナ装置とについてのハードウエアブロック図である。It is a hardware block diagram about a personal computer and a scanner apparatus. 制御ソフトウエアモジュールのインストールからその実行までを示したフローチャートである。It is the flowchart which showed from control software module installation to its execution. CDドライブに相当するフォルダの一例を示した図である。It is the figure which showed an example of the folder corresponded to CD drive. キャプチャアプリケーションが起動したときにディスプレイに表示されるユーザインターフェースの一例を示した図である。It is the figure which showed an example of the user interface displayed on a display when a capture application starts. キャプチャアプリケーションが起動したときにディスプレイに表示されるユーザインターフェースの一例を示した図である。It is the figure which showed an example of the user interface displayed on a display when a capture application starts. アンインストールボタンが押下られたときに表示されるユーザインターフェース(ダイアログ)の一例を示す図である。It is a figure which shows an example of the user interface (dialog) displayed when the uninstallation button is pressed. パーソナルコンピュータにおけるマスストレージデバイスへの切り替え処理の詳細を示した図である。It is the figure which showed the detail of the switching process to the mass storage device in a personal computer. スキャナ装置におけるマスストレージデバイスへの切り替え処理の詳細を示した図である。It is the figure which showed the detail of the switching process to the mass storage device in a scanner apparatus. 判断アプリケーションの動作の一例を示したフローチャートである。It is the flowchart which showed an example of operation | movement of a judgment application. 判断アプリケーションの動作の一例を示したフローチャートである。It is the flowchart which showed an example of operation | movement of a judgment application. インストール開始メッセージの一例を示した図である。It is the figure which showed an example of the installation start message. 管理者権限を持つユーザによるログインを求める旨のダイアログの一例を示した図である。It is the figure which showed an example of the dialog to the effect of requiring the login by the user with administrator authority. インストール回数が上限に達したことを示すメッセージの一例を示した図である。It is the figure which showed an example of the message which shows that the frequency | count of installation reached the upper limit. アンインストール開始メッセージの一例を示した図であるIt is the figure which showed an example of the uninstallation start message 管理者権限を持つユーザによるログインを求める旨のダイアログの一例を示した図である。It is the figure which showed an example of the dialog to the effect of requiring the login by the user with administrator authority. パーソナルコンピュータにおけるスキャナクラスデバイスへの切り替え処理を示したフローチャートである。It is the flowchart which showed the switching process to the scanner class device in a personal computer. スキャナ装置におけるスキャナクラスデバイスへの切り替え処理を示したフローチャートである。6 is a flowchart showing a process of switching to a scanner class device in the scanner device. コンピュータとスキャナ装置とのソフトウエアブロック図である。It is a software block diagram of a computer and a scanner apparatus. カウンタ復旧アプリケーションのユーザインターフェースの一例を示した図である。It is the figure which showed an example of the user interface of a counter recovery application.

符号の説明Explanation of symbols

100 パーソナルコンピュータ
101 オペレーティングシステム
102 USBスキャナドライバ
103 USBインターフェースドライバ
104 パーソナルコンピュータ100内のUSBインターフェース
105 USBケーブル
106 スキャナ
107 スキャナ装置106内のUSBインターフェース
108 USBスキャナクラスインターフェース
110 スキャナ装置106内のCPU
112 画像読み取り部
121 パーソナルコンピュータ100内のCPU
122 パーソナルコンピュータ100内のハードディスク
123 パーソナルコンピュータ100内のROM
124 パーソナルコンピュータ100内のRAM
125 キーボード/マウス
126 ディスプレイ
127 スキャナ装置106内のROM
128 USBコントローラ
201 ファイルシステム
202 USBマスストレージドライバ
203 スキャナ装置106内のRAM
205 CDドライブインターフェース
206 USBマスストレージインターフェース
207 スキャナ装置106内のオートランファイル
220 パーソナルコンピュータ100内のUSBインターフェース切り替えスイッチ
221 スキャナ装置106内のUSBインターフェース切り替えスイッチ
222 パーソナルコンピュータ100内のキャプチャアプリケーション
224 スキャナ装置106内の判断アプリケーション
225 スキャナ装置106内のインストーラ
226 スキャナ装置106内のUSBスキャナドライバ
227 スキャナ装置106内のUSBスキャナドライバインストールカウンタ
228 スキャナ装置106のID
229 USBスキャナドライバ102のインストール元情報
230 スキャナ装置106内のアンインストーラ
231 スキャナ装置106内のキャプチャアプリケーション
232 スキャナ装置106内のアンインストールフラグ
234 インストールカウンタ復旧アプリケーション
301 キャプチャアプリケーション222のユーザインターフェース上でスキャンを開始するスキャンボタン
302 キャプチャアプリケーション222のユーザインターフェース上でパーソナルコンピュータ100にインストールされているUSBスキャナドライバ102とキャプチャアプリケーション222のアンインストールを開始するアンインストールボタン
303 インストールカウンタ復旧アプリケーション234上で復旧後のインストール回数カウンタ設定エディットボックス
304 CDドライブとして認識されたときのフォルダ
DESCRIPTION OF SYMBOLS 100 Personal computer 101 Operating system 102 USB scanner driver 103 USB interface driver 104 USB interface in the personal computer 100 105 USB cable 106 Scanner 107 USB interface in the scanner device 108 USB scanner class interface 110 CPU in the scanner device 106
112 Image Reading Unit 121 CPU in Personal Computer 100
122 Hard disk in the personal computer 100 123 ROM in the personal computer 100
124 RAM in the personal computer 100
125 Keyboard / Mouse 126 Display 127 ROM in Scanner Device 106
128 USB Controller 201 File System 202 USB Mass Storage Driver 203 RAM in Scanner Device 106
205 CD drive interface 206 USB mass storage interface 207 Autorun file in scanner device 220 USB interface changeover switch 221 in personal computer 100 221 USB interface changeover switch in scanner device 106 222 Capture application in personal computer 100 224 In scanner device 106 Judgment application 225 Installer in scanner device 106 226 USB scanner driver in scanner device 106 227 USB scanner driver installation counter in scanner device 106 228 ID of scanner device 106
229 Installation source information of the USB scanner driver 230 Uninstaller in the scanner device 106 231 Capture application in the scanner device 106 232 Uninstall flag in the scanner device 234 Installation counter recovery application 301 Scan on the user interface of the capture application 222 Scan button to start 302 Uninstall button to start uninstalling the USB scanner driver 102 and the capture application 222 installed in the personal computer 100 on the user interface of the capture application 222 303 Installation after recovery on the installation counter recovery application 234 Times Folder of when it is recognized as a counter setting edit box 304 CD drive

Claims (9)

情報処理装置の外部記憶装置としての機能と該情報処理装置の外部周辺機器としての機能とを備えた周辺装置であって、
前記外部周辺機器としての機能を前記情報処理装置が制御するために使用する制御ソフトウエアモジュールを記憶するとともに、前記外部記憶装置として記憶領域を提供する記憶手段と、
前記記憶手段に記憶されている前記制御ソフトウエアモジュールと同一バージョンの制御ソフトウエアモジュールまたはより新しいバージョンの制御ソフトウエアモジュールのいずれもが前記情報処理装置にインストールされていないときに、前記記憶手段に記憶されている前記制御ソフトウエアモジュールを前記情報処理装置にインストールするために転送する転送手段と、
前記制御ソフトウエアモジュールをいずれかの情報処理装置にインストールした回数を管理する管理手段と
を含むことを特徴とする周辺装置。
A peripheral device having a function as an external storage device of the information processing device and a function as an external peripheral device of the information processing device,
Storage means for storing a control software module used for the information processing apparatus to control the function as the external peripheral device, and providing a storage area as the external storage device;
When neither the control software module of the same version as the control software module stored in the storage means nor the control software module of a newer version is installed in the information processing apparatus, the storage means Transfer means for transferring the stored control software module for installation in the information processing apparatus;
And a management unit that manages the number of times the control software module is installed in any of the information processing apparatuses.
前記情報処理装置に前記外部記憶装置として認識させるか、前記外部周辺機器として認識させるかを切り替える切り替え手段をさらに備え、
前記記憶手段は、前記制御ソフトウエアモジュールのインストールを制御するコンピュータプログラムを記憶しており、
前記コンピュータプログラムは、前記周辺装置を前記外部記憶装置として認識している前記情報処理装置によって前記記憶手段から読み出されて実行されるコンピュータプログラムであり、
さらに、前記コンピュータプログラムは、前記情報処理装置を、
前記記憶手段に記憶されている前記制御ソフトウエアモジュールが前記情報処理装置にインストールされているか否か、及び前記情報処理装置にインストールされている当該制御ソフトウエアモジュールのバージョンが前記記憶手段に記憶されている前記制御ソフトウエアモジュールのバージョンよりも古いか否か、の少なくとも一方を判定する判定手段と、
前記記憶手段に記憶されている前記制御ソフトウエアモジュールが前記情報処理装置にインストールされていないとき、または前記制御ソフトウエアモジュールよりも古いバージョンの該制御ソフトウエアモジュールが前記情報処理装置にインストールされているときに、前記記憶手段から前記制御ソフトウエアモジュールを読み出して前記情報処理装置に書き込む書き込み手段と、
前記情報処理装置にインストールされている当該制御ソフトウエアモジュールのバージョンが前記記憶手段に記憶されている前記制御ソフトウエアモジュールのバージョンよりも古くないと判定されたとき、または、前記記憶手段から前記制御ソフトウエアモジュールが前記情報処理装置に書き込まれたときに、前記切り替え手段に切り替え命令を送信することで、前記周辺装置を前記外部周辺機器として認識させる認識制御手段
として機能させるコンピュータプログラムであることを特徴とする請求項1に記載の周辺装置。
A switching means for switching whether the information processing apparatus recognizes the external storage device or the external peripheral device;
The storage means stores a computer program for controlling installation of the control software module,
The computer program is a computer program that is read from the storage unit and executed by the information processing apparatus that recognizes the peripheral device as the external storage device,
Further, the computer program causes the information processing apparatus to
Whether the control software module stored in the storage means is installed in the information processing apparatus, and the version of the control software module installed in the information processing apparatus is stored in the storage means. Determination means for determining at least one of whether the version of the control software module is older than,
When the control software module stored in the storage means is not installed in the information processing apparatus, or a version of the control software module older than the control software module is installed in the information processing apparatus Writing means for reading out the control software module from the storage means and writing it into the information processing device;
When it is determined that the version of the control software module installed in the information processing apparatus is not older than the version of the control software module stored in the storage means, or the control from the storage means When the software module is written in the information processing apparatus, the computer program causes the peripheral device to be recognized as the external peripheral device by transmitting a switching command to the switching unit. The peripheral device according to claim 1, wherein
前記外部記憶装置は、CDドライブであり、前記コンピュータプログラムは、前記記憶手段のうちCDドライブとして認識される記憶領域に記憶されているAutorun.infによって自動的に起動されるように記述されていることを特徴とする請求項2に記載の周辺装置。   The external storage device is a CD drive, and the computer program is stored in a storage area recognized as a CD drive in the storage means. 3. The peripheral device according to claim 2, which is described so as to be automatically activated by inf. 前記管理手段は、
前記制御ソフトウエアモジュールをいずれかの情報処理装置にインストールした回数を計数する計数手段を備えることを特徴とする請求項1ないし3のいずれか1項に記載の周辺装置。
The management means includes
The peripheral device according to claim 1, further comprising a counting unit that counts the number of times the control software module is installed in any of the information processing devices.
前記計数手段は、
前記制御ソフトウエアモジュールが前記情報処理装置からアンインストールされると前記回数を減数することを特徴とする請求項4に記載の周辺装置。
The counting means includes
The peripheral device according to claim 4, wherein the number of times is reduced when the control software module is uninstalled from the information processing device.
前記記憶手段の少なくとも一部の記憶領域は、不揮発性の記憶領域であり、
前記コンピュータプログラムは、前記情報処理装置を、
前記制御ソフトウエアモジュールをいずれかの情報処理装置にインストールした回数を計数して前記不揮発性の記憶領域に書き込む回数書き込み手段と、
前記インストールした回数と、予め定められたインストール可能回数とを比較する比較手段と、
前記インストールした回数が前記インストール可能回数未満であれば前記制御ソフトウエアモジュールのインストールを許可し、前記インストールした回数が前記インストール可能回数以上であれば前記制御ソフトウエアモジュールのインストールを禁止するインストール制限手段と
して機能させることを特徴とする請求項2または3に記載の周辺装置。
At least a part of the storage area of the storage means is a nonvolatile storage area,
The computer program stores the information processing apparatus.
Count writing means for counting the number of times the control software module is installed in any one of the information processing devices and writing it in the nonvolatile storage area, and
Comparison means for comparing the number of times of installation with a predetermined number of installable times,
Installation restriction means for permitting installation of the control software module if the number of times of installation is less than the installable number of times, and prohibiting installation of the control software module if the number of times of installation is equal to or greater than the number of times of installation The peripheral device according to claim 2, wherein the peripheral device functions as a peripheral device.
前記制御ソフトウエアモジュールは、ドライバソフトウエアとアンインストーラプログラムとを含み、
前記アンインストーラプログラムは、前記情報処理装置を、
前記ドライバソフトウエアが前記情報処理装置からアンインストールされると前記インストールした回数を減数するか、または、前記インストール可能回数を増やす回数調整手段として機能させることを特徴とする請求項6に記載の周辺装置。
The control software module includes driver software and an uninstaller program,
The uninstaller program causes the information processing apparatus to
7. The peripheral according to claim 6, wherein when the driver software is uninstalled from the information processing apparatus, the driver software functions as a frequency adjusting unit that decreases the number of times of installation or increases the number of times of installation. apparatus.
前記コンピュータプログラムは、前記情報処理装置を、
前記周辺装置が保有している固有の識別情報を前記情報処理装置に保持させる保持手段として機能させ、
前記アンインストーラプログラムは、前記情報処理装置を、
前記周辺装置が保有している固有の識別情報と、前記情報処理装置に保持されている識別情報とが一致するか否かを判断する判断手段と、
前記周辺装置が保有している固有の識別情報と、前記情報処理装置に保持されている識別情報とが一致するときに、前記ドライバソフトウエアを前記情報処理装置から削除する削除手段と
して機能させることを特徴とする請求項7に記載の周辺装置。
The computer program stores the information processing apparatus.
Function as holding means for holding the unique identification information held by the peripheral device in the information processing device;
The uninstaller program causes the information processing apparatus to
Determination means for determining whether the unique identification information held by the peripheral device matches the identification information held by the information processing device;
When the unique identification information held by the peripheral device matches the identification information held by the information processing device, the driver software is caused to function as a deletion unit that deletes the driver software from the information processing device. The peripheral device according to claim 7.
前記周辺装置は、画像読取装置であることを特徴とする請求項1ないし8のいずれか1項に記載の周辺装置。   The peripheral device according to claim 1, wherein the peripheral device is an image reading device.
JP2008265689A 2008-10-14 2008-10-14 Peripheral equipment Withdrawn JP2010097284A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008265689A JP2010097284A (en) 2008-10-14 2008-10-14 Peripheral equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008265689A JP2010097284A (en) 2008-10-14 2008-10-14 Peripheral equipment

Publications (1)

Publication Number Publication Date
JP2010097284A true JP2010097284A (en) 2010-04-30

Family

ID=42258940

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008265689A Withdrawn JP2010097284A (en) 2008-10-14 2008-10-14 Peripheral equipment

Country Status (1)

Country Link
JP (1) JP2010097284A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014056493A (en) * 2012-09-13 2014-03-27 Nec Access Technica Ltd Installation system for software, installation method, and external device
JP2018060397A (en) * 2016-10-06 2018-04-12 富士ゼロックス株式会社 Information processing apparatus, information processing system, and program

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014056493A (en) * 2012-09-13 2014-03-27 Nec Access Technica Ltd Installation system for software, installation method, and external device
JP2018060397A (en) * 2016-10-06 2018-04-12 富士ゼロックス株式会社 Information processing apparatus, information processing system, and program

Similar Documents

Publication Publication Date Title
US8250042B2 (en) Data processing apparatus and data processing method with conversion of error information
US9207899B2 (en) Management apparatus, system, and method of controlling the same
US9612818B2 (en) Information processing apparatus, program management method for information processing apparatus, and non-transitory computer-readable storage medium
US20150172504A1 (en) Information processing apparatus, method of controlling the same and storage medium
JP4961288B2 (en) Information processing apparatus, information processing program, recording medium, printing apparatus, and network system
US10671365B2 (en) Information processing apparatus, storage medium, and control method
EP3299981B1 (en) Image forming apparatus, method for controlling image forming apparatus, and storage medium
JP4209790B2 (en) Information processing apparatus, image forming apparatus, error processing method when starting program, and recording medium
JP6476541B2 (en) Image forming apparatus, print request deleting method, and program
JP5137858B2 (en) Image processing apparatus, image processing method, storage medium, and program
US9483630B2 (en) Information processing apparatus, method of controlling the same and storage medium
US9696978B2 (en) Information processing apparatus, application management method, and non-transitory computer-readable medium
US11523025B2 (en) Image processing apparatus that displays a message indicating that alteration of a login application has been detected, control method thereof, and storage medium
US10310839B2 (en) Information processing apparatus, control program management system, and control program management method
JP2010097284A (en) Peripheral equipment
US20200021692A1 (en) Image processing apparatus, control method thereof, and storage medium
US11330129B2 (en) Image forming system, image forming apparatus, and storing medium storing application control program
US20130067452A1 (en) Management server, host device, and application management method
US10298719B2 (en) Network system, and control method for network system
US20150062649A1 (en) Information processing apparatus, program, and control method
JP5168040B2 (en) Image processing apparatus, image processing system, control program, and recording medium
US10019600B2 (en) Information processing apparatus, control method for information processing apparatus, and storage medium
US10951781B2 (en) Information processing apparatus that displays a confirmation screen if display languages of a screen and an operation object do not match, method of controlling the same, and storage medium
US11977801B2 (en) Image processing apparatus, control method, and storage medium
US10394506B2 (en) Information processing apparatus, system, control method, and program

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20120110