JP2005115440A - Computer program for making computer perform uninstallation - Google Patents

Computer program for making computer perform uninstallation Download PDF

Info

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
Application number
JP2003345351A
Other languages
Japanese (ja)
Inventor
Yasushi Nakaoka
康 中岡
Masanori Mukoyama
昌典 向山
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2003345351A priority Critical patent/JP2005115440A/en
Priority to US10/918,207 priority patent/US20050162688A1/en
Publication of JP2005115440A publication Critical patent/JP2005115440A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To improve convenience when a computer is used in connection with a peripheral device. <P>SOLUTION: A printing terminal 300 installed in a public area is provided for public use, and connected to an unspecified user PC 200. The user PC 200 uses a general purpose printer driver 240 installed therein to control the printing terminal 300. A hard disk 200b of the user PC 200 stores data on the general purpose printer driver 240. The general purpose printer driver 240 automatically uninstalls itself when detecting disconnection of the printing terminal 300 from a USB connector 260. The uninstallation can erase the data on the general purpose printer driver 240 from the hard disk 200b to simply increase the space in the hard disk 200b. <P>COPYRIGHT: (C)2005,JPO&NCIPI

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.

特開2003−131827公報JP 2003-131827 A

しかし、近年では、家庭や職場以外の公共の場所、例えば図書館などに周辺装置を設置し、ユーザ所有のコンピュータで利用可能に提供することが望まれている。この場合、周辺装置及び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 printing system 100 according to the present embodiment. The printing system 100 includes a user PC 200, a printing terminal 300, and a printer 400. The user PC 200 is a so-called notebook personal computer and has a Windows (registered trademark) OS installed therein. The printing terminal 300 is also a personal computer, and similarly a Windows OS is installed.

印刷ターミナル300は、プリンタケーブルによってプリンタ400と接続されている。印刷ターミナル300は、空港のロビーや図書館といった公共の場に設置されている。ユーザは、このような場所に設置された印刷ターミナル300に対して、USBケーブルによりユーザPC200をローカル接続することにより、容易に印刷を行うことができる。ユーザPC200はUSBホストとして動作し、USBデバイスたる印刷ターミナル300の動作を制御する。   The printing terminal 300 is connected to the printer 400 by a printer cable. The printing terminal 300 is installed in a public place such as an airport lobby or a library. The user can easily perform printing by locally connecting the user PC 200 to the printing terminal 300 installed in such a place with a USB cable. The user PC 200 operates as a USB host and controls the operation of the printing terminal 300 that is a USB device.

印刷ターミナル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 USB device controller 310, a control unit 300a, and a parallel port 330 as hardware. The user PC 200 includes a USB connector (A type) 260, a USB host controller 250, a hard disk 200b, and a control unit 200a as hardware.

印刷ターミナル300は、パラレルポート330によりプリンタ400にローカル接続する。なお、パラレルポート330に代えて、RS−232CポートやUSBポート、あるいはネットワークで接続するものとしてもよい。また、印刷ターミナル300は、プリンタ400と一体的に構成されていてもよい。   The printing terminal 300 is locally connected to the printer 400 through the parallel port 330. Instead of the parallel port 330, it may be connected via an RS-232C port, a USB port, or a network. The printing terminal 300 may be configured integrally with the printer 400.

ユーザ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 user PC 200 is a connector for electrically connecting various USB devices such as a USB mouse, a USB keyboard, and a USB printer to the user PC 200. The USB host controller 250 is a controller for controlling the USB device. The USB host controller 250 can detect that a USB device is connected to the USB connector 260 and that the connected USB device is disconnected. When a USB device is connected to the USB connector 260, the USB host controller 250 receives configuration information from the USB device. The configuration information specifies the type of connected USB device. The configuration information includes, for example, a unique device ID of the USB device and a vendor ID representing the manufacturer, and indicates that the USB device is operating as a CD-ROM drive device conforming to the USB standard. Information to represent is also included.

印刷ターミナル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 USB device controller 310 is a controller for receiving control from a USB host. The USB device controller 310 and the USB connector (B type) 320 are mounted on the expansion board and connected to the PCI bus via the PCI slot of the printing terminal 300 (not shown). The USB device controller 310 transmits configuration information to the USB host in response to a request from the USB host.

ハードディスク200bは、ユーザPC200にインストールされたソフトウェアの命令コード等のデータなど、種々のデータを記憶する。   The hard disk 200b stores various data such as data such as instruction codes of software installed in the user PC 200.

ユーザPC200及び印刷ターミナル300が有する制御部200a,300aは各々、CPU,ROM,RAM等により構成され、それぞれ、ユーザPC200及び印刷ターミナル300の他のハードウェアを制御する。図1には、制御部200a,300aがソフトウェア的に実現する機能ブロックの構成を併せて示した(破線、及び一点鎖線で図示)。なお、図示する機能ブロックの全部又は一部は、ハードウェア的に構成することも可能である。   The control units 200a and 300a included in the user PC 200 and the printing terminal 300 are each configured by a CPU, a ROM, a RAM, and the like, and control other hardware of the user PC 200 and the printing terminal 300, respectively. FIG. 1 also shows the configuration of functional blocks realized by software by the control units 200a and 300a (shown by broken lines and one-dot chain lines). It should be noted that all or part of the functional blocks shown in the figure can be configured in hardware.

印刷ターミナル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 user PC 200 implements each functional block by using the software stored in the hard disk 200b by reading it into a memory (RAM).

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 USB device emulator 340, a player 350, a printer driver 360, and an installer storage unit 380. The user PC 200 includes a print application 210, a GDI 220, a spooler 230, a CD-ROM standard driver 243, an automatic execution unit 242, and a general-purpose printer driver 240. As will be described later, the general-purpose printer driver 240 is installed in the user PC 200 by the automatic execution unit 242.

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 user PC 200, the CD-ROM standard driver 243 and the general-purpose printer driver 240 are device drivers for using USB devices connected to the USB connector 260, respectively. The CD-ROM standard driver 243 is a class driver that can be used in common with a standard CD-ROM device designed in accordance with the USB mass storage class specification. The CD-ROM standard driver 243 is preinstalled in the user PC 200 in a factory shipment state. On the other hand, the general-purpose printer driver 240 is a printer driver that can be generally used for a predetermined printing apparatus. The general-purpose printer driver 240 will be described in detail later.

ユーザ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 USB connector 260, the OS of the user PC 200 requests the USB device to transmit configuration information in order to specify the type of the USB device. The OS of the user PC 200 activates the CD-ROM standard driver 243 when the peripheral device to be controlled by the CD-ROM standard driver 243 is connected to the USB connector 260, and the peripheral device to be controlled by the general-purpose printer driver 240 When connected to the USB connector 260, the general-purpose printer driver 240 is activated.

自動実行部242は、ユーザPC200にインストールされたWindows系OSが実現する機能ブロックの一つであり、オートラン機能を奏する。具体的には、自動実行部242は、USBポート260にCD−ROMドライブ装置が接続された場合、そのルートフォルダに記憶された「autorun.inf」というファイル名のオートランファイルを読み出し、このファイルによって指定されたプログラムを実行する。本実施例の自動実行部242は、かかるオートラン機能に基づいて汎用プリンタドライバ240のインストールを行う。   The automatic execution unit 242 is one of functional blocks realized by the Windows OS installed in the user PC 200 and has an autorun function. Specifically, when a CD-ROM drive device is connected to the USB port 260, the automatic execution unit 242 reads an autorun file with a file name “autorun.inf” stored in the root folder, Run the specified program. The automatic execution unit 242 of this embodiment installs the general-purpose printer driver 240 based on the auto-run function.

印刷アプリケーション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 print application 210 is software having a printing function such as document creation software, spreadsheet software, or image processing software. The print application 210 generates EMF (Enhanced Meta File) data in response to a print instruction from the user. EMF data is an intermediate file used for speeding up printing in a Windows environment, and records a series of GDI (Graphic Device Interface) commands. For this reason, the print contents of EMF data are recorded by a drawing command that does not depend on the printer 400. The print application 210 generates EMF data using a drawing command of the GDI 220, which is one of the modules constituting the OS kernel. When the print application 210 generates EMF data in this way, it transmits it to the spooler 230. The spooler 230 is a module provided in the OS as a standard for buffering EMF data generated by the print application 210 or the like.

汎用プリンタドライバ240は、スプーラ230に蓄積されたEMFデータを順次読み出して、USBホストコントローラ250を介して印刷ターミナル300に送信する機能を備えている。   The general-purpose printer driver 240 has a function of sequentially reading the EMF data stored in the spooler 230 and transmitting it to the print terminal 300 via the USB host controller 250.

また、汎用プリンタドライバ240は、必要に応じて印刷ターミナル300からプリンタ400の所定の特性を表す特性データを取得する機能も有している。特性データには、例えば、プリンタ400がサポートする用紙のサイズや解像度、両面印刷機能の有無、カラー印刷機能の有無などの特性が定義されている。印刷アプリケーション210は、この特性データを利用して、EMFデータの生成オプションを設定する機能を有する。このため、プリンタ400の特性に応じたEMFデータを生成することができる。なお、汎用プリンタドライバ240は、種々の特性データを予め保持し、その1つを特定するデータを印刷ターミナル300から取得するものとしてもよい。   The general-purpose printer driver 240 also has a function of acquiring characteristic data representing predetermined characteristics of the printer 400 from the printing terminal 300 as necessary. In the characteristic data, for example, characteristics such as the size and resolution of the paper supported by the printer 400, the presence / absence of the duplex printing function, the presence / absence of the color printing function, and the like are defined. The print application 210 has a function of setting an EMF data generation option using this characteristic data. Therefore, EMF data corresponding to the characteristics of the printer 400 can be generated. The general-purpose printer driver 240 may store various characteristic data in advance and acquire data specifying one of them from the printing terminal 300.

さらに、汎用プリンタドライバ240は、USBコネクタ260からプリンタ400が切り離されたことを検知した場合に、自己をアンインストールする機能も有する。   Furthermore, the general-purpose printer driver 240 has a function of uninstalling itself when it is detected that the printer 400 is disconnected from the USB connector 260.

B2.印刷ターミナル300:
印刷ターミナル300において、USBデバイスエミュレータ340は、USBデバイスコントローラ310を制御するためのデバイスドライバである。
B2. Printing terminal 300:
In the printing terminal 300, the USB device emulator 340 is a device driver for controlling the USB device controller 310.

USBデバイスエミュレータ340は、USBデバイスコントローラ310を用いて、ユーザPC200にコンフィグレーション情報を送信する。USBデバイスエミュレータ340は、印刷ターミナル300を、CD−ROMドライブ装置であるとユーザPC200に認識させるコンフィグレーション情報と、印刷装置であると認識させるコンフィグレーション情報とを使い分ける。前者は、ユーザPC200にCD−ROM標準ドライバ243を起動させるコンフィグレーション情報であり、後者は、ユーザPC200に汎用プリンタドライバ240を起動させるコンフィグレーション情報である。以下では、これらのコンフィグーション情報を各々、第1及び第2のコンフィグレーション情報と略称する。   The USB device emulator 340 transmits configuration information to the user PC 200 using the USB device controller 310. The USB device emulator 340 uses the configuration information for causing the user PC 200 to recognize that the printing terminal 300 is a CD-ROM drive device and the configuration information for allowing the printing device 300 to be recognized as a printing device. The former is configuration information that causes the user PC 200 to activate the CD-ROM standard driver 243, and the latter is configuration information that causes the user PC 200 to activate the general-purpose printer driver 240. Hereinafter, these pieces of configuration information are abbreviated as first and second configuration information, respectively.

インストーラ記憶部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 installer storage unit 380 stores an autorun file that is read by the user PC 200 when the user PC 200 recognizes that the print terminal 300 is a CD-ROM drive device. The autorun file designates a predetermined installer that is also stored in the installer storage unit 380 as a file to be automatically executed by the user PC 200. The automatic execution unit 242 of the user PC 200 can install the general-purpose printer driver 240 in the user PC 240 using this installer. Specifically, data such as an instruction code of the general-purpose printer driver 240 is stored in a predetermined area of the hard disk 200b. In FIG. 1, as an example of data stored in the hard disk 200b, data of the general-purpose printer driver 240 stored in the hard disk 200b by installing the general-purpose printer driver 240 is shown. The data of the general-purpose printer driver 240 includes an uninstaller execution file for the general-purpose printer driver 240 itself. “Uninstall.exe” in FIG. 1 is an example of an uninstaller stored in the hard disk 200b. The general-purpose printer driver 240 can uninstall itself by activating the uninstaller stored in the hard disk 200b.

USBデバイスエミュレータ340は、自らをリセットする機能も備える。リセットが行われると、ユーザPC200は、USBコネクタ260から印刷ターミナル300が一旦切り離され、再び接続されたものと認識する。この場合、ユーザPC200は、コンフィグレーション情報を再び印刷ターミナル300から取得する。   The USB device emulator 340 also has a function of resetting itself. When the reset is performed, the user PC 200 recognizes that the printing terminal 300 is once disconnected from the USB connector 260 and connected again. In this case, the user PC 200 acquires the configuration information from the print terminal 300 again.

また、USBデバイスエミュレータ340は、印刷ターミナル300を印刷装置であると認識しているユーザPC200からEMFデータを取得する機能も備える。USBデバイスエミュレータ340は、取得されたEMFデータをプレーヤ350に受け渡す。   The USB device emulator 340 also has a function of acquiring EMF data from the user PC 200 that recognizes the printing terminal 300 as a printing apparatus. The USB device emulator 340 passes the acquired EMF data to the player 350.

プレーヤ350は、USBデバイスエミュレータ340から受け渡されたEMFデータに応じた印刷をプリンタ400に行わせるアプリケーションである。プレーヤ350によって印刷処理が実行されると、プレーヤ350は、プリンタドライバ360からプリンタ400のデバイスコンテキストを取得して、EMFデータに記録されたGDIコマンドにより印刷内容を再生する。すると、プリンタドライバ360は、かかる印刷内容に応じてプリンタが解釈可能なRAWデータを作成する。プレーヤ350及びプリンタドライバ360は、EMFデータを、プリンタ400の解釈可能なRAWデータに変換する。   The player 350 is an application that causes the printer 400 to perform printing according to the EMF data transferred from the USB device emulator 340. When the printing process is executed by the player 350, the player 350 acquires the device context of the printer 400 from the printer driver 360, and reproduces the print contents by the GDI command recorded in the EMF data. Then, the printer driver 360 creates RAW data that can be interpreted by the printer in accordance with the print contents. The player 350 and the printer driver 360 convert EMF data into RAW data that can be interpreted by the printer 400.

プリンタドライバ360は、生成したRAWデータを、パラレルポート330を介して送信し、プリンタ400に印刷を行わせる。印刷ターミナル300にインストールされるプリンタドライバ360には、ユーザPC200がプリンタ400に直接接続されたと仮定した場合に、ユーザPC200にインストールされるべきプリンタドライバを流用することができる。つまり、特殊なプリンタドライバではなく、一般的に流通しているプリンタドライバを利用することができる。   The printer driver 360 transmits the generated RAW data via the parallel port 330 and causes the printer 400 to perform printing. Assuming that the user PC 200 is directly connected to the printer 400, the printer driver to be installed in the user PC 200 can be used as the printer driver 360 installed in the printing terminal 300. In other words, not a special printer driver but a generally available printer driver can be used.

なお、本実施例では、USBデバイスエミュレータ340とプレーヤ350を別々のモジュールとして構成したが、USBデバイスエミュレータ340に、プレーヤ350の機能を持たせることにより、一体的に構成するものとしてもよい。   In this embodiment, the USB device emulator 340 and the player 350 are configured as separate modules. However, the USB device emulator 340 may be configured integrally by providing the function of the player 350.

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 printing system 100.
C1. Automatic installation:
In step Sa1, the user PC 200 detects that it is connected to the printing terminal 300 by the USB cable. The user PC 200 starts processing shown in the flowchart on the left side of FIG. In step Sa2, the user PC 200 requests the printing terminal 300 to transmit configuration information. In response to this request, the printing terminal 300 starts the processing shown in the flowchart on the right side of FIG.

ステップ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 user PC 200. As a result, the user PC 200 recognizes that the CD-ROM drive device is connected to the USB connector 260. For this reason, the user PC 200 loads the CD-ROM standard driver 243 into the memory (step Sa3).

この後、ユーザPC200は、CD−ROMドライブ装置の接続を認識したため、オートランを行う。ユーザPC200は、まず、印刷ターミナル300からオートランファイルを取得するとともに、取得されたオートランファイルが指定するインストーラも読み出す(ステップSa4)。次に、読み出したインストーラを実行することで、ユーザPC200は、汎用プリンタドライバ240を自らにインストールする(ステップSa5)。インストーラは、汎用プリンタドライバ240のデータをハードディスク200bに格納させる。   Thereafter, since the user PC 200 has recognized the connection of the CD-ROM drive device, the user PC 200 performs autorun. First, the user PC 200 acquires an autorun file from the printing terminal 300, and also reads an installer designated by the acquired autorun file (step Sa4). Next, the user PC 200 installs the general-purpose printer driver 240 by executing the read installer (step Sa5). The installer stores the data of the general-purpose printer driver 240 in the hard disk 200b.

ユーザPC200が実行するインストーラは、インストールの完了に応じ、インストールが完了した旨を表す完了通知を印刷ターミナル300に送信する(ステップSa6)。ユーザPC200は、CD−ROMメディアのイジェクト指示を表す信号の送信により完了通知を行う。なお、ユーザPC200は、ドライブに所定のファイルを書き込む通信により完了通知を行ってもよい。なお、ユーザPC200は、完了通知を行わないものとしてもよい。この場合、印刷ターミナル300は、インストーラを送信(ステップSb2)し終えた時点で、即座に、ステップSb3のリセット処理を行うものとしてもよい。   In response to the completion of the installation, the installer executed by the user PC 200 transmits a completion notification indicating that the installation is complete to the printing terminal 300 (step Sa6). The user PC 200 notifies the completion by transmitting a signal representing an instruction to eject the CD-ROM medium. Note that the user PC 200 may notify the completion by communication for writing a predetermined file in the drive. Note that the user PC 200 may not perform the completion notification. In this case, the printing terminal 300 may perform the reset process of step Sb3 immediately after completing the transmission of the installer (step Sb2).

印刷ターミナル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 user PC 200 detects a reset by the printing terminal 300 (step Sa7), the user PC 200 requests the printing terminal 300 to transmit configuration information (step Sa8), as in the case of step Sa2. In response to this request, the printing terminal 300 transmits the second configuration information (step Sb4). By receiving this configuration information, the user PC 200 recognizes the printing terminal 300 as a printing device, and loads the data of the general-purpose printer driver 240 stored in the hard disk 200b into the memory of the control unit 200a (step Sa9). ).

ステップSa10では、汎用プリンタドライバ240が、特性データの送信を印刷ターミナル300に要求する(ステップSa10)。印刷ターミナル300は、ユーザPC200の要求に応じて特性データを送信する(ステップSb5)。なお、特性データは、ステップSa5で、インストーラが印刷ターミナル300から取得してもよい。   In step Sa10, the general-purpose printer driver 240 requests the printing terminal 300 to transmit characteristic data (step Sa10). The printing terminal 300 transmits characteristic data in response to a request from the user PC 200 (step Sb5). The characteristic data may be acquired from the printing terminal 300 by the installer in step Sa5.

こうして、一連の自動インストール処理が終了すると、ユーザPC200と印刷ターミナル300は、印刷処理を実行することができる(ステップSa11、Sb6)。   Thus, when a series of automatic installation processing is completed, the user PC 200 and the printing terminal 300 can execute the printing processing (steps Sa11 and Sb6).

本実施例でUSBデバイスエミュレータ340は、印刷ターミナル300を、CD−ROMドライブ装置としてユーザPC200に認識させる。しかし、CD−ROMドライブ装置と認識させる代わりに、CD−R/RWドライブやDVD−ROM/RAM/R/RWドライブとして認識させるものとしてもよい。この他にも、PCにオートランを行わせ得る周辺装置であれば、いずれの種類の周辺装置と認識させてもよい。   In this embodiment, the USB device emulator 340 causes the user PC 200 to recognize the print terminal 300 as a CD-ROM drive device. However, instead of recognizing the CD-ROM drive device, it may be recognized as a CD-R / RW drive or a DVD-ROM / RAM / R / RW drive. In addition to this, any type of peripheral device may be recognized as long as it can cause the PC to perform autorun.

また、図2のステップSa5でインストーラは、汎用プリンタドライバ240がユーザPC200に既にインストールされているか否かを調べ、既にインストールがされていない場合にのみ、インストールを行うものとしてもよい。   Further, in step Sa5 in FIG. 2, the installer may check whether the general-purpose printer driver 240 has already been installed in the user PC 200, and may perform the installation only when it has not been installed.

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 user PC 200. This is a process corresponding to step Sa11 in FIG.

まず、ユーザPC200のユーザは、印刷アプリケーション210による印刷に先立ち、必要に応じて印刷設定を行う(ステップS40)。図中にはかかる印刷設定時にモニタ上に表示される設定ダイアログの一例を示した。この設定ダイアログは、印刷ターミナル300から取得した特性データに基づき汎用プリンタドライバ240が表示する。本実施例では、両面印刷するか否か、カラー/モノクロの指定、用紙サイズの選択が可能であるものとした。   First, prior to printing by the printing application 210, the user of the user PC 200 performs print settings as necessary (step S40). In the figure, an example of a setting dialog displayed on the monitor at the time of such print setting is shown. The general-purpose printer driver 240 displays this setting dialog based on the characteristic data acquired from the printing terminal 300. In this embodiment, it is possible to specify whether to perform double-sided printing, specify color / monochrome, and select the paper size.

次に、印刷アプリケーション210は、例えば、印刷ボタンの押下などの操作により、ユーザから印刷実行の要求を受信すると(ステップS41)、GDIコマンドによって、印刷内容に相当するEMFデータを生成する(ステップS42)。そして、生成したEMFデータをスプーラ230に蓄積する(ステップS43)。   Next, when the print application 210 receives a print execution request from the user, for example, by an operation such as pressing a print button (step S41), the print application 210 generates EMF data corresponding to the print content by a GDI command (step S42). ). The generated EMF data is accumulated in the spooler 230 (step S43).

次に、汎用プリンタドライバ240は、スプーラ230からEMFデータを読み出すと(ステップS44)、読み出したEMFデータを印刷ターミナル300へ送信する(ステップS45)。以上の処理により、ユーザPC200における印刷処理は終了する。   Next, when the general-purpose printer driver 240 reads EMF data from the spooler 230 (step S44), it transmits the read EMF data to the printing terminal 300 (step S45). With the above process, the printing process in the user PC 200 is completed.

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 USB device emulator 340 of the printing terminal 300 receives EMF data from the user PC 200 (step S50), it sends this EMF data to the player 350 (step S51).

プレーヤ350は、USBデバイスエミュレータ340からEMFデータを入力すると、プリンタドライバ360からプリンタ400のデバイスコンテキストを取得して(ステップS52)、EMFデータに記録されたGDIコマンドによって印刷内容を再生する(ステップS53)。   When the player 350 inputs EMF data from the USB device emulator 340, the player 350 acquires the device context of the printer 400 from the printer driver 360 (step S52), and reproduces the print contents by the GDI command recorded in the EMF data (step S53). ).

プレーヤ350によって印刷内容が再生されると、プリンタドライバ360は、再生された印刷内容をレンダリングして、プリンタ400が解釈可能なRAWデータを生成する(ステップS54)。そして、このRAWデータをプリンタ400に出力する(ステップS55)。以上の処理により、印刷ターミナル300における印刷処理は終了する。   When the print contents are reproduced by the player 350, the printer driver 360 renders the reproduced print contents and generates RAW data that can be interpreted by the printer 400 (step S54). The RAW data is output to the printer 400 (step S55). With the above processing, the printing process in the printing terminal 300 is completed.

以上の説明した印刷処理を行う場合、汎用プリンタドライバ240は、印刷アプリケーション210が生成したEMFデータをそのままの形で印刷ターミナル300に送信するため、ユーザPC200の処理能力が低い場合であっても、CPUの負荷を最小限に抑えることができる。   When performing the print processing described above, the general-purpose printer driver 240 transmits the EMF data generated by the print application 210 to the print terminal 300 as it is, so even if the processing capability of the user PC 200 is low, The load on the CPU can be minimized.

なお、ユーザPC200と印刷ターミナル300とはUSBによって接続するため、ネットワークによって接続する場合におけるTCP/IPの設定やワークグループの設定など、煩雑な設定操作が不要となる。また、ネットワークによる接続では、印刷データが漏洩する可能性や、ユーザの意図しない場所に設置されたプリンタから出力が行われる可能性があるが、ローカル接続ではそのような可能性が低いため、機密性の高い文書の印刷時などにおいても安全性を確保できる。   Since the user PC 200 and the printing terminal 300 are connected by USB, complicated setting operations such as TCP / IP setting and work group setting when connecting via a network are not required. In addition, there is a possibility that print data may be leaked in a network connection or output from a printer installed at a location unintended by the user. However, in a local connection, such a possibility is low. Safety can be ensured even when printing highly reliable documents.

ユーザは、ユーザPC200を印刷ターミナル300に接続するだけで、汎用プリンタドライバ240をユーザPC200にインストールし、汎用プリンタドライバ240を用いた印刷を行うことができる。したがって、上記の印刷ターミナル300を用いれば、汎用プリンタドライバ240がユーザPC200にインストールされているか否かに関わらず、不特定のユーザPC200に印刷仲介機能を提供させることができる。   By simply connecting the user PC 200 to the printing terminal 300, the user can install the general-purpose printer driver 240 in the user PC 200 and perform printing using the general-purpose printer driver 240. Therefore, by using the printing terminal 300 described above, it is possible to provide an unspecified user PC 200 with a print mediation function regardless of whether or not the general-purpose printer driver 240 is installed in the user PC 200.

なお、上記の印刷ターミナル300は、その機能にかかわらず、ユーザPC200にオートランを行わせることができる。このため、印刷ターミナル300の提供者は、印刷ターミナル300を用意するだけで、ユーザPC200に自動インストールを行わせることができる。   The printing terminal 300 can cause the user PC 200 to perform autorun regardless of the function. Therefore, the provider of the printing terminal 300 can cause the user PC 200 to perform automatic installation simply by preparing the printing terminal 300.

また、上記の印刷ターミナル300をユーザPC200に接続した場合には、CD−ROMドライブ装置及び印刷装置を接続した場合と異なり、ユーザPC200が認識する周辺装置の数を、1つしか増加させない。また、ユーザPC200は、上記の印刷ターミナル300を、2つのドライバ(汎用プリンタドライバ240及びCD−ROM標準ドライバ243)を用いて制御する。ユーザPC200は、コンフィグレーション情報に応じて、ドライバの切り替えを行えば足りるため、特別なソフトウェアがなくとも、印刷ターミナル300が有する機能を簡便に切り替えることができる。   When the printing terminal 300 is connected to the user PC 200, the number of peripheral devices recognized by the user PC 200 is increased only by one, unlike when the CD-ROM drive device and the printing device are connected. The user PC 200 controls the printing terminal 300 using two drivers (a general-purpose printer driver 240 and a CD-ROM standard driver 243). Since the user PC 200 only needs to switch drivers according to the configuration information, the user PC 200 can easily switch the functions of the printing terminal 300 without special software.

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 user PC 200 and the printing terminal 300. After performing the printing process (step Sb6), the printing terminal 300 ends the process according to the disconnection of the USB cable (step Sb7). On the other hand, when the general-purpose printer driver 240 of the user PC 200 detects that the user PC 200 is disconnected from the USB connector 260 (step Sa12), it uninstalls itself (step Sa13).

汎用プリンタドライバ240は、印刷ターミナル300がユーザPC200から切り離されたことを検出すると、プリンタドライバ本来の機能の提供を終了するとともに、汎用プリンタドライバ240のアンインストーラを起動する。汎用プリンタドライバ240のアンインストーラ(図1では、「uninstall.exe」として図示)は、汎用プリンタドライバ240のデータの一部として、ハードディスク200bが記憶している。制御部200aは、ハードディスク200bに記憶されたアンインストーラを、制御部200aに設けられたRAMに読み出して起動する。アンインストーラは、制御部200aのRAM上で稼動することで、汎用プリンタドライバ240をアンインストールし、汎用プリンタドライバ240のデータを、アンインストーラ自身のデータも含めてハードディスク200bから消去する。   When the general-purpose printer driver 240 detects that the printing terminal 300 has been disconnected from the user PC 200, the general-purpose printer driver 240 ends providing the original functions of the printer driver and activates the uninstaller for the general-purpose printer driver 240. The uninstaller for the general-purpose printer driver 240 (illustrated as “uninstall.exe” in FIG. 1) is stored in the hard disk 200b as part of the data for the general-purpose printer driver 240. The control unit 200a reads the uninstaller stored in the hard disk 200b into the RAM provided in the control unit 200a and starts it. The uninstaller operates on the RAM of the control unit 200a to uninstall the general-purpose printer driver 240, and erases the data of the general-purpose printer driver 240 from the hard disk 200b including the data of the uninstaller itself.

この後、汎用プリンタドライバ240のデータが記憶されていたハードディスク200b上の領域は、他のデータの記憶に用いることができる。ユーザPC200は、アンインストールの終了後に処理を終了する。   Thereafter, the area on the hard disk 200b in which the data of the general-purpose printer driver 240 is stored can be used for storing other data. The user PC 200 ends the process after the uninstallation is completed.

D.効果:
上記のように自動的にアンインストールを行うことで、プリンタ400の利用終了時に、自動的に汎用プリンタドライバ240をアンインストールすることができる。これにより、ユーザPC200のハードディスク200bに記憶されたデータ量を少なくすることができる。また、アンインストールにより、ユーザPC200の処理効率を向上させることができる。
D. effect:
By automatically uninstalling as described above, the general-purpose printer driver 240 can be automatically uninstalled when the use of the printer 400 is completed. Thereby, the amount of data stored in the hard disk 200b of the user PC 200 can be reduced. Further, the processing efficiency of the user PC 200 can be improved by the uninstallation.

なお、図2のステップSa13でユーザPC200は、所定の実行条件を満たす場合にのみアンインストールを実行するものとしてもよい。例えば、ユーザPC200は、ハードディスク200bの空き容量を検出し、空き容量が所定量より多い場合にはアンインストールを行わないものとしてもよい。空き容量としては、例えば、1Gバイト程度とすることができる。なお、アンインストールの実行条件は、アンインストールによる空き容量の増加量に応じた条件であってもよい。   Note that in step Sa13 in FIG. 2, the user PC 200 may perform uninstallation only when a predetermined execution condition is satisfied. For example, the user PC 200 may detect the free space of the hard disk 200b, and may not perform uninstallation if the free space is larger than a predetermined amount. For example, the free capacity can be about 1 Gbyte. It should be noted that the uninstall execution condition may be a condition according to the amount of increase in free space due to the uninstall.

また、図2のステップSa13では、汎用プリンタドライバ240のデータをハードディスク200bから完全に取り除く必要はない。例えば、ハードディスク200bに記憶された、汎用プリンタドライバ240のデータを圧縮するだけであってもよい。   In step Sa13 in FIG. 2, it is not necessary to completely remove the data of the general-purpose printer driver 240 from the hard disk 200b. For example, the data of the general-purpose printer driver 240 stored in the hard disk 200b may be simply compressed.

また、実施例では、汎用プリンタドライバ240のアンインストールを、汎用プリンタドライバ240自身が行うものとしたが、かかる場合に限定されることはない。例えば、ユーザPC200にインストールされたOSが、汎用プリンタドライバ240をアンインストールしてもよい。また、アンインストーラは、汎用プリンタドライバ240と別に、ユーザPC200にインストールされたものであってもよい。   In the embodiment, the general-purpose printer driver 240 uninstalls the general-purpose printer driver 240. However, the present invention is not limited to this case. For example, the OS installed in the user PC 200 may uninstall the general-purpose printer driver 240. The uninstaller may be installed in the user PC 200 separately from the general-purpose printer driver 240.

実施例では、汎用プリンタドライバ240はユーザPC200に自動インストールされるものとした(図2のステップSa2〜Sa7,Sb1〜Sb3)が、かかる場合に限定されることはない。例えば、ユーザPC200は、工場出荷状態で予め汎用プリンタドライバ240がインストールされていてもよい。   In the embodiment, the general-purpose printer driver 240 is automatically installed in the user PC 200 (steps Sa2 to Sa7, Sb1 to Sb3 in FIG. 2), but is not limited to this case. For example, the user PC 200 may have the general-purpose printer driver 240 installed in advance in a factory shipment state.

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 printing system 500 as a modified example. In the above embodiment, the printing terminal 300 and the printer 400 are connected by a printer cable. On the other hand, in this modification, these are connected by a network, and the function of the printing terminal 300 is further divided to newly provide a conversion server 600. Note that the block diagram of each device shown in FIG. 5 is simplified.

本変形例にかかる印刷ターミナル300は、USBデバイスエミュレータ340とLANポート370を備える。印刷ターミナル300は、ユーザPC200からUSBデバイスエミュレータ340によってEMFデータを受信すると、受信したEMFデータをLANポート370経由で変換サーバ600へ転送する。   The printing terminal 300 according to this modification includes a USB device emulator 340 and a LAN port 370. When receiving the EMF data from the user PC 200 by the USB device emulator 340, the printing terminal 300 transfers the received EMF data to the conversion server 600 via the LAN port 370.

変換サーバ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 player 350, and a printer driver 360. When the conversion server 600 receives EMF data from the printing terminal 300 through the LAN port 610, the conversion server 600 converts the EMF data into RAW data by the functions of the player 350 and the printer driver 360. The converted RAW data is transmitted to the printer 400 via the network.

変換サーバ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 printer 400. In the figure, an address table using an IP address is shown, but a MAC address or the like may be used. Assume that the address table 620 is associated with the printer 400 and the printer 400 installed in front of the user. This is to prevent the printing contents from being output from a printer installed in a place not intended by the user. By referring to the address table 620, the printing terminal 300 can perform printing from a specific printer 400 that is set in advance even when a plurality of printing terminals 300 and printers 400 are connected to the network, for example. . Therefore, the user can easily perform printing without specifying an output destination printer.

上記変形例においてプリンタ400は、図中の一点鎖線で示すように、印刷ターミナル300にプリンタケーブル等によってローカル接続されるものとしてもよいし、印刷ターミナル300と一体的に構成されるものとしてもよい。このような構成では、変換サーバ600は、生成したRAWデータを印刷ターミナル300に返信する(図中の破線参照)。印刷ターミナル300は、こうして返信されたRAWデータをプリンタケーブル経由でプリンタ400に出力する。   In the above modification, the printer 400 may be locally connected to the printing terminal 300 by a printer cable or the like, as indicated by a one-dot chain line in the drawing, or may be configured integrally with the printing terminal 300. . In such a configuration, the conversion server 600 returns the generated RAW data to the printing terminal 300 (see the broken line in the figure). The printing terminal 300 outputs the RAW data returned in this way to the printer 400 via the printer cable.

以上で説明した変形例によれば、印刷ターミナル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.

印刷システムの概略構成を示す説明図である。It is explanatory drawing which shows schematic structure of a printing system. 印刷システム100で印刷が行われる処理のフローチャートである。3 is a flowchart of processing in which printing is performed in the printing system 100. ユーザPC200における印刷処理のフローチャートである。5 is a flowchart of print processing in a user PC 200. 印刷ターミナル300における印刷処理のフローチャートである。5 is a flowchart of a printing process in the printing terminal 300. 変形例としての印刷システムの概略構成を示す説明図である。It is explanatory drawing which shows schematic structure of the printing system as a modification.

符号の説明Explanation of symbols

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 ... Printing system 200 ... User PC
250 ... USB host controller 260 ... USB connector (A type)
200a ... control unit 200b ... hard disk 210 ... application 220 ... GDI
230 ... Spooler 240 ... General-purpose printer driver 243 ... CD-ROM standard printer driver 300 ... Printing terminal 310 ... USB device controller 320 ... USB connector (B type)
330 ... Parallel port 300a ... Control unit 340 ... USB device emulator 350 ... Player 360 ... Printer driver 380 ... Installer storage unit 400 ... Printer 370, 610 ... LAN port 600 ... Conversion server

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.
前記ソフトウェアの一部分として実現された請求項1記載のコンピュータプログラム。   The computer program according to claim 1, which is realized as a part of the software. 請求項1記載のコンピュータプログラムであって、
前記アンインストールの実行可否を所定の条件に基づいて切り換える機能を前記コンピュータに実現させるコンピュータプログラム。
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.
請求項1〜3いずれか記載のコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。   The computer-readable recording medium which recorded the computer program in any one of Claims 1-3. 周辺装置にローカル接続し、該周辺装置を用いるためのソフトウェアがインストールされたコンピュータが、該インストールされたソフトウェアのアンインストールを行う方法であって、
前記周辺装置とのローカル接続が切断されたことを検知する工程と、
該検知に応じ、前記アンインストールを行う工程とを備える方法。
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.
JP2003345351A 2003-08-12 2003-10-03 Computer program for making computer perform uninstallation Pending JP2005115440A (en)

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)

* Cited by examiner, † Cited by third party
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

Cited By (7)

* Cited by examiner, † Cited by third party
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