JP2005115440A - Computer program for making computer perform uninstallation - Google Patents
Computer program for making computer perform uninstallation Download PDFInfo
- Publication number
- JP2005115440A JP2005115440A JP2003345351A JP2003345351A JP2005115440A JP 2005115440 A JP2005115440 A JP 2005115440A JP 2003345351 A JP2003345351 A JP 2003345351A JP 2003345351 A JP2003345351 A JP 2003345351A JP 2005115440 A JP2005115440 A JP 2005115440A
- Authority
- JP
- Japan
- Prior art keywords
- user
- printing
- computer
- printer driver
- printing terminal
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、周辺装置を用いるためのソフトウェアがインストールされたコンピュータに、そのソフトウェアをアンインストールさせる技術に関する。 The present invention relates to a technique for uninstalling software for a computer in which software for using a peripheral device is installed.
従来、パーソナルコンピュータ(以下PCと略称する)のユーザは、印刷装置やCD−ROMドライブ装置等の周辺装置を、PCにローカル接続して用いている。ユーザは、周辺装置を購入した場合、周辺装置をPCに接続するとともに、その周辺装置専用のドライバをPCにインストールする。PCは、インストールされたドライバをハードディスクに記憶する。PCは、USBポート等に周辺装置が接続された場合には、ハードディスクに記憶されたドライバをメモリ上の領域に展開して用いる。周辺装置が切り離された場合、ドライバが展開されたメモリ上の領域は、他のソフトウェア等を展開するために解放される。ドライバは、アンインストールのユーザ指示があるまで、ハードディスクが保持し続ける。 Conventionally, a user of a personal computer (hereinafter abbreviated as “PC”) uses a peripheral device such as a printing device or a CD-ROM drive device locally connected to the PC. When a user purchases a peripheral device, the user connects the peripheral device to the PC and installs a driver dedicated to the peripheral device on the PC. The PC stores the installed driver in the hard disk. When a peripheral device is connected to a USB port or the like, the PC expands and uses a driver stored in the hard disk in an area on the memory. When the peripheral device is disconnected, the area on the memory where the driver is expanded is released in order to expand other software and the like. The driver continues to be held on the hard disk until a user instruction for uninstallation is given.
しかし、近年では、家庭や職場以外の公共の場所、例えば図書館などに周辺装置を設置し、ユーザ所有のコンピュータで利用可能に提供することが望まれている。この場合、周辺装置及びPCは、一時的に接続されるに過ぎない。したがって、周辺装置をPCから切り離した後には、PCのハードディスクに記憶された、その周辺装置のドライバは無用のものとなる。ところが、無用なドライバでも、ユーザがアンインストールを行わない限り、ハードディスク上の領域を占有し続け、ハードディスクの空き容量の減少させる。また、無用なドライバがインストールされていると、PCの処理効率が低下する。 However, in recent years, it has been desired that peripheral devices be installed in public places other than homes and workplaces, such as libraries, and provided so as to be usable on a user-owned computer. In this case, the peripheral device and the PC are only temporarily connected. Therefore, after the peripheral device is disconnected from the PC, the driver for the peripheral device stored in the hard disk of the PC becomes useless. However, even a useless driver continues to occupy an area on the hard disk unless the user uninstalls it, thereby reducing the free capacity of the hard disk. In addition, if an unnecessary driver is installed, the processing efficiency of the PC decreases.
かかる課題は、上述の場合に限らず、コンピュータに周辺装置を接続して用いる場合に共通する課題である。本発明は、かかる課題に鑑み、コンピュータを周辺装置に接続して用いる場合の利便性を向上することを目的とする。 Such a problem is not limited to the above-described case, and is a problem common when a peripheral device is connected to a computer. The present invention has been made in view of the above problems, and an object of the present invention is to improve convenience when a computer is connected to a peripheral device.
上記課題の少なくとも一部を解決するために、本発明では、次の構成を適用した。
本発明のコンピュータプログラムは、
周辺装置にローカル接続し、該周辺装置を用いるためのソフトウェアがインストールされたコンピュータに、該インストールされたソフトウェアのアンインストールを行わせるためのコンピュータプログラムであって、
前記周辺装置とのローカル接続が切断されたことを検知する機能と、
該検知に応じ、前記アンインストールを行う機能とを前記コンピュータに実現させるためのコンピュータプログラムたることを要旨とする。
In order to solve at least a part of the above problems, the following configuration is applied in the present invention.
The computer program of the present invention is:
A computer program for locally connecting to a peripheral device and causing a computer installed with software for using the peripheral device to uninstall the installed software,
A function of detecting that the local connection with the peripheral device is disconnected;
The gist is a computer program for causing the computer to realize the function of performing the uninstallation in response to the detection.
このようにすることで、上述のコンピュータは、周辺装置の使用を終了した場合に、その周辺装置を用いるためのソフトウェアを、自動的にアンインストールすることができる。アンインストールにより、コンピュータに記憶されたデータ量を減少させ、追記可能なデータ量を増加させることができる。また、アンインストールにより、コンピュータの処理効率を向上させることができる。 By doing so, the above-described computer can automatically uninstall the software for using the peripheral device when the use of the peripheral device is terminated. Uninstallation can reduce the amount of data stored in the computer and increase the amount of data that can be additionally written. In addition, the processing efficiency of the computer can be improved by the uninstallation.
「周辺装置を用いるためのソフトウェア」は、周辺装置のドライバであってもよい。また、例えば、印刷装置に印刷を行わせる画像処理ソフトウェア等、周辺装置に動作指示を行う種々のアプリケーションソフトウェアであってもよい。 The “software for using the peripheral device” may be a driver for the peripheral device. Further, for example, various application software that gives an operation instruction to the peripheral device such as image processing software that causes the printing device to perform printing may be used.
なお、コンピュータは、活線挿抜可能な接続ポートにより、周辺装置にローカル接続するものとしてもよい。活線挿抜可能な接続ポートとは、例えば、USBポートやIEEE1394ポートが含まれる。このように活線挿抜可能な接続ポートに接続された周辺装置は、コンピュータや周辺装置の電源を切らなくとも、コンピュータから切り離すことができる。したがって、ユーザは、ローカル接続の切断に応じたアンインストールを、コンピュータや周辺装置の電源を切らなくとも、コンピュータに行わせることができる。 The computer may be locally connected to the peripheral device through a connection port that can be hot-plugged. Examples of the connection ports that can be hot-plugged include a USB port and an IEEE 1394 port. Thus, the peripheral device connected to the connection port that can be hot-plugged can be disconnected from the computer without turning off the power of the computer or the peripheral device. Therefore, the user can cause the computer to perform uninstallation corresponding to the disconnection of the local connection without turning off the power of the computer or the peripheral device.
なお、アンインストールは、コンピュータから「ソフトウェア」を完全に取り除く場合に限ることはない。例えば、「ソフトウェア」のデータサイズを圧縮する場合を含む。 Uninstallation is not limited to removing “software” completely from the computer. For example, the case where the data size of “software” is compressed is included.
本発明のコンピュータプログラムは、
前記ソフトウェアの一機能として実現されていてもよい。
The computer program of the present invention is:
It may be realized as a function of the software.
このようにすることで、本発明のコンピュータプログラムを、「周辺装置を用いるためのソフトウェア」のインストール時に、コンピュータに容易にインストールすることができる。 In this way, the computer program of the present invention can be easily installed on a computer when “software for using a peripheral device” is installed.
なお、本発明のコンピュータプログラムは、「周辺装置を用いるためのソフトウェア」の一機能として実現されていなくともよい。例えば、コンピュータにインストールされたOSの一機能として実現されていてもよい。 The computer program of the present invention may not be realized as a function of “software for using peripheral devices”. For example, it may be realized as a function of an OS installed in a computer.
本発明のコンピュータプログラムは、
前記アンインストールの実行可否を所定の条件に基づいて切り換える機能を前記コンピュータに実現させるものとしてもよい。
The computer program of the present invention is:
The computer may be configured to realize a function of switching whether or not the uninstallation can be performed based on a predetermined condition.
このようにすることで、一定の場合には、アンインストールを抑止させることができる。例えば、ユーザの所定の指示があった場合に、抑止がされるものとしてもよい。また、コンピュータに記憶されたデータ量が所定量以下の場合に抑止がされてもよいし、コンピュータに追記可能なデータ量が所定量以上の場合に抑止がされてもよいし、アンインストールにより解放される記憶領域のサイズが所定サイズより小さい場合に抑止がされてもよい。また、アンインストールされるソフトウェアの種類に応じて抑止が行われてもよい。例えば、クラスドライバなど、複数種類の周辺装置の制御に利用可能なソフトウェアのアンインストールは抑止されるものとしてもよい。なお、実行可否を判断する「所定の条件」は、上述した種々の条件を組み合わせた条件であってもよい。 By doing so, uninstallation can be suppressed in a fixed case. For example, suppression may be performed when there is a predetermined instruction from the user. In addition, suppression may be performed when the amount of data stored in the computer is equal to or less than a predetermined amount, or may be suppressed when the amount of data that can be added to the computer is equal to or greater than the predetermined amount, or may be released by uninstallation. Suppression may be performed when the size of the storage area to be processed is smaller than a predetermined size. Further, suppression may be performed according to the type of software to be uninstalled. For example, uninstalling software that can be used to control a plurality of types of peripheral devices such as a class driver may be suppressed. The “predetermined condition” for determining whether or not execution is possible may be a condition obtained by combining the various conditions described above.
本発明は、上述のコンピュータプログラムとしての構成の他、コンピュータプログラムを記録した記録媒体、そのプログラムを含み搬送波内に具現化されたデータ信号など種々の態様で実現することが可能である。本発明をコンピュータプログラムを記録した記録媒体等として構成する場合、記録媒体としては、フレキシブルディスクやCD−ROM、光磁気ディスク、ICカード、ROMカートリッジ、パンチカード、バーコードなどの符号が印刷された印刷物、コンピュータの内部記憶装置(RAMやROMなどのメモリ)および外部記憶装置などコンピュータが読み取り可能な種々の媒体を利用できる。 The present invention can be realized in various forms such as the above-described configuration as a computer program, a recording medium that records the computer program, and a data signal that includes the program and is embodied in a carrier wave. When the present invention is configured as a recording medium on which a computer program is recorded, the recording medium is printed with a code such as a flexible disk, a CD-ROM, a magneto-optical disk, an IC card, a ROM cartridge, a punch card, and a barcode. Various types of computer-readable media such as printed matter, computer internal storage (memory such as RAM and ROM), and external storage can be used.
本発明における、アンインストール方法は、
周辺装置にローカル接続し、該周辺装置を用いるためのソフトウェアがインストールされたコンピュータが、該インストールされたソフトウェアのアンインストールを行う方法であって、
前記周辺装置とのローカル接続が切断されたことを検知する工程と、
該検知に応じ、前記アンインストールを行う工程とを備えることを要旨とする。
In the present invention, the uninstall method is:
A computer locally connected to a peripheral device and installed with software for using the peripheral device is a method for uninstalling the installed software,
Detecting that the local connection with the peripheral device is disconnected;
And a step of performing the uninstallation in response to the detection.
本発明のコンピュータは、
周辺装置にローカル接続するための接続ポートと、
該周辺装置を用いるためにインストールされるソフトウェアを記憶する記憶部と、
前記周辺装置とのローカル接続が切断されたことを検知する検知部と、
該検知に応じ、前記インストールされたソフトウェアのアンインストールを行うアンインストール部とを備えることを要旨とする。
The computer of the present invention
A connection port for local connection to peripheral devices;
A storage unit for storing software installed to use the peripheral device;
A detection unit for detecting that the local connection with the peripheral device is disconnected;
The gist of the present invention is to include an uninstaller that uninstalls the installed software in response to the detection.
このように、本発明は、コンピュータプログラムとしての構成の他、コンピュータにアンインストールを行わせる方法や、コンピュータの制御方法など、方法の発明として構成することもできるし、アンインストールを行うコンピュータとして構成することもできる。 As described above, the present invention can be configured as a method invention such as a method for causing a computer to perform uninstallation or a computer control method in addition to a configuration as a computer program, and can also be configured as a computer that performs uninstallation. You can also
以下、本発明の実施の形態について実施例に基づき次の順序で説明する。
A.印刷システムの概略構成:
B.機能ブロック構成:
B1.ユーザPC200:
B2.印刷ターミナル300:
C.処理:
C1.自動インストール:
C2.印刷:
C2a.ユーザPC200の処理:
C2b.印刷ターミナル300の処理:
C3.自動アンインストール:
D.効果:
E.変形例:
Hereinafter, embodiments of the present invention will be described in the following order based on examples.
A. General configuration of the printing system:
B. Functional block configuration:
B1. User PC 200:
B2. Printing terminal 300:
C. processing:
C1. Automatic installation:
C2. printing:
C2a. Processing of user PC 200:
C2b. Processing of printing terminal 300:
C3. Automatic uninstall:
D. effect:
E. Variation:
A.印刷システムの概略構成:
図1は、本実施例における印刷システム100の概略構成を示す説明図である。印刷システム100は、ユーザPC200と印刷ターミナル300とプリンタ400によって構成されている。ユーザPC200は、いわゆるノート型パソコンであり、Windows(登録商標)系OSがインストールされている。印刷ターミナル300もパソコンであり、同様にWindows系OSがインストールされている。
A. General configuration of the printing system:
FIG. 1 is an explanatory diagram illustrating a schematic configuration of a
印刷ターミナル300は、プリンタケーブルによってプリンタ400と接続されている。印刷ターミナル300は、空港のロビーや図書館といった公共の場に設置されている。ユーザは、このような場所に設置された印刷ターミナル300に対して、USBケーブルによりユーザPC200をローカル接続することにより、容易に印刷を行うことができる。ユーザPC200はUSBホストとして動作し、USBデバイスたる印刷ターミナル300の動作を制御する。
The printing terminal 300 is connected to the
印刷ターミナル300は、ハードウェアとして、USBコネクタ(Bタイプ)320、USBデバイスコントローラ310、制御部300a、及びパラレルポート330を備えている。また、ユーザPC200は、ハードウェアとして、USBコネクタ(Aタイプ)260、USBホストコントローラ250、ハードディスク200b、及び制御部200aを備えている。
The printing terminal 300 includes a USB connector (B type) 320, a
印刷ターミナル300は、パラレルポート330によりプリンタ400にローカル接続する。なお、パラレルポート330に代えて、RS−232CポートやUSBポート、あるいはネットワークで接続するものとしてもよい。また、印刷ターミナル300は、プリンタ400と一体的に構成されていてもよい。
The printing terminal 300 is locally connected to the
ユーザPC200のUSBコネクタ(Aタイプ)260は、USBマウスやUSBキーボード、USBプリンタなどの種々のUSBデバイスをユーザPC200に電気的に接続するためのコネクタである。USBホストコントローラ250は、USBデバイスを制御するためのコントローラである。USBホストコントローラ250は、USBコネクタ260にUSBデバイスが接続されたことや、接続されたUSBデバイスが切り離されたことを検出することができる。USBホストコントローラ250は、USBコネクタ260にUSBデバイスが接続された場合、そのUSBデバイスからコンフィグレーション情報を受信する。コンフィグレーション情報は、接続されたUSBデバイスの種類を特定する。コンフィグレーション情報には、例えば、USBデバイスの固有のデバイスIDや、製造元を表すベンダIDが含まれており、また、USBデバイスがUSB規格に準じたCD−ROMドライブ装置として動作している旨を表す情報も含まれている。
A USB connector (A type) 260 of the
印刷ターミナル300のUSBコネクタ(Bタイプ)320は、USBケーブルを介して、USBホストのUSBコネクタ(Aタイプ)に接続するためのコネクタである。USBデバイスコントローラ310は、USBホストからの制御を受けるためのコントローラである。USBデバイスコントローラ310とUSBコネクタ(Bタイプ)320とは、拡張ボード上に実装され、印刷ターミナル300のPCIスロットを介してPCIバスに接続される(図示せず)。USBデバイスコントローラ310は、USBホストからの要求に応じ、USBホストにコンフィグレーション情報を送信する。
A USB connector (B type) 320 of the printing terminal 300 is a connector for connecting to a USB connector (A type) of a USB host via a USB cable. The
ハードディスク200bは、ユーザPC200にインストールされたソフトウェアの命令コード等のデータなど、種々のデータを記憶する。
The
ユーザPC200及び印刷ターミナル300が有する制御部200a,300aは各々、CPU,ROM,RAM等により構成され、それぞれ、ユーザPC200及び印刷ターミナル300の他のハードウェアを制御する。図1には、制御部200a,300aがソフトウェア的に実現する機能ブロックの構成を併せて示した(破線、及び一点鎖線で図示)。なお、図示する機能ブロックの全部又は一部は、ハードウェア的に構成することも可能である。
The control units 200a and 300a included in the
印刷ターミナル300の制御部300aは、制御部300aが有するROMに記憶されたソフトウェアを読み出して用いることで、各機能ブロックを実現する。ユーザPC200の制御部200aは、ハードディスク200bに記憶されたソフトウェアをメモリ(RAM)に読み出して用いることで、各機能ブロックを実現する。
The control unit 300a of the printing terminal 300 implements each functional block by reading and using software stored in a ROM included in the control unit 300a. The control unit 200a of the
B.機能ブロック構成:
機能ブロックとして、印刷ターミナル300は、USBデバイスエミュレータ340、プレーヤ350、プリンタドライバ360、インストーラ記憶部380を備えている。また、ユーザPC200は、印刷アプリケーション210とGDI220とスプーラ230とCD−ROM標準ドライバ243と自動実行部242と汎用プリンタドライバ240とを備えている。後述のように、汎用プリンタドライバ240は、自動実行部242がユーザPC200にインストールする。
B. Functional block configuration:
As functional blocks, the printing terminal 300 includes a
B1.ユーザPC200:
ユーザPC200において、CD−ROM標準ドライバ243及び汎用プリンタドライバ240は各々、USBコネクタ260に接続されたUSBデバイスを用いるためのデバイスドライバである。CD−ROM標準ドライバ243は、USBマスストレージクラスの仕様に沿って設計された標準のCD−ROMデバイスに共通して用いることができるクラスドライバである。CD−ROM標準ドライバ243は、ユーザPC200に、工場出荷状態で予めインストールされている。一方、汎用プリンタドライバ240は、所定の印刷装置に汎用的に用いることができるプリンタドライバである。汎用プリンタドライバ240については、後で詳述する。
B1. User PC 200:
In the
ユーザPC200のOSは、USBコネクタ260にUSBデバイスが接続された場合、そのUSBデバイスの種類を特定するため、コンフィグレーション情報の送信をそのUSBデバイスに要求する。ユーザPC200のOSは、CD−ROM標準ドライバ243の制御対象の周辺装置がUSBコネクタ260に接続された場合にはCD−ROM標準ドライバ243を起動し、汎用プリンタドライバ240の制御対象の周辺装置がUSBコネクタ260に接続された場合には汎用プリンタドライバ240を起動する。
When a USB device is connected to the
自動実行部242は、ユーザPC200にインストールされたWindows系OSが実現する機能ブロックの一つであり、オートラン機能を奏する。具体的には、自動実行部242は、USBポート260にCD−ROMドライブ装置が接続された場合、そのルートフォルダに記憶された「autorun.inf」というファイル名のオートランファイルを読み出し、このファイルによって指定されたプログラムを実行する。本実施例の自動実行部242は、かかるオートラン機能に基づいて汎用プリンタドライバ240のインストールを行う。
The
印刷アプリケーション210は、文書作成ソフトウェアや表計算ソフトウェア、あるいは、画像処理ソフトウェアといった印刷機能を備えるソフトウェアである。印刷アプリケーション210は、ユーザから印刷指示があるとEMF(Enhanced Meta File)データを生成する。EMFデータは、Windows環境における印刷の高速化を図るために利用される中間ファイルであり、一連のGDI(Graphic Device Interface)コマンドが記録される。このため、EMFデータは、プリンタ400に依存しない描画コマンドによって印刷内容が記録されていることになる。印刷アプリケーション210は、OSのカーネルを構成するモジュールの一つであるGDI220の描画コマンドを用いて、EMFデータを生成する。印刷アプリケーション210は、こうしてEMFデータを生成すると、スプーラ230に送信する。スプーラ230は、印刷アプリケーション210等によって生成されたEMFデータをバッファリングするためにOSに標準的に備えられたモジュールである。
The
汎用プリンタドライバ240は、スプーラ230に蓄積されたEMFデータを順次読み出して、USBホストコントローラ250を介して印刷ターミナル300に送信する機能を備えている。
The general-
また、汎用プリンタドライバ240は、必要に応じて印刷ターミナル300からプリンタ400の所定の特性を表す特性データを取得する機能も有している。特性データには、例えば、プリンタ400がサポートする用紙のサイズや解像度、両面印刷機能の有無、カラー印刷機能の有無などの特性が定義されている。印刷アプリケーション210は、この特性データを利用して、EMFデータの生成オプションを設定する機能を有する。このため、プリンタ400の特性に応じたEMFデータを生成することができる。なお、汎用プリンタドライバ240は、種々の特性データを予め保持し、その1つを特定するデータを印刷ターミナル300から取得するものとしてもよい。
The general-
さらに、汎用プリンタドライバ240は、USBコネクタ260からプリンタ400が切り離されたことを検知した場合に、自己をアンインストールする機能も有する。
Furthermore, the general-
B2.印刷ターミナル300:
印刷ターミナル300において、USBデバイスエミュレータ340は、USBデバイスコントローラ310を制御するためのデバイスドライバである。
B2. Printing terminal 300:
In the printing terminal 300, the
USBデバイスエミュレータ340は、USBデバイスコントローラ310を用いて、ユーザPC200にコンフィグレーション情報を送信する。USBデバイスエミュレータ340は、印刷ターミナル300を、CD−ROMドライブ装置であるとユーザPC200に認識させるコンフィグレーション情報と、印刷装置であると認識させるコンフィグレーション情報とを使い分ける。前者は、ユーザPC200にCD−ROM標準ドライバ243を起動させるコンフィグレーション情報であり、後者は、ユーザPC200に汎用プリンタドライバ240を起動させるコンフィグレーション情報である。以下では、これらのコンフィグーション情報を各々、第1及び第2のコンフィグレーション情報と略称する。
The
インストーラ記憶部380は、印刷ターミナル300をユーザPC200がCD−ROMドライブ装置であると認識した場合に、ユーザPC200に読み出されるオートランファイルを記憶している。このオートランファイルは、ユーザPC200が自動実行すべきファイルとして、インストーラ記憶部380に同じく記憶された所定のインストーラを指定する。ユーザPC200の自動実行部242は、このインストーラを用いて、汎用プリンタドライバ240をユーザPC240にインストールすることができる。具体的には、汎用プリンタドライバ240の命令コード等のデータをハードディスク200bの所定領域に記憶する。なお、図1では、ハードディスク200bに記憶されたデータの一例として、汎用プリンタドライバ240のインストールによりハードディスク200bに記憶された、汎用プリンタドライバ240のデータを示している。汎用プリンタドライバ240のデータには、汎用プリンタドライバ240自身のアンインストーラの実行ファイルを含む。図1の「uninstall.exe」は、ハードディスク200bに記憶されたアンインストーラを例示したものである。汎用プリンタドライバ240は、ハードディスク200bに記憶されたアンインストーラを起動することで、自己をアンインストールすることができる。
The
USBデバイスエミュレータ340は、自らをリセットする機能も備える。リセットが行われると、ユーザPC200は、USBコネクタ260から印刷ターミナル300が一旦切り離され、再び接続されたものと認識する。この場合、ユーザPC200は、コンフィグレーション情報を再び印刷ターミナル300から取得する。
The
また、USBデバイスエミュレータ340は、印刷ターミナル300を印刷装置であると認識しているユーザPC200からEMFデータを取得する機能も備える。USBデバイスエミュレータ340は、取得されたEMFデータをプレーヤ350に受け渡す。
The
プレーヤ350は、USBデバイスエミュレータ340から受け渡されたEMFデータに応じた印刷をプリンタ400に行わせるアプリケーションである。プレーヤ350によって印刷処理が実行されると、プレーヤ350は、プリンタドライバ360からプリンタ400のデバイスコンテキストを取得して、EMFデータに記録されたGDIコマンドにより印刷内容を再生する。すると、プリンタドライバ360は、かかる印刷内容に応じてプリンタが解釈可能なRAWデータを作成する。プレーヤ350及びプリンタドライバ360は、EMFデータを、プリンタ400の解釈可能なRAWデータに変換する。
The
プリンタドライバ360は、生成したRAWデータを、パラレルポート330を介して送信し、プリンタ400に印刷を行わせる。印刷ターミナル300にインストールされるプリンタドライバ360には、ユーザPC200がプリンタ400に直接接続されたと仮定した場合に、ユーザPC200にインストールされるべきプリンタドライバを流用することができる。つまり、特殊なプリンタドライバではなく、一般的に流通しているプリンタドライバを利用することができる。
The
なお、本実施例では、USBデバイスエミュレータ340とプレーヤ350を別々のモジュールとして構成したが、USBデバイスエミュレータ340に、プレーヤ350の機能を持たせることにより、一体的に構成するものとしてもよい。
In this embodiment, the
C.処理:
図2は、印刷システム100で印刷が行われる処理のフローチャートである。
C1.自動インストール:
ステップSa1でユーザPC200は、USBケーブルによって印刷ターミナル300に接続されたことを検出する。ユーザPC200は、印刷ターミナル300の接続に応じ、図1左側のフローチャートに示す処理を開始する。ステップSa2でユーザPC200は、印刷ターミナル300に対してコンフィグレーション情報の送信を要求する。印刷ターミナル300は、この要求に応じて、図2右側のフローチャートに示した処理を開始する。
C. processing:
FIG. 2 is a flowchart of processing in which printing is performed in the
C1. Automatic installation:
In step Sa1, the
ステップSb1で印刷ターミナル300は、第1のコンフィグレーション情報をユーザPC200に送信する。これにより、ユーザPC200は、USBコネクタ260にCD−ROMドライブ装置が接続されたものと認識する。このため、ユーザPC200は、CD−ROM標準ドライバ243をメモリにロードする(ステップSa3)。
In step Sb1, the printing terminal 300 transmits the first configuration information to the
この後、ユーザPC200は、CD−ROMドライブ装置の接続を認識したため、オートランを行う。ユーザPC200は、まず、印刷ターミナル300からオートランファイルを取得するとともに、取得されたオートランファイルが指定するインストーラも読み出す(ステップSa4)。次に、読み出したインストーラを実行することで、ユーザPC200は、汎用プリンタドライバ240を自らにインストールする(ステップSa5)。インストーラは、汎用プリンタドライバ240のデータをハードディスク200bに格納させる。
Thereafter, since the
ユーザPC200が実行するインストーラは、インストールの完了に応じ、インストールが完了した旨を表す完了通知を印刷ターミナル300に送信する(ステップSa6)。ユーザPC200は、CD−ROMメディアのイジェクト指示を表す信号の送信により完了通知を行う。なお、ユーザPC200は、ドライブに所定のファイルを書き込む通信により完了通知を行ってもよい。なお、ユーザPC200は、完了通知を行わないものとしてもよい。この場合、印刷ターミナル300は、インストーラを送信(ステップSb2)し終えた時点で、即座に、ステップSb3のリセット処理を行うものとしてもよい。
In response to the completion of the installation, the installer executed by the
印刷ターミナル300は、完了通知を受信すると、USBデバイスエミュレータ340をリセットする(ステップSb3)。ユーザPC200は、印刷ターミナル300によるリセットを検出(ステップSa7)した場合、上記ステップSa2の場合と同様に、コンフィギュレーション情報の送信を印刷ターミナル300に要求する(ステップSa8)。印刷ターミナル300は、この要求に応じて、第2のコンフィグレーション情報を送信する(ステップSb4)。ユーザPC200は、このコンフィグレーション情報を受信することにより、印刷ターミナル300を印刷装置として認識し、ハードディスク200bに記憶された、汎用プリンタドライバ240のデータを、制御部200aのメモリにロードする(ステップSa9)。
When receiving the completion notification, the printing terminal 300 resets the USB device emulator 340 (step Sb3). When the
ステップSa10では、汎用プリンタドライバ240が、特性データの送信を印刷ターミナル300に要求する(ステップSa10)。印刷ターミナル300は、ユーザPC200の要求に応じて特性データを送信する(ステップSb5)。なお、特性データは、ステップSa5で、インストーラが印刷ターミナル300から取得してもよい。
In step Sa10, the general-
こうして、一連の自動インストール処理が終了すると、ユーザPC200と印刷ターミナル300は、印刷処理を実行することができる(ステップSa11、Sb6)。
Thus, when a series of automatic installation processing is completed, the
本実施例でUSBデバイスエミュレータ340は、印刷ターミナル300を、CD−ROMドライブ装置としてユーザPC200に認識させる。しかし、CD−ROMドライブ装置と認識させる代わりに、CD−R/RWドライブやDVD−ROM/RAM/R/RWドライブとして認識させるものとしてもよい。この他にも、PCにオートランを行わせ得る周辺装置であれば、いずれの種類の周辺装置と認識させてもよい。
In this embodiment, the
また、図2のステップSa5でインストーラは、汎用プリンタドライバ240がユーザPC200に既にインストールされているか否かを調べ、既にインストールがされていない場合にのみ、インストールを行うものとしてもよい。
Further, in step Sa5 in FIG. 2, the installer may check whether the general-
C2.印刷:
C2a.ユーザPC200の処理:
図3は、ユーザPC200における印刷処理のフローチャートである。図2のステップSa11に相当する処理である。
C2. printing:
C2a. Processing of user PC 200:
FIG. 3 is a flowchart of print processing in the
まず、ユーザPC200のユーザは、印刷アプリケーション210による印刷に先立ち、必要に応じて印刷設定を行う(ステップS40)。図中にはかかる印刷設定時にモニタ上に表示される設定ダイアログの一例を示した。この設定ダイアログは、印刷ターミナル300から取得した特性データに基づき汎用プリンタドライバ240が表示する。本実施例では、両面印刷するか否か、カラー/モノクロの指定、用紙サイズの選択が可能であるものとした。
First, prior to printing by the
次に、印刷アプリケーション210は、例えば、印刷ボタンの押下などの操作により、ユーザから印刷実行の要求を受信すると(ステップS41)、GDIコマンドによって、印刷内容に相当するEMFデータを生成する(ステップS42)。そして、生成したEMFデータをスプーラ230に蓄積する(ステップS43)。
Next, when the
次に、汎用プリンタドライバ240は、スプーラ230からEMFデータを読み出すと(ステップS44)、読み出したEMFデータを印刷ターミナル300へ送信する(ステップS45)。以上の処理により、ユーザPC200における印刷処理は終了する。
Next, when the general-
C2a.印刷ターミナル300の処理:
図4は、印刷ターミナル300における印刷処理のフローチャートである。図2のステップSb6に相当する処理である。
C2a. Processing of printing terminal 300:
FIG. 4 is a flowchart of the printing process in the printing terminal 300. This process corresponds to step Sb6 in FIG.
まず、印刷ターミナル300のUSBデバイスエミュレータ340は、ユーザPC200からEMFデータを受信すると(ステップS50)、このEMFデータをプレーヤ350に送る(ステップS51)。
First, when the
プレーヤ350は、USBデバイスエミュレータ340からEMFデータを入力すると、プリンタドライバ360からプリンタ400のデバイスコンテキストを取得して(ステップS52)、EMFデータに記録されたGDIコマンドによって印刷内容を再生する(ステップS53)。
When the
プレーヤ350によって印刷内容が再生されると、プリンタドライバ360は、再生された印刷内容をレンダリングして、プリンタ400が解釈可能なRAWデータを生成する(ステップS54)。そして、このRAWデータをプリンタ400に出力する(ステップS55)。以上の処理により、印刷ターミナル300における印刷処理は終了する。
When the print contents are reproduced by the
以上の説明した印刷処理を行う場合、汎用プリンタドライバ240は、印刷アプリケーション210が生成したEMFデータをそのままの形で印刷ターミナル300に送信するため、ユーザPC200の処理能力が低い場合であっても、CPUの負荷を最小限に抑えることができる。
When performing the print processing described above, the general-
なお、ユーザPC200と印刷ターミナル300とはUSBによって接続するため、ネットワークによって接続する場合におけるTCP/IPの設定やワークグループの設定など、煩雑な設定操作が不要となる。また、ネットワークによる接続では、印刷データが漏洩する可能性や、ユーザの意図しない場所に設置されたプリンタから出力が行われる可能性があるが、ローカル接続ではそのような可能性が低いため、機密性の高い文書の印刷時などにおいても安全性を確保できる。
Since the
ユーザは、ユーザPC200を印刷ターミナル300に接続するだけで、汎用プリンタドライバ240をユーザPC200にインストールし、汎用プリンタドライバ240を用いた印刷を行うことができる。したがって、上記の印刷ターミナル300を用いれば、汎用プリンタドライバ240がユーザPC200にインストールされているか否かに関わらず、不特定のユーザPC200に印刷仲介機能を提供させることができる。
By simply connecting the
なお、上記の印刷ターミナル300は、その機能にかかわらず、ユーザPC200にオートランを行わせることができる。このため、印刷ターミナル300の提供者は、印刷ターミナル300を用意するだけで、ユーザPC200に自動インストールを行わせることができる。
The printing terminal 300 can cause the
また、上記の印刷ターミナル300をユーザPC200に接続した場合には、CD−ROMドライブ装置及び印刷装置を接続した場合と異なり、ユーザPC200が認識する周辺装置の数を、1つしか増加させない。また、ユーザPC200は、上記の印刷ターミナル300を、2つのドライバ(汎用プリンタドライバ240及びCD−ROM標準ドライバ243)を用いて制御する。ユーザPC200は、コンフィグレーション情報に応じて、ドライバの切り替えを行えば足りるため、特別なソフトウェアがなくとも、印刷ターミナル300が有する機能を簡便に切り替えることができる。
When the printing terminal 300 is connected to the
C3.自動アンインストール:
印刷処理の終了後、ユーザは、ユーザPC200と印刷ターミナル300との接続を切断する。印刷ターミナル300は、印刷処理(ステップSb6)を行った後、USBケーブルの切断に応じて処理を終了する(ステップSb7)。一方、ユーザPC200の汎用プリンタドライバ240は、USBコネクタ260からユーザPC200が切り離されたことを検出すると(ステップSa12)、自己をアンインストールする(ステップSa13)。
C3. Automatic uninstall:
After the end of the printing process, the user disconnects the connection between the
汎用プリンタドライバ240は、印刷ターミナル300がユーザPC200から切り離されたことを検出すると、プリンタドライバ本来の機能の提供を終了するとともに、汎用プリンタドライバ240のアンインストーラを起動する。汎用プリンタドライバ240のアンインストーラ(図1では、「uninstall.exe」として図示)は、汎用プリンタドライバ240のデータの一部として、ハードディスク200bが記憶している。制御部200aは、ハードディスク200bに記憶されたアンインストーラを、制御部200aに設けられたRAMに読み出して起動する。アンインストーラは、制御部200aのRAM上で稼動することで、汎用プリンタドライバ240をアンインストールし、汎用プリンタドライバ240のデータを、アンインストーラ自身のデータも含めてハードディスク200bから消去する。
When the general-
この後、汎用プリンタドライバ240のデータが記憶されていたハードディスク200b上の領域は、他のデータの記憶に用いることができる。ユーザPC200は、アンインストールの終了後に処理を終了する。
Thereafter, the area on the
D.効果:
上記のように自動的にアンインストールを行うことで、プリンタ400の利用終了時に、自動的に汎用プリンタドライバ240をアンインストールすることができる。これにより、ユーザPC200のハードディスク200bに記憶されたデータ量を少なくすることができる。また、アンインストールにより、ユーザPC200の処理効率を向上させることができる。
D. effect:
By automatically uninstalling as described above, the general-
なお、図2のステップSa13でユーザPC200は、所定の実行条件を満たす場合にのみアンインストールを実行するものとしてもよい。例えば、ユーザPC200は、ハードディスク200bの空き容量を検出し、空き容量が所定量より多い場合にはアンインストールを行わないものとしてもよい。空き容量としては、例えば、1Gバイト程度とすることができる。なお、アンインストールの実行条件は、アンインストールによる空き容量の増加量に応じた条件であってもよい。
Note that in step Sa13 in FIG. 2, the
また、図2のステップSa13では、汎用プリンタドライバ240のデータをハードディスク200bから完全に取り除く必要はない。例えば、ハードディスク200bに記憶された、汎用プリンタドライバ240のデータを圧縮するだけであってもよい。
In step Sa13 in FIG. 2, it is not necessary to completely remove the data of the general-
また、実施例では、汎用プリンタドライバ240のアンインストールを、汎用プリンタドライバ240自身が行うものとしたが、かかる場合に限定されることはない。例えば、ユーザPC200にインストールされたOSが、汎用プリンタドライバ240をアンインストールしてもよい。また、アンインストーラは、汎用プリンタドライバ240と別に、ユーザPC200にインストールされたものであってもよい。
In the embodiment, the general-
実施例では、汎用プリンタドライバ240はユーザPC200に自動インストールされるものとした(図2のステップSa2〜Sa7,Sb1〜Sb3)が、かかる場合に限定されることはない。例えば、ユーザPC200は、工場出荷状態で予め汎用プリンタドライバ240がインストールされていてもよい。
In the embodiment, the general-
E.変形例:
以上、本発明の実施例について説明したが、本発明はこのような実施例に限定されず、その趣旨を逸脱しない範囲で種々の構成を採ることができる。例えば、以下のような変形が可能である。
E. Variation:
As mentioned above, although the Example of this invention was described, this invention is not limited to such an Example, A various structure can be taken in the range which does not deviate from the meaning. For example, the following modifications are possible.
図5は、変形例としての印刷システム500の概略構成を示す説明図である。上記実施例では、印刷ターミナル300とプリンタ400とは、プリンタケーブルによって接続されているものとした。これに対し、本変形例では、これらをネットワークによって接続し、更に、印刷ターミナル300の機能を分割して新たに変換サーバ600を設けるものとした。なお、図5に示す各装置のブロック図は簡略化して表している。
FIG. 5 is an explanatory diagram showing a schematic configuration of a
本変形例にかかる印刷ターミナル300は、USBデバイスエミュレータ340とLANポート370を備える。印刷ターミナル300は、ユーザPC200からUSBデバイスエミュレータ340によってEMFデータを受信すると、受信したEMFデータをLANポート370経由で変換サーバ600へ転送する。
The printing terminal 300 according to this modification includes a
変換サーバ600は、LANポート610とプレーヤ350とプリンタドライバ360を備える。変換サーバ600は、印刷ターミナル300からLANポート610によってEMFデータを受信すると、プレーヤ350とプリンタドライバ360の働きによってEMFデータをRAWデータに変換する。変換したRAWデータは、ネットワーク経由でプリンタ400に送信する。
The conversion server 600 includes a LAN port 610, a
変換サーバ600は、印刷ターミナル300とプリンタ400のIPアドレスを対応付けるためのアドレステーブル620を備えている。図では、IPアドレスを用いたアドレステーブルを示したが、MACアドレスなどを用いるものとしてもよい。このアドレステーブル620には、ユーザの目の前に設置された印刷ターミナル300とプリンタ400が対応づけられているものとする。ユーザの意図しない場所に設置されたプリンタから印刷内容が出力されることを避けるためである。印刷ターミナル300は、このアドレステーブル620を参照することにより、例えば、ネットワーク上に印刷ターミナル300やプリンタ400が複数接続されている場合でも、予め設定された特定のプリンタ400から印刷を行うことができる。そのため、ユーザは、出力先プリンタの指定等を行うことなく容易に印刷を行うことが可能となる。
The conversion server 600 includes an address table 620 for associating the IP addresses of the printing terminal 300 and the
上記変形例においてプリンタ400は、図中の一点鎖線で示すように、印刷ターミナル300にプリンタケーブル等によってローカル接続されるものとしてもよいし、印刷ターミナル300と一体的に構成されるものとしてもよい。このような構成では、変換サーバ600は、生成したRAWデータを印刷ターミナル300に返信する(図中の破線参照)。印刷ターミナル300は、こうして返信されたRAWデータをプリンタケーブル経由でプリンタ400に出力する。
In the above modification, the
以上で説明した変形例によれば、印刷ターミナル300が持つべき機能をネットワーク上に接続された変換サーバ600に分散させることにより、各装置の処理にかかる負荷を低減させることができる。 According to the modification described above, the load on the processing of each apparatus can be reduced by distributing the functions that the printing terminal 300 should have to the conversion server 600 connected on the network.
100,500...印刷システム
200...ユーザPC
250...USBホストコントローラ
260...USBコネクタ(Aタイプ)
200a...制御部
200b...ハードディスク
210...アプリケーション
220...GDI
230...スプーラ
240...汎用プリンタドライバ
243...CD-ROM標準プリンタドライバ
300...印刷ターミナル
310...USBデバイスコントローラ
320...USBコネクタ(Bタイプ)
330...パラレルポート
300a...制御部
340...USBデバイスエミュレータ
350...プレーヤ
360...プリンタドライバ
380...インストーラ記憶部
400...プリンタ
370,610...LANポート
600...変換サーバ
100, 500 ...
250 ...
200a ...
230 ...
330 ... Parallel port 300a ...
Claims (6)
前記周辺装置とのローカル接続が切断されたことを検知する機能と、
該検知に応じ、前記アンインストールを行う機能とを前記コンピュータに実現させるためのコンピュータプログラム。 A computer program for locally connecting to a peripheral device and causing a computer installed with software for using the peripheral device to uninstall the installed software,
A function of detecting that the local connection with the peripheral device is disconnected;
A computer program for causing the computer to realize the function of performing the uninstallation in response to the detection.
前記アンインストールの実行可否を所定の条件に基づいて切り換える機能を前記コンピュータに実現させるコンピュータプログラム。 A computer program according to claim 1,
A computer program for causing the computer to realize a function of switching whether or not the uninstallation can be executed based on a predetermined condition.
前記周辺装置とのローカル接続が切断されたことを検知する工程と、
該検知に応じ、前記アンインストールを行う工程とを備える方法。 A computer locally connected to a peripheral device and installed with software for using the peripheral device is a method for uninstalling the installed software,
Detecting that the local connection with the peripheral device is disconnected;
Performing the uninstall in response to the detection.
周辺装置にローカル接続するための接続ポートと、
該周辺装置を用いるためにインストールされたソフトウェアを記憶する記憶部と、
前記周辺装置とのローカル接続が切断されたことを検知する検知部と、
該検知に応じ、前記インストールされたソフトウェアのアンインストールを行うアンインストール部とを備えるコンピュータ。 A computer,
A connection port for local connection to peripheral devices;
A storage unit for storing software installed to use the peripheral device;
A detection unit for detecting that the local connection with the peripheral device is disconnected;
A computer comprising: an uninstallation unit that uninstalls the installed software in response to the detection.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003345351A JP2005115440A (en) | 2003-10-03 | 2003-10-03 | Computer program for making computer perform uninstallation |
US10/918,207 US20050162688A1 (en) | 2003-08-12 | 2004-08-12 | Printing terminal, printing data outputting device, and computer and peripheral device using therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003345351A JP2005115440A (en) | 2003-10-03 | 2003-10-03 | Computer program for making computer perform uninstallation |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005115440A true JP2005115440A (en) | 2005-04-28 |
Family
ID=34538658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003345351A Pending JP2005115440A (en) | 2003-08-12 | 2003-10-03 | Computer program for making computer perform uninstallation |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005115440A (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008059519A (en) * | 2006-09-04 | 2008-03-13 | Nec Corp | Information processing system, information processing method, and program for it |
JP2009217480A (en) * | 2008-03-10 | 2009-09-24 | Fuji Xerox Co Ltd | Printing system, auxiliary memory device, and printer |
JP2012069079A (en) * | 2010-09-27 | 2012-04-05 | Kyocera Mita Corp | Electronic apparatus and application management program |
US9013725B2 (en) | 2012-03-07 | 2015-04-21 | Brother Kogyo Kabushiki Kaisha | Computer-readable storage medium storing driver management program, computer-readable storage medium storing uninstallation program and information processing device |
JP2018010694A (en) * | 2006-09-15 | 2018-01-18 | 株式会社リコー | Information processing apparatus and program |
CN109426471A (en) * | 2017-09-04 | 2019-03-05 | 佳能株式会社 | Method and storage medium in information processing unit, information processing unit |
-
2003
- 2003-10-03 JP JP2003345351A patent/JP2005115440A/en active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008059519A (en) * | 2006-09-04 | 2008-03-13 | Nec Corp | Information processing system, information processing method, and program for it |
JP2018010694A (en) * | 2006-09-15 | 2018-01-18 | 株式会社リコー | Information processing apparatus and program |
JP2009217480A (en) * | 2008-03-10 | 2009-09-24 | Fuji Xerox Co Ltd | Printing system, auxiliary memory device, and printer |
JP2012069079A (en) * | 2010-09-27 | 2012-04-05 | Kyocera Mita Corp | Electronic apparatus and application management program |
US9013725B2 (en) | 2012-03-07 | 2015-04-21 | Brother Kogyo Kabushiki Kaisha | Computer-readable storage medium storing driver management program, computer-readable storage medium storing uninstallation program and information processing device |
CN109426471A (en) * | 2017-09-04 | 2019-03-05 | 佳能株式会社 | Method and storage medium in information processing unit, information processing unit |
CN109426471B (en) * | 2017-09-04 | 2022-08-23 | 佳能株式会社 | Information processing apparatus, method in information processing apparatus, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20050162688A1 (en) | Printing terminal, printing data outputting device, and computer and peripheral device using therefor | |
JP6874405B2 (en) | Information processing equipment, programs, systems | |
US9124751B2 (en) | Peripheral device and image reading device | |
US6009480A (en) | Integrated device driver wherein the peripheral downloads the device driver via an I/O device after it is determined that the I/O device has the resources to support the peripheral device | |
US20050183095A1 (en) | Information processing apparatus, method for controlling information processing apparatus, and strorage medium storing program for realizing the method | |
US20090193152A1 (en) | External device with a driver auto-run installation and method thereof | |
KR100476767B1 (en) | Printer and control method thereof | |
JP4810282B2 (en) | Module installation method, module installation device, and program | |
US20100027041A1 (en) | Image forming apparatus, information processing apparatus, data processing method, and storage medium storing program | |
US9262105B2 (en) | Printing system, control method for information processing apparatus, and non-transitory computer-readable medium for transmitting setting information | |
JP2003114859A (en) | Usb connector | |
JP4306479B2 (en) | Image output apparatus and image output system | |
JP2006024155A (en) | Peripheral device | |
US20040177202A1 (en) | Apparatus and method for generating hot-plug signal | |
JP2005115427A (en) | Peripheral device locally connected to computer | |
JP2005115440A (en) | Computer program for making computer perform uninstallation | |
JP2005216019A (en) | Portable recording medium | |
JP5815256B2 (en) | Peripheral device and image reading device | |
JP5596376B2 (en) | Peripheral device | |
US20230086590A1 (en) | Information processing apparatus, method for controlling information processing apparatus, and storage medium | |
JP2005063128A (en) | Print terminal and print data output device | |
WO2009139408A1 (en) | Method for starting os, and protocol converter | |
WO2017047476A1 (en) | Information processing apparatus, control method therefor, and program | |
JP6987541B2 (en) | Image forming apparatus and control method of image forming apparatus | |
JP2012215986A (en) | Peripheral device, image scanning device, and information processing device |