JP2000222335A - Device control system, its method and record medium for recording program for constructing the same system - Google Patents

Device control system, its method and record medium for recording program for constructing the same system

Info

Publication number
JP2000222335A
JP2000222335A JP11184239A JP18423999A JP2000222335A JP 2000222335 A JP2000222335 A JP 2000222335A JP 11184239 A JP11184239 A JP 11184239A JP 18423999 A JP18423999 A JP 18423999A JP 2000222335 A JP2000222335 A JP 2000222335A
Authority
JP
Japan
Prior art keywords
unit
interface
abstraction
data
communication path
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
JP11184239A
Other languages
Japanese (ja)
Inventor
Fumio Nagasaka
文夫 長坂
Yutaka Hisamatsu
豊 久松
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 JP11184239A priority Critical patent/JP2000222335A/en
Publication of JP2000222335A publication Critical patent/JP2000222335A/en
Pending legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

PROBLEM TO BE SOLVED: To attain similar control by using an application program regardless of the kind of a device object or the kind of a communication path. SOLUTION: Device abstracting parts 28a and 28b transfer each kind of control information or data with devices 34a and 34b, and operate device abstracting (hardware abstracting) for constituting elements positioned at the higher rank. Interface parts 22a and 22b transfer each kind of control information or data with an application part 20 and the device abstracting parts 28a and 28b, and provide the same interfaces to the application part 20. Communication path abstracting parts 24a and 24b transfer each kind of control information or data through communication paths 26a and 26b beyond a process boundary or network boundary by abstracting the communication paths.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、デバイスを制御す
るための技術に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a technique for controlling a device.

【0002】[0002]

【従来の技術】従来では、例えば、1台のコンピュータ
にスキャナとプリンタがつながっており、スキャナによ
って画像データを取り込み、その取り込んだ画像データ
をプリンタで印刷する場合、まず、スキャナをサポート
するアプリケーションプログラムを起動し、そのアプリ
ケーションプログラムを使って、スキャナを制御して画
像データを取り込み、一旦、コンピュータ内のメモリに
格納していた。その際、スキャナを操作するためのユー
ザインターフェイスをモニタの画面上に表示させ、ユー
ザが、そのスキャナ用ユーザインターフェイスを介し
て、ユーザの希望する取り込み設定などをコンピュータ
に指示することにより、その希望に沿った画像データの
取り込みをスキャナに行なわせていた。その後、プリン
タをサポートする別のアプリケーションプログラムを起
動して、そのアプリケーションプログラムを使って、メ
モリに格納された画像データを読み出し、プリンタを制
御してその画像データをプリンタで印刷していた。その
際も、プリンタを操作するためのユーザインターフェイ
スをモニタの画面上に表示させ、同様に、ユーザが、そ
のプリンタ用ユーザインターフェイスを介して、ユーザ
の希望する印刷設定などをコンピュータに指示すること
により、その希望に沿った画像データの印刷をプリンタ
に行なわせていた。
2. Description of the Related Art Conventionally, for example, a scanner and a printer are connected to a single computer. When image data is fetched by a scanner and the fetched image data is printed by a printer, first, an application program supporting the scanner is used. Was started, the application program was used to control the scanner to capture image data, and temporarily stored in the memory of the computer. At this time, a user interface for operating the scanner is displayed on the screen of the monitor, and the user instructs the computer on the user's desired capture setting and the like via the user interface for the scanner. The scanner has to take in the image data along. Thereafter, another application program that supports the printer is started, the image data stored in the memory is read out using the application program, and the printer is controlled to print the image data by the printer. At this time, a user interface for operating the printer is displayed on the screen of the monitor, and similarly, the user instructs the computer about the print settings desired by the user via the printer user interface. In this case, the printer prints image data according to the request.

【0003】[0003]

【発明が解決しようとする課題】上記したように、従来
においては、スキャナやプリンタなどのデバイス間でデ
ータの伝送を行なう場合、各々のデバイスをサポートす
る複数のアプリケーションプログラムを起動して、デー
タの伝送を行なう必要があった。
As described above, conventionally, when data is transmitted between devices such as a scanner and a printer, a plurality of application programs that support each device are activated to transmit the data. Transmission had to be performed.

【0004】また、従来においては、ネットワークで接
続された複数台のコンピュータのうち、或る1台のコン
ピュータに或るデバイスが、他の1台のコンピュータに
他のデバイスがそれぞれつながっている場合に、別の1
台のコンピュータでアプリケーションプログラムを起動
して、そのアプリケーションプログラムを使って、それ
らデバイス間でデータの伝送を行なおうとしても、間に
ネットワークが介在しているため、データの伝送が困難
であった。
Conventionally, when a certain device is connected to one computer and another device is connected to another computer, among a plurality of computers connected via a network. Another one
When an application program is started on one computer and data is transmitted between these devices using the application program, it is difficult to transmit the data due to the intervening network. .

【0005】また、従来において、予め決められたデバ
イスとデバイスとの間では、一方のデバイスからデータ
を送り出し、他方のデバイスでそのデータを受け取って
処理することは可能であったが、任意のデバイスとデバ
イスとの間では、一方のデバイスからデータを送り出し
ても、他方のデバイスでそのデータを受け取って処理す
ることができるという保証はないため、それらデバイス
間で有効なデータの伝送を行なうことができない場合が
あった。
Further, conventionally, between a predetermined device and a device, it has been possible to send out data from one device and receive and process the data with the other device. Since sending data from one device to another does not guarantee that the other device will be able to receive and process the data, it is important to ensure that valid data is transmitted between those devices. In some cases, it was not possible.

【0006】また、従来においては、デバイス間でデー
タの伝送を行なう場合、それらデバイス用のユーザイン
ターフェイスをそれぞれ別個に表示させているため、ユ
ーザは、異なるユーザインターフェイスにおいて、それ
ぞれ、別々に指示をしなければならず、ユーザにとって
非常に操作性の悪いものとなっていた。
Conventionally, when data is transmitted between devices, user interfaces for those devices are displayed separately, so that the user gives separate instructions on different user interfaces. And it is very inoperable for the user.

【0007】従って、本発明の目的は、上記した従来技
術の問題点を解決し、スキャナやプリンタなどデバイス
の種類やローカル接続,ネットワーク接続など通信路の
種類に依存することなく、アプリケーションプログラム
を使って同様な制御を行なうことができるデバイス制御
システムを提供することにある。
Accordingly, an object of the present invention is to solve the above-mentioned problems of the prior art, and to use an application program without depending on the type of a device such as a scanner or a printer or the type of a communication path such as a local connection or a network connection. To provide a device control system capable of performing similar control.

【0008】また、本発明の他の目的は、任意のデバイ
ス間においても、有効なデータの伝送を可能にすると共
に、ユーザに対し、あらゆるデバイスの組み合わせにつ
いて最適化された操作性を提供することが可能なデバイ
ス制御システムを提供することにある。
Another object of the present invention is to enable effective data transmission between arbitrary devices and to provide a user with operability optimized for any combination of devices. It is to provide a device control system that can perform the above.

【0009】[0009]

【課題を解決するための手段およびその作用・効果】上
記した目的の少なくとも一部を達成するために、本発明
のデバイス制御システムは、1つ以上のデバイスを制御
するためのデバイス制御システムであって、前記デバイ
スにそれぞれ対応し、対応するデバイスとの間でデータ
または情報のやり取りを行なう1つ以上のデバイス抽象
化部と、前記デバイス抽象化部にそれぞれ対応し、対応
するデバイス抽象化部と通信路を介して接続され、対応
する前記デバイス抽象化部と、所定のアプリケーション
プログラムによって構築されるアプリケーション部と、
の間でデータまたは情報のやり取りを仲介する1つ以上
のインターフェイス部と、相互に対応する前記デバイス
抽象化部とインターフェイス部との間にそれぞれ設けら
れる1つ以上の通信路抽象化部と、を備え、前記デバイ
ス抽象化部は、対応する前記デバイスについてデバイス
の種類に起因した制御上の相違を吸収して、前記アプリ
ケーション部に対しデバイスの種類に依存しない同一の
制御環境を前記インターフェイス部を介して提供し、前
記通信路抽象化部は、前記デバイス抽象化部とインター
フェイス部との間を接続する通信路について、通信路の
種類に起因した制御上の相違を吸収して、前記アプリケ
ーション部に対して、通信路の種類に依存しない同一の
制御環境を前記インターフェイス部を介して提供するこ
とを要旨とする。
In order to achieve at least a part of the above object, a device control system of the present invention is a device control system for controlling one or more devices. And one or more device abstraction units respectively corresponding to the devices and exchanging data or information with the corresponding devices, and corresponding device abstraction units respectively corresponding to the device abstraction units. Connected via a communication path, the corresponding device abstraction unit, an application unit configured by a predetermined application program,
At least one interface unit that mediates exchange of data or information between the device and one or more communication path abstraction units provided between the corresponding device abstraction unit and the interface unit, respectively. The device abstraction unit absorbs a control difference caused by a device type for the corresponding device, and provides the application unit with the same control environment independent of the device type via the interface unit. The communication path abstraction unit absorbs a control difference caused by a type of the communication path for the communication path connecting the device abstraction unit and the interface unit, and provides the application unit with the communication path abstraction unit. On the other hand, the gist is to provide the same control environment independent of the type of the communication path via the interface unit.

【0010】また、本発明のデバイス制御方法は、1つ
以上のデバイスを制御するためのデバイス制御方法であ
って、(a)前記デバイスにそれぞれ対応し、対応する
デバイスとの間でデータまたは情報のやり取りを行なう
と共に、対応する前記デバイスについてデバイスの種類
に起因した制御上の相違を吸収して、所定のアプリケー
ションプログラムによって構築されるアプリケーション
部に対し、デバイスの種類に依存しない同一の制御環境
を提供する1つ以上のデバイス抽象化部を生成する工程
と、(b)前記デバイス抽象化部にそれぞれ対応し、対
応するデバイス抽象化部と通信路を介して接続され、対
応する前記デバイス抽象化部と前記アプリケーション部
との間でデータまたは情報のやり取りを仲介する1つ以
上のインターフェイス部を生成する工程と、(c)前記
インターフェイス部にそれぞれ対応し、対応するインタ
ーフェイス部と該インターフェイス部に対応する前記デ
バイス抽象化部との間を接続する前記通信路について、
通信路の種類に起因した制御上の相違を吸収して、前記
アプリケーション部に対して、通信路の種類に依存しな
い同一の制御環境を提供する1つ以上の通信路抽象化部
を生成する工程と、(d)前記アプリケーション部によ
り、前記インターフェイス部,通信路抽象化部及びデバ
イス抽象化部を介して、前記デバイスを制御する工程
と、を備えることを要旨とする。
[0010] The device control method of the present invention is a device control method for controlling one or more devices. (A) Each of the devices corresponds to the device, and data or information is exchanged with the corresponding device. Of the corresponding device, absorbs control differences caused by the device type of the corresponding device, and provides the same control environment independent of the device type to an application unit constructed by a predetermined application program. Generating one or more device abstraction units to be provided; (b) corresponding to each of the device abstraction units, connected to the corresponding device abstraction unit via a communication path, and corresponding to the device abstraction unit One or more interfaces that mediate the exchange of data or information between Generating a scan unit, for the communication path connecting between the (c) corresponding to said interface unit, the corresponding interface unit with the device abstraction units corresponding to the interface unit,
Generating one or more communication path abstraction sections for absorbing the control difference caused by the communication path type and providing the application section with the same control environment independent of the communication path type; And (d) controlling the device by the application unit via the interface unit, the communication path abstraction unit, and the device abstraction unit.

【0011】このように、デバイス制御システム及びデ
バイス制御方法では、デバイス抽象化部が、対応するデ
バイスとの間でデータまたは情報のやり取りを行なうと
共に、対応するデバイスについてデバイスの種類に起因
した制御上の相違を吸収して、所定のアプリケーション
プログラムによって構築されるアプリケーション部に対
して、デバイスの種類に依存しない同一の制御環境を提
供する。また、インターフェイス部は、対応するデバイ
ス抽象化部と通信路を介して接続し、対応するデバイス
抽象化部とアプリケーション部との間でデータまたは情
報のやり取りを仲介する。さらにまた、通信路抽象化部
は、デバイス抽象化部とインターフェイス部との間を接
続する通信路について、通信路の種類に起因した制御上
の相違を吸収して、アプリケーション部に対して、通信
路の種類に依存しない同一の制御環境を提供する。
As described above, in the device control system and the device control method, the device abstraction unit exchanges data or information with the corresponding device, and controls the corresponding device based on the type of the device. To provide the same control environment independent of the type of device for an application unit constructed by a predetermined application program. The interface unit is connected to the corresponding device abstraction unit via a communication path, and mediates exchange of data or information between the corresponding device abstraction unit and the application unit. Furthermore, the communication path abstraction unit absorbs a control difference caused by the type of the communication path for the communication path connecting the device abstraction unit and the interface unit, and communicates with the application unit. Provide the same control environment independent of the type of road.

【0012】なお、本明細書において、デバイスには、
物理的なデバイスのみならず、物理的なデバイスの機能
の一部や、ソフトウェアによって物理的なデバイスと同
等の機能を有するもの,物理的なデバイスと同等に扱う
ことができるものを含まれる。物理的なデバイスとして
は、例えば、スキャナや、プリンタや、デジタルカメラ
や、ファクシミリや、コピー機や、その他種々のコンピ
ュータ周辺装置などが含まれる。また、物理的なデバイ
スの機能の一部としては、例えば、多機能カラーコピー
機のFAX機能だけを外部に公開したものなどが含まれ
る。また、ソフトウェアによって物理的なデバイスと同
等の機能を有するもの,物理的なデバイスと同等に扱う
ことができるものとしては、例えば、電子メールや画像
処理の他、処理サーバやアプリケーションサーバなどが
含まれる。アプリケーションサーバとは、例えば、WE
Bブラウザのキャッシュディレクトリに含まれる画像フ
ァイルを自動的に検索して抽出するアプリケーションプ
ログラムがある場合に、このアプリケーションプログラ
ムそのものが、デジタルカメラのような静止画像入力デ
バイスであるかのように作用する場合であり、この場
合、デバイスは物理的な実体がない。
In this specification, the device includes:
Not only a physical device but also a part of the function of a physical device, a device having a function equivalent to a physical device by software, and a device that can be treated equivalently to a physical device are included. Examples of the physical device include a scanner, a printer, a digital camera, a facsimile, a copier, and various other computer peripheral devices. Some of the functions of the physical device include, for example, those in which only the FAX function of the multi-function color copier is disclosed to the outside. In addition, examples of a device having the same function as a physical device by software and a device that can be treated as a physical device include a processing server and an application server in addition to e-mail and image processing. . The application server is, for example, WE
When there is an application program for automatically searching and extracting image files included in the cache directory of the B browser, and the application program itself acts as a still image input device such as a digital camera In this case, the device has no physical entity.

【0013】また、通信路には、例えば、ネットワーク
境界を越えて異なるコンピュータ同士をつなぐ通信路の
他、同一のコンピュータ内において、プロセス境界を越
えて異なるプロセス間をつなぐ通信路なども含まれる。
The communication path includes, for example, a communication path connecting different computers across a network boundary, and a communication path connecting different processes across a process boundary within the same computer.

【0014】従って、本発明によれば、アプリケーショ
ンプログラムからは、デバイス抽象化部を介することに
よって、1つ以上のデバイスを、デバイスの種類を意識
することなく、同様な制御環境にて制御することが可能
となる。また、通信路抽象化部を介することによって、
デバイスがどのような位置にあっても、間に介在する通
信路の種類を意識することなく、同様な制御環境にて制
御することもできる。
Therefore, according to the present invention, from an application program, one or more devices can be controlled in a similar control environment without being aware of the type of the device, via the device abstraction unit. Becomes possible. Also, through the communication path abstraction unit,
Regardless of the position of the device, control can be performed in a similar control environment without being aware of the type of communication path interposed therebetween.

【0015】本発明のデバイス制御システムにおいて、
前記デバイスが複数存在し、それらデバイスに対応する
前記デバイス抽象化部が複数存在する場合に、前記デバ
イス抽象化部は、対応するインターフェイス部を介した
前記アプリケーション部からの指示に従って、対応する
前記インターフェイス部との接続を解除すると共に、他
の所定のデバイス抽象化部との間で通信路を介して接続
を確立し、データまたは情報のやり取りを行なうように
しても良い。
In the device control system of the present invention,
When there are a plurality of the devices and a plurality of the device abstraction units corresponding to the devices, the device abstraction unit responds to an instruction from the application unit via a corresponding interface unit. The connection with the device abstraction unit may be canceled, and a connection may be established with another predetermined device abstraction unit via a communication path to exchange data or information.

【0016】このように、アプリケーション部やインタ
ーフェイス部から独立して、デバイス抽象化部同士の間
でデータまたは情報のやり取りを行なうことによって、
より高速なデータや情報の伝送が可能となる。
As described above, by exchanging data or information between device abstraction units independently of the application unit and the interface unit,
Higher-speed data and information transmission becomes possible.

【0017】また、本発明のデバイス制御システムにお
いて、デバイス抽象化部同士の間でデータまたは情報の
やり取りを行なう場合に、2つの前記デバイス抽象化部
の間を接続する前記通信路について、通信路の種類に起
因した制御上の相違を吸収して、2つの前記デバイス抽
象化部に対して、通信路の種類に依存しない同一の制御
環境を提供する特定通信路抽象化部を設けることが好ま
しい。
In the device control system of the present invention, when data or information is exchanged between device abstraction units, the communication path connecting between the two device abstraction units may be a communication path. It is preferable to provide a specific communication path abstraction section for absorbing the control difference caused by the type of the communication path and providing the same control environment independent of the type of the communication path to the two device abstraction sections. .

【0018】このようにすることによって、デバイス抽
象化部同士の間でも、介在する通信路の種類を意識する
ことなく、データや情報のやり取りを行なうことができ
る。
In this manner, data and information can be exchanged between the device abstraction units without being aware of the type of intervening communication path.

【0019】本発明のデバイス制御システムにおいて、
前記デバイスに対応したシンボルを画面上に表示する表
示手段と、表示された前記シンボルを操作するための操
作手段と、をさらに備え、前記アプリケーション部また
はインターフェイス部は、前記操作手段による前記シン
ボルへの操作内容に従って、前記シンボルに対応するデ
バイスを制御することが好ましい。
In the device control system of the present invention,
Display means for displaying a symbol corresponding to the device on a screen, and operation means for operating the displayed symbol, wherein the application unit or the interface unit displays the symbol by the operation means. It is preferable to control a device corresponding to the symbol according to the operation content.

【0020】ここで、シンボルとは、デバイスの存在を
表すアイコンや、デバイスを抽象化して表した図形また
は記号や、デバイスの名前などを記した文字などの他、
表示手段に表示可能であり、デバイスとの対応関係がユ
ーザに視認され得るものであれば何でも良い。
Here, the symbol includes an icon representing the existence of a device, a figure or a symbol representing an abstraction of the device, characters representing the name of the device, and the like.
Any device can be used as long as it can be displayed on the display means and the correspondence with the device can be visually recognized by the user.

【0021】このように構成することによって、ユーザ
は操作手段を用いて表示手段の画面を見ながら、直感的
にデバイスの操作指示を与えることができるので、ユー
ザにとって非常に使いやすいものとなる。
With this configuration, the user can intuitively give a device operation instruction while looking at the screen of the display means using the operation means, which is very easy for the user to use.

【0022】本発明のデバイス制御システムにおいて、
前記デバイスが複数存在し、それらデバイスに対応する
前記デバイス抽象化部及びインターフェイス部がそれぞ
れ複数存在する場合に、各インターフェイス部は、それ
ぞれ、前記アプリケーション部に対して同一のインター
フェイスを提供すると共に、各デバイス抽象化部は、そ
れぞれ、前記インターフェイス部に対して同一のインタ
ーフェイスを提供することが好ましい。
In the device control system of the present invention,
When there are a plurality of the devices, and when there are a plurality of the device abstraction units and the plurality of the interface units corresponding to the devices, each of the interface units provides the same interface to the application unit. Preferably, each device abstraction unit provides the same interface to the interface unit.

【0023】このように、上位に位置する構成要素に対
して同一のインターフェイスを提供することによって、
下位に位置するデバイスの相違を吸収することができ、
上位に位置する構成要素に対し同一の制御環境を提供す
ることができる。
As described above, by providing the same interface to the higher-order components,
Can absorb the differences between the underlying devices,
The same control environment can be provided for components located at a higher level.

【0024】本発明のデバイス制御システムにおいて、
前記インターフェイス部は、該インターフェイス部に対
応するデバイスと他のデバイスとの間でデータ伝送を行
なうよう前記アプリケーション部から指示された場合
に、前記他のデバイスに対応するインターフェイス部と
の間で情報のやり取りを行ない、その情報に基づいて、
対応する前記デバイスと前記他のデバイスとの間でデー
タの伝送が可能であるかどうかを判断することが好まし
い。
In the device control system of the present invention,
The interface unit, when instructed by the application unit to perform data transmission between a device corresponding to the interface unit and another device, exchanges information with the interface unit corresponding to the other device. Interact, and based on that information,
It is preferable to determine whether data transmission is possible between the corresponding device and the other device.

【0025】このような判断を行なうことによって、デ
ータ伝送が可能な場合にのみ、以降のデバイスに対する
制御を行なうことになるので、無駄な制御を行なわなく
て済む。
By making such a determination, control of subsequent devices is performed only when data transmission is possible, so that useless control need not be performed.

【0026】本発明の記録媒体は、1つ以上のデバイス
を制御するデバイス制御システムを構築するためのコン
ピュータプログラムを記録したコンピュータ読み取り可
能な記録媒体であって、前記デバイスにそれぞれ対応
し、対応するデバイスとの間でデータまたは情報のやり
取りを行なうと共に、対応する前記デバイスについてデ
バイスの種類に起因した制御上の相違を吸収して、所定
のアプリケーションプログラムによって構築されるアプ
リケーション部に対し、デバイスの種類に依存しない同
一の制御環境を提供する1つ以上のデバイス抽象化部を
生成する機能と、前記デバイス抽象化部にそれぞれ対応
し、対応するデバイス抽象化部と通信路を介して接続さ
れ、対応する前記デバイス抽象化部と前記アプリケーシ
ョン部との間でデータまたは情報のやり取りを仲介する
1つ以上のインターフェイス部を生成する機能と、前記
インターフェイス部にそれぞれ対応し、対応するインタ
ーフェイス部と該インターフェイス部に対応する前記デ
バイス抽象化部との間を接続する前記通信路について、
通信路の種類に起因した制御上の相違を吸収して、前記
アプリケーション部に対して、通信路の種類に依存しな
い同一の制御環境を提供する1つ以上の通信路抽象化部
を生成する機能と、を前記コンピュータに実現させるた
めのコンピュータプログラムを記録したことを要旨とす
る。
A recording medium according to the present invention is a computer-readable recording medium recording a computer program for constructing a device control system for controlling one or more devices, and corresponds to each of the devices. It exchanges data or information with a device, absorbs control differences caused by the device type of the corresponding device, and provides a device type to an application unit constructed by a predetermined application program. A function of generating one or more device abstraction units that provide the same control environment independent of the device abstraction unit, and correspond to the device abstraction unit, respectively, and are connected to the corresponding device abstraction unit via a communication path; Between the device abstraction unit and the application unit Or a function of generating one or more interface units for mediating the exchange of information, and a function corresponding to each of the interface units, and connecting between the corresponding interface unit and the device abstraction unit corresponding to the interface unit. About the communication channel,
A function of absorbing one or more control differences due to the type of communication path and generating one or more communication path abstraction parts that provide the same control environment independent of the type of communication path to the application unit. And a computer program for causing the computer to realize the above.

【0027】このような記録媒体に記録されたコンピュ
ータプログラムがコンピュータによって実行されると、
デバイス制御システムを構成する各構成要素が生成され
るので、前述したデバイス制御システムと同様の効果を
奏することができる。
When the computer program recorded on such a recording medium is executed by a computer,
Since each component constituting the device control system is generated, the same effects as those of the device control system described above can be obtained.

【0028】なお、本発明は、デバイス制御システム、
デバイス制御方法、そのシステムを構築するためのコン
ピュータプログラム、そのコンピュータプログラムを記
録した記録媒体、そのコンピュータプログラムを含み搬
送波内に具現化されたデータ信号、等の種々の態様で実
現することができる。
The present invention provides a device control system,
The present invention can be realized in various modes such as a device control method, a computer program for constructing the system, a recording medium on which the computer program is recorded, a data signal including the computer program and embodied in a carrier wave.

【0029】[0029]

【発明の実施の形態】以下、本発明の実施の形態を実施
例に基づいて説明する。図1は本発明の一実施例として
のデバイス制御システムの構成を示すブロック図であ
る。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Embodiments of the present invention will be described below based on examples. FIG. 1 is a block diagram showing a configuration of a device control system as one embodiment of the present invention.

【0030】図1において、デバイス34a,34b
は、例えば、スキャナやプリンタなど、制御対象となる
デバイスである。また、アプリケーション部20は、所
定のアプリケーションプログラムによって構築されてお
り、後述するインターフェイス部22a,22bなどの
下位に位置する構成要素を介して、末端に位置する各種
のデバイス34a,34bを制御し得る。
In FIG. 1, devices 34a and 34b
Is a device to be controlled, such as a scanner or a printer. Further, the application unit 20 is constructed by a predetermined application program, and can control various devices 34a and 34b located at lower ends through lower-level components such as interface units 22a and 22b described later. .

【0031】図1において、本実施例のデバイス制御シ
ステムは、インターフェイス部22a,22bと、通信
路抽象化部24a,24bと、デバイス抽象化部28
a,28bと、を主として備えている。これら構成要素
は、それぞれ、コンピュータプログラムによって、各デ
バイス34a,34bに対応して生成されている。
In FIG. 1, the device control system according to the present embodiment includes interface units 22a and 22b, communication channel abstraction units 24a and 24b, and a device abstraction unit 28.
a, 28b. Each of these components is generated by a computer program corresponding to each of the devices 34a and 34b.

【0032】デバイス抽象化部28a,28bは、それ
ぞれ、対応するデバイス34a,34bとの間で各種制
御情報などのやり取りや、データのやり取りなどを行な
うと共に、インターフェイス部22a,22bやアプリ
ケーション部20などの上位に位置する構成要素に対し
て、デバイスの抽象化(ハードウェアの抽象化)を行な
う。
The device abstraction units 28a and 28b exchange various control information and the like, exchange data with the corresponding devices 34a and 34b, respectively, and also interface units 22a and 22b, the application unit 20, and the like. Abstraction of devices (hardware abstraction) is performed on the components located at the upper level of.

【0033】デバイス抽象化部28a,28bは、それ
ぞれ、デバイス制御部30a,30bとデバイス・ドラ
イバ32a,32bで構成されている。このうち、デバ
イス・ドライバ32a,32bは、対応するデバイス3
4a,34bについて、個々のデバイスの違いを吸収し
て、上位に位置する構成要素に対して、各デバイスの抽
象化を行なう。但し、デバイスクラス(デバイスの種
類)に基づく制御上の相違は依然として残る。
The device abstraction units 28a and 28b are respectively composed of device control units 30a and 30b and device drivers 32a and 32b. Of these, the device drivers 32a and 32b
With respect to 4a and 34b, the differences between individual devices are absorbed, and each device is abstracted with respect to the components located at higher levels. However, control differences based on the device class (device type) still remain.

【0034】即ち、例えば、デバイスとしてA社製のプ
リンタやB社製のプリンタがある場合、いずれのプリン
タもプリンタクラスという同じデバイスクラスに属して
いれば、上記したデバイス・ドライバによって、A社製
のプリンタもB社製のプリンタも違いがなくなり、デバ
イス制御部30a,30bなどの上位に位置する構成要
素に対しては、プリンタクラスの同じデバイスとして認
識される。
That is, for example, when a device is a printer manufactured by Company A or a printer manufactured by Company B, if both printers belong to the same device class called a printer class, the device driver described above makes use of the device driver described above. There is no difference between this printer and the printer manufactured by Company B, and the higher-level components such as the device control units 30a and 30b are recognized as the same device of the printer class.

【0035】具体的には、例えば、一般的なWindows(M
icrosoft社)用のプリンタ・ドライバでは、Windowsの
GDI(描画関数)の機能をドライバの外部に見せるよ
うに設計されており、「或る位置に特定の文字を印字せ
よ」などの一般的な要求が入力された場合には、その要
求を、対応するプリンタ独自のコマンド列に変換した上
で、その対応するプリンタに出力して、そのプリンタを
制御することができる。従って、このようなプリンタ・
ドライバを本実施例のデバイス・ドライバとして用いれ
ば、プリンタ個々に依存する部分はほぼ完全に抽象化す
ることができる。
Specifically, for example, a general Windows (M
The printer driver for icrosoft) is designed to show the function of GDI (drawing function) of Windows to the outside of the driver, and it is a common requirement to print specific characters at a certain position. Is input, the request is converted into a command sequence unique to the corresponding printer, and then output to the corresponding printer to control the printer. Therefore, such printers
If the driver is used as the device driver of the present embodiment, a portion depending on each printer can be almost completely abstracted.

【0036】一方、デバイス制御部30a,30bは、
対応するデバイス34a,34bに対して、デバイスク
ラスの違いをも吸収して、インターフェイス部22a,
22bなど上位に位置する構成要素に対して、各デバイ
スを完全に抽象化する。
On the other hand, the device control units 30a and 30b
For the corresponding devices 34a and 34b, the difference in device class is also absorbed, and the interface units 22a and
Each device is completely abstracted with respect to a higher-order component such as 22b.

【0037】即ち、前述したデバイス・ドライバ32
a,32bによって同じデバイスクラスに属するデバイ
スの違いは吸収されるが、例えば、プリンタクラスに属
するデバイスとスキャナクラスに属するデバイスの違い
は依然として残っている。しかし、デバイス制御部30
a,30bによって、これらデバイスクラスの違いも吸
収することにより、上位に位置する構成に要素に対して
は、デバイスの種類による違いがすべてなくなり、同一
のデバイスとして認識される。
That is, the aforementioned device driver 32
Although differences between devices belonging to the same device class are absorbed by a and 32b, for example, differences between devices belonging to the printer class and devices belonging to the scanner class still remain. However, the device control unit 30
The differences between the device classes are absorbed by a and 30b, so that the elements in the higher-level configuration have no difference due to the type of the device, and are recognized as the same device.

【0038】このようなデバイス制御部は、それぞれ、
インターフェイス部22a,22bなど上位に位置する
構成要素に対して、すべて同一のインターフェイスを提
供することによって、デバイスの完全な抽象化を行なっ
ている。
Each of such device control units includes:
The complete abstraction of the device is performed by providing the same interface to all the higher-level components such as the interface units 22a and 22b.

【0039】例えば、ごく単純な例としては、下記のよ
うな機能を、すべてに共通のインターフェイス(汎用イ
ンターフェイス)によって提供することが考えられる。
For example, as a very simple example, it is conceivable that the following functions are provided by a common interface (general-purpose interface).

【0040】 ・データ出力(データストリーム,データ型) ・データ入力(データストリーム,データ型) ・デバイス状態取得(状態のID,状態の値) ・デバイス状態設定(状態のID,状態の値) ・デバイス属性取得(属性のID,属性の値) ・デバイス属性設定(属性のID,属性の値) 但し、括弧内はパラメータの例である。Data output (data stream, data type) Data input (data stream, data type) Device status acquisition (status ID, status value) Device status setting (status ID, status value) Device attribute acquisition (attribute ID, attribute value)-Device attribute setting (attribute ID, attribute value) However, parentheses are examples of parameters.

【0041】なお、このように、各デバイス制御部にお
いて、上位に位置する構成要素に対しインターフェイス
が統一された結果、当然ながら、デバイスクラスによっ
ては無意味な制御事項(機能)も存在することになる
が、上位に位置する構成要素は、予め各デバイスのプロ
パティを調べることによって、各デバイスに対する適切
な制御を把握することができる。
As described above, in each device control unit, the interface is unified with respect to the components located at a higher level. As a result, there is naturally a meaningless control item (function) depending on the device class. However, a higher-level component can grasp appropriate control for each device by checking the properties of each device in advance.

【0042】また、デバイス・ドライバは、上記したよ
うに個々のデバイス34a,34bに対応して用意され
るが、デバイス制御部は、必ずしも個々のデバイスに対
応して用意する必要はなく、各々、特定のデバイスクラ
スに対応するように用意されていれば良い。
Although the device drivers are prepared for the individual devices 34a and 34b as described above, the device control units do not necessarily need to be prepared for the individual devices. What is necessary is just to be prepared so as to correspond to a specific device class.

【0043】インターフェイス部22a,22bは、そ
れぞれ、アプリケーション部20と対応するデバイス抽
象化部28a,28bとの間で各種制御情報などのやり
取りや、データのやり取りなどを行なうと共に、上位に
位置するアプリケーション部20に対して、同一のイン
ターフェイスを提供する。また、インターフェイス部2
2a,22b同士の間でも、各種制御情報などのやり取
りを行なうことができる。さらにまた、インターフェイ
ス部22a,22bは、対応するデバイス34a,34
bを抽象的に表したアイコンを表示手段(図示せず)の
画面上に表示させる機能も有している。
The interface sections 22a and 22b exchange various control information and data between the application section 20 and the corresponding device abstraction sections 28a and 28b, respectively, and perform application and communication between higher-level applications. The same interface is provided for the unit 20. Also, the interface unit 2
Various control information and the like can be exchanged between 2a and 22b. Furthermore, the interface units 22a and 22b are provided with the corresponding devices 34a and 34.
It also has a function of displaying an icon representing b abstractly on a screen of a display means (not shown).

【0044】ところで、本実施例のデバイス制御システ
ムにおいては、図1に示すように、インターフェイス部
22aとデバイス抽象化部28aとの間、インターフェ
イス部22bとデバイス抽象化部28bとの間、及びデ
バイス抽象化部28aと28bとの間に、それぞれ一点
鎖線で示す境界が存在する。一般に、同じコンピュータ
内にはプロセス境界が存在し、異なるコンピュータ間に
はネットワーク境界が存在するが、一点鎖線で示したこ
の境界は、プロセス境界かネットワーク境界のいずれか
の境界を表している。
Incidentally, in the device control system of the present embodiment, as shown in FIG. 1, between the interface unit 22a and the device abstraction unit 28a, between the interface unit 22b and the device abstraction unit 28b, and Between the abstraction units 28a and 28b, there are boundaries indicated by alternate long and short dash lines, respectively. In general, a process boundary exists in the same computer, and a network boundary exists between different computers. This boundary indicated by a dashed line represents either a process boundary or a network boundary.

【0045】図2及び図3はそれぞれ図1のデバイス制
御システムについての接続形態の代表例を示すブロック
図である。
FIGS. 2 and 3 are block diagrams each showing a typical example of the connection form of the device control system of FIG.

【0046】図2(a)の例では、1台のコンピュータ
40に図1に示す2つのデバイス34a,34bが直接
に接続されている。従って、この例の場合、デバイス3
4a,34b以外の構成要素、即ち、図1に示すアプリ
ケーション部20、インターフェイス部22a,22
b、通信路抽象化部24a,24b、デバイス抽象化部
28a,28bは、いずれも同じコンピュータ40内に
存在するため、図1の一点鎖線で示す境界はすべてプロ
セス境界を表すことになる。
In the example of FIG. 2A, the two devices 34a and 34b shown in FIG. 1 are directly connected to one computer 40. Therefore, in this example, device 3
4a and 34b, that is, the application unit 20 and the interface units 22a and 22 shown in FIG.
b, the communication path abstraction units 24a and 24b, and the device abstraction units 28a and 28b all exist in the same computer 40, so that all the boundaries shown by the dashed lines in FIG. 1 represent process boundaries.

【0047】また、図2(b)の例では、ネットワーク
46を介して2台のコンピュータ42,44が接続され
ており、これら2台のコンピュータ42,44にそれぞ
れ2つのデバイス34a,34bが接続されている。こ
の例の場合、デバイス34a,34b以外の主たる構成
要素のうち、例えば、アプリケーション部20、インタ
ーフェイス部22a,22b及びデバイス抽象化部28
aは、一方のコンピュータ42内に存在し、デバイス抽
象化部28bは他方のコンピュータ44内に存在する。
従って、アプリケーション部20、インターフェイス部
22a,22b及びデバイス抽象化部28aは、同じコ
ンピュータ42内に存在するが、デバイス抽象化部28
bは異なるコンピュータ44に存在するため、インター
フェイス部22aとデバイス抽象化部28aとの間の一
点鎖線で示す境界はプロセス境界を表すが、インターフ
ェイス部22bとデバイス抽象化部28bとの間の一点
鎖線で示す境界、及びデバイス抽象化部28aと28b
との間の一点鎖線で示す境界は、それぞれ、ネットワー
ク境界を表すことになる。
In the example of FIG. 2B, two computers 42 and 44 are connected via a network 46, and two devices 34a and 34b are connected to the two computers 42 and 44, respectively. Have been. In the case of this example, among the main components other than the devices 34a and 34b, for example, the application unit 20, the interface units 22a and 22b, and the device abstraction unit 28
a exists in one computer 42, and the device abstraction unit 28b exists in the other computer 44.
Therefore, although the application unit 20, the interface units 22a and 22b, and the device abstraction unit 28a exist in the same computer 42, the device abstraction unit 28
Since b exists in a different computer 44, the boundary indicated by a dashed line between the interface unit 22a and the device abstraction unit 28a represents a process boundary, but the dashed line between the interface unit 22b and the device abstraction unit 28b. And the device abstraction units 28a and 28b
Each of the boundaries indicated by the dashed lines between and represents the network boundary.

【0048】なお、ネットワークとしては、インターネ
ットや、イントラネットや、ローカルエリアネットワー
ク(LAN)や、ワイドエリアネットワーク(WAN)
など、各種ネットワークを適用することができる。
The network includes the Internet, an intranet, a local area network (LAN), and a wide area network (WAN).
For example, various networks can be applied.

【0049】さらに、図2(c)の例では、ネットワー
ク54を介して3台のコンピュータ48,50,52が
接続されており、そのうちの2台のコンピュータ50,
52にそれぞれ2つのデバイス34a,34bが接続さ
れている。この例の場合は、デバイス34a,34b以
外の主たる構成要素のうち、アプリケーション部20、
及びインターフェイス部22a,22bが、第1のコン
ピュータ48内に存在し、デバイス抽象化部28aは第
2のコンピュータ50内に存在し、デバイス抽象化部2
8bは第3ののコンピュータ52内に存在する。従っ
て、デバイス抽象化部28aと28bは互いに異なるコ
ンピュータに存在し、また、それらいずれもが、アプリ
ケーション部20やインターフェイス部22a,22b
の存在するコンピュータと異なるコンピュータに存在す
るため、図1の一点鎖線で示す境界はすべてネットワー
ク境界を表すことになる。
Further, in the example of FIG. 2C, three computers 48, 50 and 52 are connected via a network 54, and two of the computers 50, 50 and 52 are connected.
52 are connected to two devices 34a and 34b, respectively. In the case of this example, of the main components other than the devices 34a and 34b, the application unit 20,
And the interface units 22a and 22b exist in the first computer 48, and the device abstraction unit 28a exists in the second computer 50, and the device abstraction unit 2
8b resides in the third computer 52. Therefore, the device abstraction units 28a and 28b exist on different computers, and both of them are the application unit 20 and the interface units 22a and 22b.
1 exists on a computer different from the computer on which the network exists, all the boundaries shown by dashed lines in FIG. 1 represent network boundaries.

【0050】なお、図2において、コンピュータには、
パーソナルコンピュータや、モバイルコンピュータ、情
報処理端末装置や、ワークステーションなど、種々のコ
ンピュータが含まれる他、実質的にコンピュータ機能を
有する複写機やプリンタなどの周辺機器や、同じくコン
ピュータ機能を有するセット・トップ・ボックス(Set
Top Box;例えば、Web TVの受信ターミナルなどに代表
される情報端末の一形態)やゲーム機なども含まれる。
また、図2ではデバイスがコンピュータの外部に接続さ
れているように描いてあるが、デバイスの形態によって
は、図3に示すように、デバイスとコンピュータとが一
体的に構成されていても構わない。
In FIG. 2, the computer includes:
In addition to various computers such as personal computers, mobile computers, information processing terminals, and workstations, peripheral devices such as copiers and printers having substantially computer functions, and set tops also having computer functions・ Box (Set
Top Box; for example, a form of information terminal represented by a Web TV receiving terminal), a game machine, and the like.
Although the device is illustrated in FIG. 2 as being connected to the outside of the computer, the device and the computer may be integrally configured as shown in FIG. 3, depending on the form of the device. .

【0051】図3(a)の例では、マシン41がデバイ
ス部34b’とコンピュータ部40’とをそれぞれ備え
ており、デバイスとコンピュータとが一体化されてい
る。同様に、図3(b)の例では、マシン45がデバイ
ス34b’とコンピュータ部44’とをそれぞれ備えて
おり、また、図3(c)の例では、マシン53がデバイ
ス部34b’とコンピュータ部52’をそれぞれ備えて
おり、各々、デバイスとコンピュータとが一体化されて
いる。
In the example shown in FIG. 3A, the machine 41 includes a device section 34b 'and a computer section 40', and the device and the computer are integrated. Similarly, in the example of FIG. 3B, the machine 45 includes the device 34b ′ and the computer unit 44 ′, and in the example of FIG. 3C, the machine 53 includes the device unit 34b ′ and the computer unit. Each of the units has a unit 52 ′, and each of the units 52 ′ is integrated with a device and a computer.

【0052】さて、上記したように、インターフェイス
部22aとデバイス抽象化部28aとの間、インターフ
ェイス部22bとデバイス抽象化部28bとの間、及び
デバイス抽象化部28aと28bとの間には、それぞ
れ、一点鎖線で示すプロセス境界またはネットワーク境
界が存在するが、このうち、特に、インターフェイス部
22aとデバイス抽象化部28aとの間、及びインター
フェイス部22bとデバイス抽象化部28bとの間に
は、それぞれ、それら境界を越えて、インターフェイス
部22aとデバイス抽象化部28aを、インターフェイ
ス部22bとデバイス抽象化部28bを、各々接続する
ための通信路26a,26bが存在している。これらの
通信路26a,26bは、越える境界がプロセス境界で
あるかネットワーク境界であるかによって、内部バス,
通信インターフェイス,ネットワーク通信手段など、そ
の種類が異なっている。
As described above, between the interface unit 22a and the device abstraction unit 28a, between the interface unit 22b and the device abstraction unit 28b, and between the device abstraction units 28a and 28b, There are process boundaries or network boundaries indicated by dashed lines, respectively. Among them, in particular, between the interface unit 22a and the device abstraction unit 28a and between the interface unit 22b and the device abstraction unit 28b, There are communication paths 26a and 26b for connecting the interface unit 22a and the device abstraction unit 28a, and the interface unit 22b and the device abstraction unit 28b, respectively, beyond these boundaries. These communication paths 26a and 26b are provided depending on whether the boundary to be crossed is a process boundary or a network boundary.
The types are different, such as communication interface and network communication means.

【0053】一方、通信路抽象化部24a,24bが、
それぞれ、インターフェイス部22aとデバイス抽象化
部28aとの間、及びインターフェイス部22bとデバ
イス抽象化部28bとの間において、通信路26a,2
6bをそれぞれ間に介して、その両側に形成されてい
る。これら通信路抽象化部24a,24bは、それぞ
れ、インターフェイス部22a,22bとデバイス抽象
化部28a,28bとが通信路26a,26bを介して
プロセス境界またはネットワーク境界を越えて各種制御
情報のやり取りやデータのやり取りを行なう際に、イン
ターフェイス部22a,22bやデバイス抽象化部28
a,28bに対して、間に介在する通信路の抽象化を行
なう。即ち、通信路抽象化部24a,24bは、介在す
る通信路の種類の違いを吸収し、インターフェイス部2
2a,22bやデバイス抽象化部28a,28bに、境
界がプロセス境界であるかネットワーク境界であるかを
意識させることなく、制御情報やデータのやり取りを行
なわせることができる。
On the other hand, the communication path abstraction units 24a and 24b
Communication paths 26a and 26a are provided between the interface unit 22a and the device abstraction unit 28a and between the interface unit 22b and the device abstraction unit 28b, respectively.
6b are formed on both sides thereof with a space therebetween. The communication path abstraction units 24a and 24b are used to exchange various control information between the interface units 22a and 22b and the device abstraction units 28a and 28b across process boundaries or network boundaries via the communication paths 26a and 26b, respectively. When exchanging data, the interface units 22a and 22b and the device abstraction unit 28
For a and 28b, an abstraction of a communication path interposed therebetween is performed. That is, the communication channel abstraction units 24a and 24b absorb the difference in the type of the intervening communication channel, and
2a, 22b and the device abstraction units 28a, 28b can exchange control information and data without being aware of whether the boundary is a process boundary or a network boundary.

【0054】なお、この通信路抽象化部24a,24b
の仕組みについては、後ほど詳しく説明する。
The communication path abstraction units 24a and 24b
The mechanism of will be described in detail later.

【0055】前述したように、インターフェイス部22
a,22b、通信路抽象化部24a,24b、デバイス
抽象化部28a,28bはコンピュータプログラムによ
って生成されているが、具体的には、各構成要素の存在
するコンピュータ毎に、それぞれ、各コンピュータ内の
CPUが、内部メモリに格納された所望のコンピュータ
プログラムを読み出して実行することにより、そのコン
ピュータに存在する構成要素として機能する。
As described above, the interface unit 22
a and 22b, the communication path abstraction units 24a and 24b, and the device abstraction units 28a and 28b are generated by computer programs. Specifically, for each computer in which each component exists, CPU reads and executes a desired computer program stored in the internal memory, thereby functioning as a component existing in the computer.

【0056】なお、内部メモリに格納されているコンピ
ュータプログラムは、例えば、後述するように、CD−
ROMなどのコンピュータ読み取り可能な記録媒体に記
録された形態で提供される。すなわち、記録媒体に記録
されたコンピュータプログラムは、CD−ROM装置な
どの読み取り装置によって読み取られ、ハードディスク
装置などの外部記憶装置に転送されて格納される。そし
て、起動時などに必要に応じて内部メモリに転送され
る。あるいは、読み取られたコンピュータプログラム
は、外部記憶装置を介さず、直接、内部メモリに転送す
るようにしても良い。
The computer program stored in the internal memory is, for example, a CD-ROM as described later.
It is provided in a form recorded on a computer-readable recording medium such as a ROM. That is, the computer program recorded on the recording medium is read by a reading device such as a CD-ROM device, and transferred to and stored in an external storage device such as a hard disk device. Then, the data is transferred to the internal memory as needed at the time of activation or the like. Alternatively, the read computer program may be directly transferred to the internal memory without going through the external storage device.

【0057】このように、本実施例では、コンピュータ
プログラムをコンピュータ読み取り可能に記録する「記
録媒体」としてCD−ROMを利用することを述べた
が、その他にも、フレキシブルディスクや光磁気ディス
ク、ICカード、ROMカートリッジ、パンチカード、
バーコードなどの符号が印刷された印刷物、コンピュー
タの内部記憶装置(RAMやROMなどのメモリ)およ
び外部記憶装置等の、コンピュータが読取り可能な種々
の媒体を利用できる。
As described above, in this embodiment, the CD-ROM is used as a "recording medium" for recording a computer program in a computer-readable manner. However, a flexible disk, a magneto-optical disk, an IC Card, ROM cartridge, punch card,
Various computer-readable media such as printed matter on which codes such as barcodes are printed, internal storage devices (memory such as RAM and ROM) and external storage devices of the computer can be used.

【0058】また、上記コンピュータプログラムは、こ
のような記録媒体に記録された形態での提供の他、ネッ
トワークを介して、コンピュータプログラムを供給する
プログラムサーバ(図示せず)にアクセスし、プログラ
ムサーバから各々のコンピュータ内に取り込むようにし
ても良い。
In addition to providing the computer program in a form recorded on such a recording medium, the computer program accesses a program server (not shown) for supplying the computer program via a network, and You may make it take in in each computer.

【0059】また、上記コンピュータプログラムの一部
は、オペレーティングシステムプログラムによって構成
するようにしても良い。
A part of the computer program may be constituted by an operating system program.

【0060】では、図1に示すデバイス制御システムの
処理動作について簡単に説明する。例えば、アプリケー
ション部20,インターフェイス部22a,22bの存
在するコンピュータのユーザから、キーボードやマウス
などの操作手段(図示せず)を介して、アプリケーショ
ン部20に対し、デバイス34aの設定を行なうよう指
示が入力された場合、アプリケーション部20はインタ
ーフェイス部22aに対してその指示を伝え、さらに、
インターフェイス部22aは、通信路26aを介してデ
バイス抽象化部28aにその指示を伝える。デバイス抽
象化部28aは、その指示に従ってデバイス34aの設
定を行なう。
Now, the processing operation of the device control system shown in FIG. 1 will be briefly described. For example, a user of the computer in which the application unit 20 and the interface units 22a and 22b are present instructs the application unit 20 to perform setting of the device 34a via operation means (not shown) such as a keyboard and a mouse. When input, the application unit 20 transmits the instruction to the interface unit 22a, and further,
The interface unit 22a transmits the instruction to the device abstraction unit 28a via the communication path 26a. The device abstraction unit 28a sets the device 34a according to the instruction.

【0061】また、例えば、ユーザからアプリケーショ
ン部20に対し、デバイス34aからデバイス34bに
データの伝送を行なうよう指示が入力された場合、アプ
リケーション部20は、インターフェイス部22a,2
2bにその指示を伝える。インターフェイス部22a,
22bは、その指示によって両者の間でやり取りを行な
って、デバイス34aと34bとの間で有効なデータの
伝送が可能であるかどうか、即ち、デバイス34aから
データを送り出した場合に、デバイス34bでそのデー
タを受け取って処理することが可能であるかどうかにつ
いて判断する。
For example, when a user inputs an instruction to the application unit 20 to transmit data from the device 34a to the device 34b, the application unit 20 transmits the data to the interface units 22a and 22b.
2b. The interface unit 22a,
22b communicates with each other in accordance with the instruction to determine whether valid data can be transmitted between the devices 34a and 34b, that is, when data is transmitted from the device 34a, It is determined whether the data can be received and processed.

【0062】そして、有効なデータの伝送が可能であ
る、即ち、デバイス34aからデータを送り出しても、
デバイス34bでそのデータを受け取って処理すること
が可能であると判断したならば、インターフェイス部2
2aは通信路26aを介してデバイス抽象化部28aに
対して、データの伝送の指示を伝える。それにより、デ
バイス抽象化部28aは、デバイス34aからデータを
取り込み、そのデータを通信路26aを介してインター
フェイス部22aに送る。インターフェイス部22a
は、そのデータをさらにアプリケーション部20に送
り、アプリケーション部20は、例えば、そのデータに
所定の処理を施した後、インターフェイス部22bを呼
び出して、インターフェイス部22bにそのデータを送
る。インターフェイス部22bは通信路26bを介して
デバイス抽象化部28bを呼び出し、デバイス抽象化部
28bに対してデータを送り、デバイス抽象化部28b
は送られてきたデータをデバイス34bに出力する。デ
バイス34bはデータを受け取ると、そのデータについ
て所定の処理を行なう。
Then, valid data can be transmitted, that is, even if data is transmitted from the device 34a,
If the device 34b determines that the data can be received and processed, the interface unit 2
2a transmits a data transmission instruction to the device abstraction unit 28a via the communication path 26a. Thus, the device abstraction unit 28a takes in data from the device 34a and sends the data to the interface unit 22a via the communication path 26a. Interface section 22a
Sends the data to the application unit 20. The application unit 20, for example, performs predetermined processing on the data, calls the interface unit 22b, and sends the data to the interface unit 22b. The interface unit 22b calls the device abstraction unit 28b via the communication path 26b, sends data to the device abstraction unit 28b, and sends the data to the device abstraction unit 28b.
Outputs the transmitted data to the device 34b. Upon receiving the data, the device 34b performs a predetermined process on the data.

【0063】なお、図1においては、黒線の矢印は各種
制御情報などのやり取りを示し、白抜き矢印は伝送され
るデータの流れを示している。
In FIG. 1, black arrows indicate exchange of various control information and the like, and white arrows indicate the flow of transmitted data.

【0064】一方、データの伝送の方法としては次のよ
うな方法もある。図4及び図5は図1のデバイス制御シ
ステムにおける別のデータ伝送の方法を説明するための
ブロック図である。即ち、ユーザからアプリケーション
部20に対し、デバイス34aからデバイス34bにデ
ータの伝送を行なうよう指示が入力された場合、図4に
おいて、アプリケーション部20は、インターフェイス
部22a,22bにその指示を伝える。インターフェイ
ス部22a,22bは、その指示によって両者の間でや
り取りを行なって、デバイス34aと34bとの間で有
効なデータの伝送が可能であるかどうか、即ち、デバイ
ス34aからデータを送り出した場合に、デバイス34
bでそのデータを受け取って処理することが可能である
かどうかについて判断する。
On the other hand, there is the following method for transmitting data. 4 and 5 are block diagrams for explaining another data transmission method in the device control system of FIG. That is, when the user inputs an instruction to the application unit 20 to transmit data from the device 34a to the device 34b, the application unit 20 transmits the instruction to the interface units 22a and 22b in FIG. The interface units 22a and 22b exchange data according to the instruction to determine whether valid data can be transmitted between the devices 34a and 34b, that is, when data is sent from the device 34a. , Device 34
At b, it is determined whether or not the data can be received and processed.

【0065】そして、有効なデータの伝送が可能であ
る、即ち、デバイス34aからデータを送り出しても、
デバイス34bでそのデータを受け取って処理すること
が可能であると判断したならば、インターフェイス部2
2a,22bは通信路26a,26bを介してデバイス
抽象化部28a,28bにデータの伝送の指示を伝え
る。これにより、図5に示すように、インターフェイス
部22aとデバイス抽象化部28aとの間、及びインタ
ーフェイス部22bとデバイス抽象化部28bとの間の
接続が解除され、その代わりに、デバイス抽象化部28
aのデバイス制御部30aとデバイス抽象化部28bの
デバイス制御部30bとの間に、通信路38を介して新
たに接続が確立される。そして、通信路抽象化部36も
新たに生成されて、デバイス抽象化部28aと28bと
が通信路38を介してプロセス境界またはネットワーク
境界を越えて各種制御情報のやり取りやデータのやり取
りを行なう際に、デバイス抽象化部28a,28bに対
して、通信路の抽象化を行なう。つまり、通信路抽象化
部36は、介在する通信路38の種類の違いを吸収し、
デバイス抽象化部28a,28bに、境界がプロセス境
界であるかネットワーク境界であるかを意識させること
なく、制御情報やデータのやり取りを行なわせる。
Then, valid data can be transmitted, that is, even if data is sent from the device 34a,
If the device 34b determines that the data can be received and processed, the interface unit 2
2a and 22b transmit data transmission instructions to the device abstraction units 28a and 28b via the communication paths 26a and 26b. Thereby, as shown in FIG. 5, the connection between the interface unit 22a and the device abstraction unit 28a and the connection between the interface unit 22b and the device abstraction unit 28b are released, and instead, the device abstraction unit is replaced. 28
A new connection is established between the device control unit 30a of device a and the device control unit 30b of device abstraction unit 28b via the communication path 38. Then, the communication path abstraction unit 36 is also newly generated, and when the device abstraction units 28a and 28b exchange various control information and data via the communication path 38 across process boundaries or network boundaries. Next, the communication path is abstracted to the device abstraction units 28a and 28b. That is, the channel abstraction unit 36 absorbs the difference in the type of the intervening channel 38,
It causes the device abstraction units 28a and 28b to exchange control information and data without being conscious of whether the boundary is a process boundary or a network boundary.

【0066】こうして、デバイス抽象化部28aと28
bとの間の接続が確立されたら、デバイス抽象化部28
aは、デバイス34aからデータを取り込むと共に、通
信路38を介してデバイス抽象化部28bを呼び出し、
取り込んだデータをデバイス抽象化部28bに送る。デ
バイス抽象化部28bは送られてきたデータをデバイス
34bに出力する。デバイス34bでは入力されたデー
タについて所定の処理を行なう。
Thus, the device abstraction units 28a and 28a
b, the device abstraction unit 28
a fetches data from the device 34a and calls the device abstraction unit 28b via the communication path 38,
The acquired data is sent to the device abstraction unit 28b. The device abstraction unit 28b outputs the transmitted data to the device 34b. The device 34b performs a predetermined process on the input data.

【0067】その後、データの伝送が終了したら、デバ
イス抽象化部28aと28bとの間の接続が解除され、
再び、インターフェイス部22aとデバイス抽象化部2
8aとの間、及びインターフェイス部22bとデバイス
抽象化部28bとの間の接続が確立される。
Thereafter, when the data transmission is completed, the connection between the device abstraction units 28a and 28b is released,
Again, the interface unit 22a and the device abstraction unit 2
8a and between the interface unit 22b and the device abstraction unit 28b.

【0068】以上のようなデータの伝送の場合、通信路
38によって、データの伝送経路がバイパスされるた
め、例えば、適用されるコンピュータシステムが図2
(c)または図3(c)に示すような場合には、デバイ
ス抽象化部28aと28bとの間に介在するネットワー
ク境界が最適化されると共に、アプリケーション部2
0,インターフェイス部22a,22bの存在するコン
ピュータ48が、データの伝送には全く介在しなくなる
ため、より高速なデータ伝送が可能となる。
In the case of data transmission as described above, since the data transmission path is bypassed by the communication path 38, for example, the applied computer system is shown in FIG.
In the case shown in FIG. 3C or FIG. 3C, the network boundary between the device abstraction units 28a and 28b is optimized and the application unit 2
0, and the computer 48 having the interface units 22a and 22b does not intervene in data transmission at all, so that higher-speed data transmission is possible.

【0069】ところで、デバイス34aからデバイス3
4bにデータの伝送を行なうよう指示された場合、イン
ターフェイス部22a,22bは、両者の間でやり取り
を行なって、デバイス34aと34bとの間で有効なデ
ータの伝送が可能であるかどうか、即ち、デバイス34
aからデータを送り出した場合に、デバイス34bでそ
のデータを受け取って処理することが可能であるかどう
かについて判断する。
By the way, from the device 34a to the device 3
4b is instructed to transmit data, the interface units 22a and 22b communicate with each other to determine whether valid data can be transmitted between the devices 34a and 34b, ie , Device 34
When the data is sent from a, it is determined whether or not the device 34b can receive and process the data.

【0070】この時、インターフェイス部22a,22
bでは、対象となるデバイス(即ち、デバイス34a,
34b)の属性情報を参照して、上記の判断を行なう。
参照される属性情報としては、デバイスの種類、送り手
側デバイス系/受け手側デバイス系、Push型/Pull型
(データ伝送の主体がSource側か,Destination側
か)、取り扱い可能なデータ形式、デバイスの状態(動
作可能か?等)や性能(処理速度等)や存在場所(セク
ション,フロアー等)や処理コスト(通信コストや印刷
コスト)、特別なデータ伝送方式のサポートの有無など
が挙げられる。
At this time, the interface units 22a, 22
b, the target device (that is, the device 34a,
The above determination is made with reference to the attribute information of 34b).
The attribute information to be referred to includes the type of the device, the device type on the sender side / device type on the receiver side, Push type / Pull type (whether the subject of data transmission is Source side or Destination side), data format that can be handled, device State (operability?), Performance (processing speed, etc.), location (section, floor, etc.), processing cost (communication cost, printing cost), presence / absence of special data transmission method support, and the like.

【0071】また、この属性情報は、上記の判断の他
に、後述するように、対象となるデバイスの組合せの有
効性の度合いを表す評価値を得るためにも、用いられ
る。
The attribute information is used in addition to the above-described determination to obtain an evaluation value indicating the degree of effectiveness of the target device combination, as described later.

【0072】なお、上記属性情報は、アプリケーション
部20,インターフェイス部22a,22bの存在する
コンピュータ内に格納されていても良いが、デバイス制
御部,デバイス・ドライバの存在するコンピュータ内に
格納されていても良い。この場合、インターフェイス部
22a,22bは、対応するデバイス制御部30a,3
0bとの間で接続を確立し、必要に応じて、デバイス制
御部30a,30bとの間で交信を行ない、格納されて
いる上記属性情報を参照して、有効なデータの伝送が可
能であるかどうかの判断を行なうことになる。また、上
記属性情報は、アプリケーション部20,インターフェ
イス部22a,22bの存在するコンピュータとは、別
の、ネットワーク上に存在するコンピュータ(例えば、
サーバ)内に格納されていても良い。その場合には、イ
ンターフェイス部22a,22bは、そのサーバとの間
で接続を確立し、格納されている上記属性情報を参照し
て、有効なデータの伝送が可能であるかどうかの判断を
行なうことになる。
The attribute information may be stored in the computer where the application unit 20 and the interface units 22a and 22b are present, but is stored in the computer where the device control unit and the device driver are present. Is also good. In this case, the interface units 22a, 22b are connected to the corresponding device control units 30a, 3
0b, establishes a connection with the device controllers 30a and 30b as necessary, and refers to the stored attribute information to transmit valid data. Will be determined. In addition, the attribute information is provided by a computer (for example, a computer) that exists on a network different from the computer on which the application unit 20 and the interface units 22a and 22b exist.
Server). In this case, the interface units 22a and 22b establish a connection with the server, and refer to the stored attribute information to determine whether valid data can be transmitted. Will be.

【0073】ところで、一方のデバイスからデータを送
り出し、他方のデバイスでそのデータを受け取って処理
することが可能である場合、それらデバイスが例えネッ
トワークを介してつながっている場合であっても、ユー
ザから見て、それらデバイスはあたかも1つのデバイス
で構成されているように見なせる場合がある。そのよう
なデバイスを、本明細書では複合デバイスと呼ぶ。すな
わち、複合デバイスとは、対象となっている複数のデバ
イスのうち、データを送り出す側のデバイスの有する機
能の少なくとも一部と、データを受け取る側の有する機
能の少なくとも一部と、を共に有する仮想的なデバイス
のことである。すなわち、上記例のように、デバイス3
4aからデータを送り出し、デバイス34bでそのデー
タを受け取って処理する場合、対象となっているデバイ
スはデバイス34aとデバイス34bであるので、デバ
イス34aの有する機能の少なくとも一部とデバイス3
4bの有する機能の少なくとも一部とを共に有する仮想
的なデバイスが、複合デバイスとなる。
By the way, when data can be sent from one device and the other device can receive and process the data, even if those devices are connected via a network, the user can send the data. At first glance, those devices may be regarded as if they are composed of one device. Such a device is referred to herein as a composite device. That is, a composite device is a virtual device that has at least some of the functions of the device that sends data and at least some of the functions of the device that receives data among a plurality of target devices. Device. That is, as in the above example, the device 3
When the data is sent from the device 4a and the data is received and processed by the device 34b, the target devices are the device 34a and the device 34b.
A virtual device having at least a part of the function of 4b is a composite device.

【0074】任意のデバイス同士においては、デバイス
の組合せによっては、一方のデバイスからデータを送り
出した場合に、他方のデバイスでデータを受け取って処
理することが可能でない場合も出てくる。このような場
合、当然に、それらデバイスについて複合デバイスを仮
想しても、その複合デバイスは実際には動作不可能とな
る。
Depending on the combination of devices, when data is sent from one device, it may not be possible to receive and process the data with the other device. In such a case, naturally, even if a composite device is virtualized for those devices, the composite device actually cannot operate.

【0075】従って、任意のデバイス同士について、一
方のデバイスからデータを送り出した場合に、他方のデ
バイスでそのデータを受け取って処理することが可能で
あるかどうかを判断する手法の一つとして、後述するよ
うに、それら任意のデバイスの組合せが、複合デバイス
として動作可能である組合せであるかどうかを判断する
ようにしても良い。
Accordingly, as an example of a method for determining whether data can be received and processed by another device when data is sent from one device to another device, the following method is used. As such, it may be determined whether or not the combination of these arbitrary devices is a combination that can operate as a composite device.

【0076】それでは、次に、図1に示すデバイス制御
システムをCOMの技術を用いて実現した場合の具体例
について説明する。
Next, a specific example in the case where the device control system shown in FIG. 1 is realized by using the COM technique will be described.

【0077】ここで、COM(Compornent Object Mode
l)とは、Microsoft社が提唱し、推進しているオブジェ
クトを連携動作させるインフラストラクチャであって、
動的に交換可能なコンポーネントの構築方法を定義する
ものであり、コンポーネントアーキテクチャの標準を定
めた仕様である。
Here, COM (Compornent Object Mode)
l) is an infrastructure that works with objects promoted and promoted by Microsoft,
It defines a method of constructing components that can be dynamically exchanged, and is a specification that defines standards for component architecture.

【0078】COMでは、ソフトウェアが提供するサー
ビスは、それぞれ、COMオブジェクトとしてインプリ
メントされる。各COMオブジェクトは、それぞれ、1
つ以上のインターフェイスを実装している。また、各C
OMオブジェクトは、それぞれ、クラスIDにより識別
される。この具体例では、図1に示した構成要素のう
ち、インターフェイス部22a,22b及びデバイス制
御部30a,30bが、それぞれ、COMオブジェクト
として構成される。
In COM, each service provided by software is implemented as a COM object. Each COM object has 1
Implements more than one interface. In addition, each C
Each OM object is identified by a class ID. In this specific example, among the components shown in FIG. 1, the interface units 22a and 22b and the device control units 30a and 30b are each configured as a COM object.

【0079】COMオブジェクトが実装するインターフ
ェイスは、通常何らかの関連性を持ったいくつかのメソ
ッドによって構成されている。各インターフェイスは、
それぞれ、インターフェイスIDにより識別される。ま
た、メソッドは特定の機能を実行する関数呼び出しであ
って、特定のインターフェイスに含まれるメソッドを呼
び出すためには、そのインターフェイスへのポインタが
必要となる。インターフェイスのポインタは、そのイン
ターフェイスを識別するインターフェイスIDと、その
インターフェイスを実装するCOMオブジェクトを識別
するクラスIDなどを指定して、COMライブラリのサ
ービスを呼び出すことにより取得することができる。
The interface implemented by the COM object is usually composed of several methods having some relation. Each interface is
Each is identified by an interface ID. A method is a function call for executing a specific function, and in order to call a method included in a specific interface, a pointer to the interface is required. An interface pointer can be obtained by designating an interface ID for identifying the interface, a class ID for identifying a COM object implementing the interface, and the like, and calling a service of the COM library.

【0080】図6は図1のデバイス制御システムをCO
Mの技術を用いて実現した場合の具体例を示すブロック
図である。
FIG. 6 shows the device control system of FIG.
FIG. 14 is a block diagram illustrating a specific example in the case of realization using the technique of M.

【0081】図6において、アプリケーション部20
は、前述したとおり、アプリケーションプログラムによ
って機能しており、内部に、イベント・ハンドラー(Ev
entHandler)N1を有している。
In FIG. 6, the application unit 20
Is functioned by the application program as described above, and internally has an event handler (Ev
entHandler) N1.

【0082】また、インターフェイス部22a,22b
は、上記したように、COMオブジェクトによって構成
されており、各々、複数のインターフェイスI1〜I1
0を実装している。図ではインターフェイスはそれぞれ
丸で表している。これらインターフェイスのうち、I
1,I6はそれぞれアイ・サイバー・プラグ(ICyberPl
ug)であり、I2,I7はそれぞれアイ・コンテキスト
・メニュー(IContextMenu)であり、I3,I8はそれ
ぞれアイ・ドロップ・ソース(IDropSource)であり、
I4,I9はそれぞれアイ・ドロップ・ターゲット(ID
ropTarget)であり、I5,I10はそれぞれアイ・サ
イバー・イベント(ICyberEvent)である。このうち、
アイ・コンテキスト・メニューI2,I7、アイ・ドロ
ップ・ソースI3,I8、及びアイ・ドロップ・ターゲ
ットI4,I9はそれぞれ一般的なインターフェイスで
あるが、アイ・サイバー・プラグI1,I6及びアイ・
サイバー・イベントI5,I10はこの具体例独自のイ
ンターフェイスである。
The interface units 22a and 22b
Is composed of COM objects as described above, and each of the interfaces includes a plurality of interfaces I1 to I1.
0 is implemented. In the figure, each interface is represented by a circle. Of these interfaces, I
1 and I6 are ICyberPl (ICyberPl
ug), I2 and I7 are eye context menus (IContextMenu), I3 and I8 are eye drop sources (IDropSource), respectively.
I4 and I9 are eye drop targets (ID
ropTarget), and I5 and I10 are eye cyber events (ICyberEvent), respectively. this house,
The eye context menus I2 and I7, the eye drop sources I3 and I8, and the eye drop targets I4 and I9 are general interfaces, respectively.
Cyber events I5 and I10 are interfaces specific to this specific example.

【0083】なお、前述したように、インターフェイス
部22a,22bは、上位に位置するアプリケーション
部20に対して、同一のインターフェイス(汎用インタ
ーフェイス)を提供するが、上記したアイ・サイバー・
プラグI1,I6が、そのインターフェイスに該当す
る。
As described above, the interface units 22a and 22b provide the same interface (general-purpose interface) to the application unit 20 located at a higher level.
The plugs I1 and I6 correspond to the interface.

【0084】また、インターフェイス部22a,22b
は、上記したインターフェイス以外にも、アイ・データ
・オブジェクト(IDataObject)などのインターフェイ
スも実装している。
The interface units 22a and 22b
Implements an interface such as an eye data object (IDataObject) in addition to the interface described above.

【0085】一方、デバイス制御部30a,30bも、
上記したようにCOMオブジェクトによって構成されて
おり、各々、複数のインターフェイスI11〜I14を
実装している。これらインターフェイスのうち、I1
1,I3はそれぞれアイ・サイバー・プロトコル(ICyb
erProtocol)であり、I12,I14はそれぞれアイ・
サイバー・イベント(ICyberEvent)である。これらイ
ンターフェイスI11〜I14はいずれもこの具体例独
自のインターフェイスである。また、デバイス制御部3
0a,30bは、各々、モジュールとしてステイタス・
モニタM1,M2を含んでいる。
On the other hand, the device control units 30a and 30b also
As described above, it is constituted by the COM object, and each implements a plurality of interfaces I11 to I14. Of these interfaces, I1
1 and I3 are the i-cyber protocols (ICyb
erProtocol), and I12 and I14 are
It is a cyber event (ICyberEvent). Each of these interfaces I11 to I14 is an interface unique to this specific example. Also, the device control unit 3
0a and 30b are status modules as modules, respectively.
Monitors M1 and M2 are included.

【0086】なお、前述したように、デバイス制御部3
0a,30bは、インターフェイス部22a,22bな
ど上位に位置する構成要素に対して、すべて同一のイン
ターフェイス(汎用インターフェイス)を提供すること
によって、デバイスの完全な抽象化を行なっているが、
上記したアイ・サイバー・プロトコルI11,I13
が、そのインターフェイスに該当している。
As described above, the device control unit 3
The devices 0a and 30b provide a complete abstraction of the device by providing the same interface (general-purpose interface) to all the higher-level components such as the interface units 22a and 22b.
The above-mentioned i-cyber protocols I11 and I13
Is the interface.

【0087】また、図6において、デバイス・ドライバ
32a,32bとデバイス34a,34bは、それぞ
れ、図1と変わるところはない。
In FIG. 6, the device drivers 32a and 32b and the devices 34a and 34b are the same as those in FIG.

【0088】図6において、プロキシ(Proxy)P1,
P2及びスタブ(Stub)S1,S2は、図1に示す通信
路抽象化部24aを構成しており、また、プロキシP
3,P4及びスタブS3,S4は通信路抽象化部24b
を構成している。このようなプロキシ及びスタブは、C
OM/DCOM(Distributed COM)の機構により生成
される。COM/DCOMはWindowsプラットホーム等
で標準的にサポートされる機構である。
In FIG. 6, a proxy (Proxy) P1,
P2 and stubs (Stubs) S1 and S2 constitute the communication channel abstraction unit 24a shown in FIG.
3, P4 and stubs S3, S4 are communication path abstraction units 24b.
Is composed. Such proxies and stubs are
It is generated by the OM / DCOM (Distributed COM) mechanism. COM / DCOM is a mechanism supported as standard on Windows platforms and the like.

【0089】それでは、通信路抽象化部24a,24b
を構成するプロキシとスタブの機能によって、前述した
通信路の抽象化を行なう仕組みについて説明する。
Then, the communication path abstraction units 24a and 24b
A mechanism for performing the above-described abstraction of the communication path by using the functions of the proxy and the stub that configures the above will be described.

【0090】COMにおいて、インターフェイスに含ま
れるメソッドの呼び出し(以下、インターフェイス呼び
出しという)を行なう際、インターフェイス呼び出し側
をクライアント、呼び出される側をサーバと呼ぶ。サー
バは、a)クライアントと同一コンピュータ上の同一プ
ロセス(同一アドレス空間)で動作する場合と、b)ク
ライアントと同一コンピュータ上の異なるプロセス(ア
ドレス空間)で動作する場合と、c)クライアントとは
異なるコンピュータ上のプロセス(アドレス空間)で動
作する場合がある。
In COM, when a method included in an interface is called (hereinafter referred to as an interface call), the interface calling side is called a client, and the called side is called a server. The server is different from a) a case in which the client operates in the same process (same address space) on the same computer as the client, b) a case in which the server operates in a different process (address space) on the same computer as the client, and c) different from the client. It may run in a process (address space) on a computer.

【0091】従って、インターフェイス部22a,22
bとデバイス制御部30a,30bとの関係において、
上記したクライアントとサーバの関係を持ち込むものと
すると、インターフェイス部22a,22bとデバイス
制御部30a,30bとの間に介在する境界(一点鎖線
で示す境界)がプロセス境界である場合は、b)の場合
に相当し、ネットワーク境界である場合は、c)の場合
に相当する。
Therefore, the interface units 22a, 22
b and the device control units 30a and 30b,
Assuming that the above-described relationship between the client and the server is brought in, if the boundary (boundary indicated by a dashed line) between the interface units 22a and 22b and the device control units 30a and 30b is a process boundary, b) If it is a network boundary, it corresponds to the case c).

【0092】b)やc)の場合、サーバはクライアント
とアドレス空間(プロセス)が異なっているので、イン
ターフェイス呼び出しを行なう場合に、単純な関数呼び
出しのような呼び出し方は不可能である。そこで、この
具体例では、クライアントがサーバによって実現される
インターフェイスを呼び出す場合、クライアントは、サ
ーバと全く同じインターフェイスを実装するプロキシ
を、クライアントと同じプロセス(アドレス空間)内に
作成し、そのプロキシを介して呼び出すようにしてい
る。プロキシは、クライアントによるインターフェイス
呼び出しを、リモート・プロシジャー・コール(RP
C;Remote Procedure Call)やプロセス間リモート・
プロシジャー・コール(LRPC;Lightweight RPC)
に変換して、サーバと同じプロセス(アドレス空間)内
に作成されたスタブを呼び出す。スタブは、リモート・
プロシジャー・コールまたはプロセス間リモート・プロ
シジャー・コールを、元のインターフェイス呼び出しに
復元して、サーバ内の本来のインターフェイスを呼び出
す。その後の呼び出しの戻りは、上記動作の逆をたどる
動作となる。
In the cases b) and c), since the server has a different address space (process) from the client, it is impossible to call the function like a simple function call when making an interface call. Therefore, in this specific example, when the client calls the interface realized by the server, the client creates a proxy that implements the same interface as the server in the same process (address space) as the client, and passes through the proxy. To call. The proxy converts the client's interface call to a remote procedure call (RP
C; Remote Procedure Call)
Procedure Call (LRPC; Lightweight RPC)
And calls a stub created in the same process (address space) as the server. The stub is remote
Restore the procedure call or the interprocess remote procedure call to the original interface call and call the original interface in the server. Subsequent return of the call is an operation that reverses the above operation.

【0093】ここで、リモート・プロシジャー・コール
は、ネットワーク境界を越えて関数を呼び出すための仕
組みであり、関数呼び出しは、ネットワーク上のデータ
のやり取りに変換される。従って、このリモート・プロ
シジャー・コールはc)の場合に用いられる。また、プ
ロセス間リモート・プロシジャー・コールは、同一コン
ピュータ上で,プロセス境界を越えて関数を呼び出すた
めの仕組みであり、関数呼び出しがプロセス間通信によ
り実現される。従って、このプロセス間リモート・プロ
シジャー・コールはb)の場合に用いられる。
Here, the remote procedure call is a mechanism for calling a function across a network boundary, and the function call is converted into an exchange of data on the network. Thus, this remote procedure call is used in case c). The inter-process remote procedure call is a mechanism for calling a function across process boundaries on the same computer, and the function call is realized by inter-process communication. Therefore, this inter-process remote procedure call is used in case b).

【0094】以上のように、インターフェイス呼び出し
をリモート・プロシジャー・コールやプロセス間リモー
ト・プロシジャー・コールに変換して、プロキシとスタ
ブとの間でやり取りすることにより、通信路の種類の違
いを吸収し、境界がプロセス境界であるかネットワーク
境界であるかを意識させることなく、インターフェイス
呼び出しを行なうことができ、通信路の抽象化を実現す
ることができる。
As described above, by converting an interface call into a remote procedure call or an inter-process remote procedure call and exchanging between the proxy and the stub, the difference in the type of communication path is absorbed. The interface can be called without being conscious of whether the boundary is a process boundary or a network boundary, and an abstraction of a communication path can be realized.

【0095】それでは、図6以下の図面を用いて、この
具体例の動作について説明する。なお、以下の説明で
は、デバイス34aがスキャナであり、デバイス34b
がプリンタである場合を例として説明する。
The operation of this embodiment will now be described with reference to FIGS. In the following description, the device 34a is a scanner, and the device 34b
Is described as an example.

【0096】アプリケーション部20を機能するアプリ
ケーションの表示領域には、予め、制御対象として、デ
バイス34aであるスキャナとデバイス34bであるプ
リンタがマウントされている。これによって、CRTな
どの表示手段(図示せず)の画面上には、図7(a)に
示すように、スキャナのアイコンとプリンタのアイコン
がインターフェイス部22a,22bによって表示され
るため、アプリケーション部20等の存在するコンピュ
ータのユーザが、これらスキャナやプリンタに対して、
種々の操作を行なうことができるようになる。
In the display area of the application functioning as the application section 20, a scanner as the device 34a and a printer as the device 34b are mounted in advance as control targets. As a result, the icon of the scanner and the icon of the printer are displayed on the screen of the display means (not shown) such as the CRT by the interface units 22a and 22b as shown in FIG. Users of existing computers such as 20
Various operations can be performed.

【0097】そこで、ユーザがキーボードやマウスなど
の操作手段(図示せず)を使って、画面上に表示されて
いるアイコンを操作すると、その操作がスキャナの設定
を行なうための操作(例えば、スキャナのアイコン上で
マウスの右ボタンをクリックするなど)である場合に
は、アプリケーション部20によって、スキャナである
デバイス34aに対応したインターフェイス部22aか
ら、アイ・コンテキスト・メニューI2が呼び出され
る。アイ・コンテキスト・メニューI2は、スキャナの
アイコンの近傍に、スキャナ用のコンテキストメニュー
(ポップアップメニュー)を表示したり、ユーザがその
メニュー内の項目の実行を指示した場合に、その指示に
従って、デバイス制御部30aと交信を行なって、スキ
ャナであるデバイス34aの設定を行なう。
When the user operates an icon displayed on the screen using an operating means (not shown) such as a keyboard or a mouse, the operation is performed to set a scanner (for example, a scanner). (For example, by clicking the right button of the mouse on the icon of (1)), the application 20 calls up the eye context menu I2 from the interface unit 22a corresponding to the device 34a that is a scanner. The eye context menu I2 displays a context menu (pop-up menu) for the scanner in the vicinity of the scanner icon or, when the user instructs execution of an item in the menu, performs device control according to the instruction. The communication with the unit 30a is performed to set the device 34a as a scanner.

【0098】また、ユーザによるアイコンの操作がアイ
コンのドラッグ・アンド・ドロップ(Drag & Drop)で
ある場合には、次のような動作を行なう。
When the operation of the icon by the user is drag and drop (Drag & Drop) of the icon, the following operation is performed.

【0099】即ち、ユーザがマウスを操作して、図7
(b)に示すように、画面上に表示されているスキャナ
のアイコンをマウスカーソルによりドラッグして、プリ
ンタのアイコンの上に重ねると、インターフェイス部2
2bによって、インターフェイス部22aに実装されて
いるアイ・ドロップ・ソースI3がインターフェイス部
22bに実装されているアイ・ドロップ・ターゲットI
9に渡される。具体的には、アイ・ドロップ・ソースI
3のポインタをパラメータとして、アイ・ドロップ・タ
ーゲットI9のいずれかのメソッドが呼び出される。
That is, when the user operates the mouse, FIG.
As shown in (b), when the scanner icon displayed on the screen is dragged with the mouse cursor and superimposed on the printer icon, the interface unit 2 is displayed.
2b, the eye drop source I3 mounted on the interface unit 22a is replaced by the eye drop target I3 mounted on the interface unit 22b.
9 passed. Specifically, Eye Drop Source I
One of the methods of the eye drop target I9 is called using the pointer 3 as a parameter.

【0100】次に、インターフェイス部22bでは、ア
イ・ドロップ・ターゲットI9が、渡されたアイ・ドロ
ップ・ソースI3から、インターフェイス部22aに実
装されているアイ・サイバー・プラグI1のポインタを
取り出し、インターフェイス部22bに実装されている
アイ・サイバー・プラグI6に対して、アイ・サイバー
・プラグI1とのデータ伝送が成り立つかどうか問い合
わせる。
Next, in the interface unit 22b, the eye drop target I9 extracts the pointer of the eye cyber plug I1 mounted on the interface unit 22a from the passed eye drop source I3, and An inquiry is made to the eye cyber plug I6 mounted on the unit 22b as to whether data transmission with the eye cyber plug I1 is established.

【0101】この時、各々のインターフェイス部22
a,22bでは、対応するデバイス制御部30a,30
bとの間で接続を確立し、必要に応じて、デバイス制御
部30a,30bとの間で交信を行った上で、データ伝
送が成り立つかどうかの判断を行なう。
At this time, each interface unit 22
a, 22b, the corresponding device control units 30a, 30
b and establishes a connection with the device control units 30a and 30b as necessary, and then determines whether data transmission is established.

【0102】次に、インターフェイス部22a,22b
は、データ伝送が成り立つと判断した場合には、画面上
に表示されているドラッグ中のマウスカーソルを、ドラ
ッグ・アンド・ドロップが可能であることを表す形状に
設定し、成り立たないと判断した場合には、ドラッグ中
のマウスカーソルを、ドラッグ・アンド・ドロップを禁
止することを表す形状に設定する。
Next, the interface units 22a and 22b
If it is determined that data transmission is established, set the mouse cursor being dragged displayed on the screen to a shape that indicates that drag and drop is possible, and if it is determined that it is not established In, the mouse cursor being dragged is set to a shape indicating that drag and drop is prohibited.

【0103】そこで、データ伝送が成り立つと判断され
た場合において、ユーザがマウスを操作して、スキャナ
のアイコンをプリンタのアイコンに重ねた状態でドロッ
プすると、インターフェイス部22bでは、アイ・ドロ
ップ・ターゲットI9が、アイ・サイバー・プラグI6
のデータ伝送開始のメソッドに、インターフェイス部2
2aに実装されているアイ・サイバー・プラグI1を渡
して、実際の処理をアイ・サイバー・プラグI6に任せ
る。
When it is determined that the data transmission is established, the user operates the mouse to drop the scanner icon over the printer icon, and the interface unit 22b causes the eye drop target I9 But I Cyber Plug I6
Interface 2 in the method for starting data transmission
The eye cyber plug I1 mounted on 2a is passed, and the actual processing is left to the eye cyber plug I6.

【0104】データ伝送の実際の処理は、次のように行
なわれる。即ち、データの伝送が、図1に示したよう
に、インターフェイス部22a,アプリケーション部2
0,インターフェイス部22bを介して行なわれる場合
は、図8〜図12に示す如く行なわれ、また、図5に示
したように、デバイス制御部30aと30bとの間で直
接行なわれる場合は、図13〜図17に示す如く行なわ
れる。
The actual processing of data transmission is performed as follows. That is, data transmission is performed by the interface unit 22a and the application unit 2 as shown in FIG.
0, when performed via the interface unit 22b, as shown in FIGS. 8 to 12, and when performed directly between the device control units 30a and 30b as shown in FIG. This is performed as shown in FIGS.

【0105】図8〜図12は、図6のデバイス制御シス
テムにおいて、データ伝送を行なう場合の手順を時系列
で順番に示した説明図である。なお、これら図では、そ
の時点でポイントとなる部分を太線にて表しており、そ
の時点で関わりの少ない部分を破線にて表している。
FIG. 8 to FIG. 12 are explanatory diagrams showing the procedure for performing data transmission in the device control system of FIG. 6 in time series. In these drawings, a point that is a point at that time is indicated by a bold line, and a part that is less relevant at that point is indicated by a broken line.

【0106】データ伝送の処理が開始されると、まず、
図8に示すように、デバイス34a(スキャナ)から得
られたデータがデバイス・ドライバ32aに入力され、
デバイス・ドライバ32a内のバッファに格納される。
次に、図9に示すように、データ入力がデバイス制御部
30aのステイタス・モニタM1によって検出され、イ
ベントとして、プロキシP1,スタブS1,インターフ
ェイス部22aのアイ・サイバー・イベントI5を介し
て、アプリケーション部20のイベント・ハンドラーN
1に通知される。アプリケーション部20は、通知され
たイベントを無視することもできるが、イベントに応答
して直ちにデータ入力を行うこともできる。
When the data transmission process starts, first,
As shown in FIG. 8, data obtained from the device 34a (scanner) is input to the device driver 32a,
The data is stored in a buffer in the device driver 32a.
Next, as shown in FIG. 9, the data input is detected by the status monitor M1 of the device control unit 30a, and as an event, the application is transmitted via the proxy P1, the stub S1, and the eye cyber event I5 of the interface unit 22a. Event handler N of part 20
1 is notified. The application unit 20 can ignore the notified event, but can also input data immediately in response to the event.

【0107】アプリケーション部20がデータ入力を行
なう場合、図10に示すように、まず、アプリケーショ
ン部20は内部にデータ格納領域を用意すると共に、デ
ータを取得するためにインターフェイス部22aを呼び
出す(図10の太線矢印)。これにより、処理の実行は
インターフェイス部22aに移行する。次に、インター
フェイス部22aがデータを取得するためにデバイス制
御部30aを呼び出す(図10の太線矢印)と共に、プ
ロキシP2,スタブS2が生成される。そして、アプリ
ケーション部20の用意したデータ格納領域に対応する
一時的な領域が、デバイス制御部30aのためにスタブ
S2の内部に用意され、パラメータとして渡される。こ
れにより、処理の実行はデバイス制御部30aに移行す
る。次に、デバイス制御部30aがデータを取得するた
めにデバイス・ドライバ32aを呼び出す。これによ
り、処理の実行はデバイス・ドライバ32aに移行す
る。
When the application section 20 performs data input, as shown in FIG. 10, first, the application section 20 prepares a data storage area therein and calls the interface section 22a to acquire data (FIG. 10). Bold arrow). Thereby, the execution of the processing shifts to the interface unit 22a. Next, the proxy unit P2 and the stub S2 are generated while the interface unit 22a calls the device control unit 30a to acquire data (the thick arrow in FIG. 10). Then, a temporary area corresponding to the data storage area prepared by the application unit 20 is prepared inside the stub S2 for the device control unit 30a, and is passed as a parameter. Thereby, the execution of the processing shifts to the device control unit 30a. Next, the device control unit 30a calls the device driver 32a to acquire data. Thereby, the execution of the processing shifts to the device driver 32a.

【0108】続いて、デバイス・ドライバ32aは、バ
ッファに格納されているデータをスタブS2が用意した
データ格納領域にコピーする。そして、関数呼び出しの
戻りにより、処理の実行はデバイス・ドライバ32aか
らデバイス制御部30aを経てインターフェイス部22
aに移行する。これにより、インターフェイス部22a
は、スタブS2が用意したデータ格納領域内のデータ
を、アプリケーション部20が用意した本来のデータ格
納領域にコピーする。その後、関数呼び出しの戻りによ
り、処理の実行がインターフェイス部22aからアプリ
ケーション部20に移行する。
Next, the device driver 32a copies the data stored in the buffer to the data storage area prepared by the stub S2. Then, upon the return of the function call, the processing is executed from the device driver 32a through the device control unit 30a to the interface unit 22a.
Move to a. Thereby, the interface unit 22a
Copies the data in the data storage area prepared by the stub S2 to the original data storage area prepared by the application unit 20. After that, the execution of the processing shifts from the interface unit 22a to the application unit 20 by the return of the function call.

【0109】続いて、アプリケーション部20は、アプ
リケーション部20内のデータ格納領域よりデータを読
み出して、必要に応じて加工を施す。そして、図11に
示すように、アプリケーション部20は、データを送り
出すためにインターフェイス部22bを呼び出す(図1
1の太線矢印)。これにより、処理の実行はインターフ
ェイス部22bに移行する。次に、インターフェイス部
22bがデータを送り出すためにデバイス制御部30b
を呼び出す(図11の太線矢印)と共に、プロキシP
4,スタブS4が生成される。そして、アプリケーショ
ン部20の用意したデータ格納領域に対応する一時的な
領域が、デバイス制御部30bのためにスタブS4の内
部に用意され、アプリケーション部20から出力された
データがその領域にコピーされた上で、パラメータとし
て渡される。これにより、処理の実行はデバイス制御部
30bに移行する。次に、デバイス制御部30bがデー
タを送り出すためにデバイス・ドライバ32bを呼び出
す。これにより、処理の実行はデバイス・ドライバ32
bに移行する。
Subsequently, the application section 20 reads data from the data storage area in the application section 20 and performs processing as necessary. Then, as shown in FIG. 11, the application unit 20 calls the interface unit 22b to send out data (FIG. 1).
1 thick arrow). Thereby, the execution of the process shifts to the interface unit 22b. Next, in order for the interface unit 22b to send out data, the device control unit 30b
(The thick arrow in FIG. 11), and the proxy P
4, a stub S4 is generated. Then, a temporary area corresponding to the data storage area prepared by the application unit 20 is prepared inside the stub S4 for the device control unit 30b, and the data output from the application unit 20 is copied to the area. Above, passed as a parameter. Thereby, the execution of the processing shifts to the device control unit 30b. Next, the device control unit 30b calls the device driver 32b to send out data. As a result, the processing is executed by the device driver 32.
Move to b.

【0110】続いて、デバイス・ドライバ32bは、ス
タブS2が用意したデータ格納領域に格納されているデ
ータを、デバイス・ドライバ32bのバッファにコピー
する。そして、関数呼び出しの戻りにより、処理の実行
はデバイス・ドライバ32bからデバイス制御部30
b,インターフェイス部22bを経てアプリケーション
部20に移行する。
Subsequently, the device driver 32b copies the data stored in the data storage area prepared by the stub S2 to the buffer of the device driver 32b. When the function call returns, the processing is executed from the device driver 32b to the device control unit 30.
b, the process proceeds to the application section 20 via the interface section 22b.

【0111】また、図12に示すように、デバイス・ド
ライバ32bは、バッファに格納されているデータをデ
バイス34b(プリンタ)に出力する。
As shown in FIG. 12, the device driver 32b outputs the data stored in the buffer to the device 34b (printer).

【0112】なお、同期出力の場合は、デバイス34b
へのデータの出力が完了するまで、処理の実行が上位層
へ移行することはないが、非同期出力の場合には、デバ
イス34bへのデータ出力の完了を待たずに、処理の実
行が上位層へ移行する。
In the case of the synchronous output, the device 34b
Until the output of the data to the device 34b is completed, the execution of the process does not shift to the upper layer. However, in the case of the asynchronous output, the execution of the process is performed without waiting for the completion of the data output to the device 34b. Move to.

【0113】一方、データの伝送が、図5に示したよう
に、デバイス制御部30aと30bとの間で直接に行な
われる場合は、次のようになる。図13は図5に示した
データ伝送の方法をCOMの技術を用いて実現した場合
の具体例を示すブロック図である。
On the other hand, when data transmission is performed directly between device control units 30a and 30b as shown in FIG. 5, the following is performed. FIG. 13 is a block diagram showing a specific example when the data transmission method shown in FIG. 5 is realized by using the COM technique.

【0114】前述したように、インターフェイス部22
bにおいて、アイ・ドロップ・ターゲットI9が、アイ
・サイバー・プラグI6のデータ伝送開始のメソッド
に、インターフェイス部22aに実装されているアイ・
サイバー・プラグI1を渡して、実際の処理をアイ・サ
イバー・プラグI6に任せた後は、アイ・サイバー・プ
ラグI6のデータ伝送開始のメソッドは、次の手順によ
って、デバイス制御部30aと30bとの間での直接の
データ伝送を実現する。
As described above, the interface unit 22
In (b), the eye drop target I9 is used in the method of starting data transmission of the eye cyber plug I6 by using the eye drop target I9 mounted on the interface unit 22a.
After handing over the cyber plug I1 and leaving the actual processing to the eye cyber plug I6, the method for starting data transmission of the eye cyber plug I6 is performed by the device control units 30a and 30b according to the following procedure. To achieve direct data transmission between

【0115】即ち、インターフェイス部22bのアイ・
サイバー・プラグI6は、デバイス制御部30bに対し
て、デバイス制御部同士の直接のデータ伝送を開始する
ように指示を出すと共に、相手側のデバイス制御部30
aを生成するために必要な情報(少なくとも、デバイス
制御部30aのクラスID)を渡す。
That is, the eye of the interface section 22b
The cyber plug I6 instructs the device control unit 30b to start direct data transmission between the device control units, and the device control unit 30b on the other side.
The information required to generate a (at least the class ID of the device control unit 30a) is passed.

【0116】それにより、デバイス制御部30bは、自
分自身のクローンを生成すると共に、渡された情報を基
にして、相手側のデバイス制御部30aのクローンも生
成する。その上で、新たに生成されたデバイス制御部3
0bは、新たに生成されたデバイス制御部30aとの間
で接続を確立して、最適な通信路を確保する。このと
き、図5に示した通信路抽象化部36として、プロキシ
P5,P6及びスタブS5,S6も併せて生成される。
Thus, the device control unit 30b generates its own clone and also generates a clone of the device control unit 30a on the other side based on the passed information. Then, the newly generated device control unit 3
0b establishes a connection with the newly generated device control unit 30a to secure an optimal communication path. At this time, proxies P5 and P6 and stubs S5 and S6 are also generated as the communication path abstraction unit 36 shown in FIG.

【0117】その後、デバイス制御部30bは、指定さ
れた通信の設定に応じて、相手側のデバイス制御部30
aとの間でデータ伝送を開始する。その後、予め設定さ
れた終了条件を満足したら、データ伝送を終了して、デ
バイス制御部30bは、デバイス制御部30aとの間の
接続を解除する。
After that, the device control unit 30b of the other party responds according to the specified communication setting.
Start data transmission with a. Thereafter, when the preset termination condition is satisfied, the data transmission is terminated, and the device control unit 30b releases the connection with the device control unit 30a.

【0118】図14〜図17は、図13のデバイス制御
部30a,30b間で直接のデータ伝送を行なう場合の
手順を時系列で順番に示した説明図である。なお、これ
ら図では、その時点でポイントとなる部分を太線にて表
しており、その時点で関わりの少ない部分を破線にて表
している。
FIG. 14 to FIG. 17 are explanatory diagrams showing the procedures for performing direct data transmission between the device control units 30a and 30b in FIG. 13 in order of time. In these drawings, a point that is a point at that time is indicated by a bold line, and a part that is less relevant at that point is indicated by a broken line.

【0119】デバイス制御部30a,30b間で直接の
データ伝送を行なう場合、アプリケーション部20やイ
ンターフェイス部22a,22bが介在しないため、デ
バイス制御部30a,30b同士が、直接、メソッドの
呼び出し、イベントの送付、データの伝送を行なってい
るが、デバイス制御部30a,30b、デバイス・ドラ
イバ32a及びデバイス34a,34bの動作内容はア
プリケーション部20等が介在している場合と変わりは
ないため、説明は省略する。
When direct data transmission is performed between the device control units 30a and 30b, since the application unit 20 and the interface units 22a and 22b do not intervene, the device control units 30a and 30b directly call a method and send an event. Although transmission and data transmission are performed, the operation contents of the device control units 30a and 30b, the device driver 32a, and the devices 34a and 34b are the same as those in the case where the application unit 20 and the like are interposed, and thus the description is omitted. I do.

【0120】以上説明したように、本実施例によれば、
アプリケーション部20は、インターフェイス部22
a,22b、通信路抽象化部24a,24b、デバイス
抽象化部28a,28bをそれぞれ介することによっ
て、デバイス34a,34bの種類や、途中に介在する
通信路26a,26bの種類を意識することなく、各デ
バイス34a,34bを制御して、各デバイス34a,
34bの設定を行なったり、各デバイス34a,34b
間でデータの伝送を行なわせたりすることができる。
As described above, according to the present embodiment,
The application unit 20 includes an interface unit 22
a, 22b, the communication path abstraction units 24a, 24b, and the device abstraction units 28a, 28b, respectively, without being conscious of the types of the devices 34a, 34b and the types of the communication paths 26a, 26b interposed in the middle. , By controlling each device 34a, 34b,
34b, and each device 34a, 34b
Or data transmission between them.

【0121】それでは、次に、図1に示すデバイス制御
システムによって、前述した複合デバイスの1つである
仮想的なコピー機を実現する場合の具体例について説明
する。
Next, a description will be given of a specific example in which a virtual copier, which is one of the above-described composite devices, is realized by the device control system shown in FIG.

【0122】例えば、図1に示すアプリケーション部2
0を構築するアプリケーションプログラムが、仮想的な
コピー機を実現するためのプログラム(以下、このプロ
グラムを「Cyber Copy」と称することにする)である場
合、このアプリケーションプログラム「Cyber Copy」を
コンピュータ(図示せず)上で起動すると、選択可能な
デバイスのうち、予めデフォルトで送り手(ソース[So
urce])側のデバイスとして登録されているスキャナと
受け手(ディスティネイション[Destination])側の
デバイスとして登録されているプリンタとがそれぞれ自
動的に選択される。また、表示手段(図示せず)の画面
上には、図18に示す如く、コピー機のようなユーザイ
ンターフェイスが表示される。そこで、ユーザが、表示
画面を見ながらキーボードやマウスなどを操作して、コ
ピー枚数などの指定を行なった後、スタートボタンJ1
をクリックすると、前述したように、通信路を介しての
接続が確立されて、送り手側デバイスであるスキャナか
ら受け手側デバイスであるプリンタへの画像データの伝
送が行なわれ、仮想的なコピー機としての動作が行なわ
れる。
For example, the application unit 2 shown in FIG.
0 is a program for realizing a virtual copy machine (hereinafter, this program will be referred to as “Cyber Copy”), the application program “Cyber Copy” is used by a computer (FIG. When started on the (not shown), the sender (source [So
The scanner registered as the device on the urce] side and the printer registered as the device on the destination (Destination [Destination]) side are automatically selected. On the screen of the display means (not shown), a user interface like a copy machine is displayed as shown in FIG. Therefore, after the user operates the keyboard or mouse while looking at the display screen to specify the number of copies, the start button J1
Is clicked, a connection is established via the communication path, and image data is transmitted from the scanner, which is the sender device, to the printer, which is the receiver device, as described above. Is performed.

【0123】なお、本明細書において、少なくともデー
タ等を送ることが可能なデバイスを送り手デバイスと
し、少なくともデータ等を受けることが可能なデバイス
を受け手側デバイスとしている。従って、例えば、中間
加工などの中間的な処理を行うようなデバイスであって
も、少なくともデータ等を送ることが可能であれば、送
り手側デバイスと見なすことができるし、少なくともデ
ータ等を受けることが可能であれば、受け手側デバイス
と見なすことができるので、そのようなデバイスであっ
ても、送り手側デバイスまたは受け手側デバイスの何れ
かになり得る。
In this specification, a device capable of transmitting at least data and the like is referred to as a sender device, and a device capable of receiving at least data and the like is referred to as a receiver device. Therefore, for example, even a device that performs intermediate processing such as intermediate processing can be regarded as a sender device if at least data can be transmitted, and at least receives data and the like. If it is possible, it can be considered as a receiving device, so even such a device can be either a sending device or a receiving device.

【0124】また、このアプリケーションプログラム
「Cyber Copy」には、オプションが用意されており、デ
バイスの変更や画像の拡大,縮小や画像の補正(この場
合、色補正)などが可能となっている。即ち、例えば、
ユーザが、図18に示す画面中において、画像の拡大,
縮小有りや画像の補正有りなどの指示を行なった場合、
予めデフォルトで登録されている画像処理サーバが上記
した接続関係に組み込まれ、画像データの伝送がその画
像処理サーバを経由して行なわれ、その画像処理サーバ
において、コピーすべき画像に、拡大,縮小処理や色補
正処理などの所望の処理が加えられる。
The application program "Cyber Copy" is provided with options, such as device change, image enlargement / reduction, and image correction (in this case, color correction). That is, for example,
When the user enlarges an image on the screen shown in FIG.
When an instruction such as with reduction or image correction is given,
An image processing server registered in advance by default is incorporated in the connection relationship described above, and image data is transmitted via the image processing server, and the image processing server enlarges or reduces an image to be copied. Desired processing such as processing and color correction processing is added.

【0125】このときの画像データの流れを図19に示
す。図19では、送り手側デバイスとしてスキャナB
が、受け手側デバイスとしてプリンタDが、処理サーバ
として画像処理サーバDが、それぞれ、選択されている
ものとしている。画像データはスキャナBからデバイス
抽象化部60a,通信路抽象化部62,デバイス抽象化
部60cを介して画像処理サーバDに入力され、ここ
で、所望の処理が施された後、デバイス抽象化部60
c,通信路抽象化部64,デバイス抽象化部60bを介
して、プリンタDに伝送される。なお、ここでは、説明
を分かりやすくするために、送り手側デバイス,受け手
側デバイスと処理サーバとを分けているが、前述したと
おり、処理サーバもデバイスであるので、厳密に言う
と、処理サーバはスキャナに対しては受け手側デバイス
となっており、プリンタに対しては送り手側デバイスと
なっている。
FIG. 19 shows the flow of image data at this time. In FIG. 19, the scanner B is used as the sender device.
However, it is assumed that the printer D is selected as the receiver device and the image processing server D is selected as the processing server. The image data is input from the scanner B to the image processing server D via the device abstraction unit 60a, the communication path abstraction unit 62, and the device abstraction unit 60c, where the desired processing is performed, and then the device abstraction is performed. Part 60
c, to the printer D via the communication path abstraction unit 64 and the device abstraction unit 60b. Here, for the sake of simplicity of explanation, the sender device, the receiver device, and the processing server are separated. However, as described above, the processing server is also a device. Is a receiver device for the scanner, and is a sender device for the printer.

【0126】また、このときのデバイス間の通信状況
は、図18に示すように、表示手段の画面上にウインド
ウ表示され、ユーザに提示される。
Further, the communication status between the devices at this time is displayed on the screen of the display means as a window as shown in FIG. 18 and presented to the user.

【0127】一方、送り手側デバイス、受け手側デバイ
ス、処理サーバなどのデバイスは、それぞれ、ユーザが
任意に選択することができる。即ち、ユーザが、図18
に示すデバイス選択ボタンJ2をクリックすると、図2
0に示すようなデバイス選択ツリーが表示手段の画面上
に表示される。ユーザは、その中から所望のデバイスを
自由に選択することができる。
On the other hand, devices such as a sender device, a receiver device, and a processing server can be arbitrarily selected by the user. That is, if the user
When the device selection button J2 shown in FIG.
A device selection tree as shown by 0 is displayed on the screen of the display means. The user can freely select a desired device from them.

【0128】以上のように、本実施例のデバイス制御シ
ステムによって、複合デバイスの1つである仮想的なコ
ピー機を容易に実現することができる。
As described above, the device control system of the present embodiment can easily realize a virtual copy machine which is one of the composite devices.

【0129】さて、本実施例について、さらに具体的に
説明していく。図21は図2(c)の接続形態にて接続
した場合のデバイス制御システムを示すブロック図であ
る。なお、図21に示す各構成要素は、それぞれ、図1
や図2(c)に示した各構成要素と同じ構成要素であっ
ても、符号を違えて記述してある。
Now, the present embodiment will be described more specifically. FIG. 21 is a block diagram showing a device control system when connected in the connection form of FIG. 2C. The components shown in FIG. 21 correspond to those in FIG.
Also, the same components as those shown in FIG. 2 (c) are described with different reference numerals.

【0130】図21に示すように、コンピュータ100
には、受け手側デバイスであるプリンタ240の接続さ
れたコンピュータ200と、送り手側デバイスであるス
キャナ340の接続されたコンピュータ300と、がそ
れぞれ、ネットワーク(図示せず)を介して接続されて
いる。その他、コンピュータ100には、CRTや液晶
ディスプレイなどから成り、ユーザインターフェイスな
どの各種画像を表示することが可能なモニタ170が直
接接続されている。
As shown in FIG. 21, the computer 100
Is connected to a computer 200 connected to a printer 240 as a receiver device and a computer 300 connected to a scanner 340 as a sender device via a network (not shown). . In addition, the computer 100 is directly connected to a monitor 170 including a CRT and a liquid crystal display, which can display various images such as a user interface.

【0131】また、コンピュータ100は、アプリケー
ション部110と、インターフェイス部120,140
と、ユーザーインターフェイス(UI)データ格納部1
50と、アイコンデータ格納部160と、プロキシ(Pr
oxy)180,190と、を備えている。一方、コンピ
ュータ200および300は、それぞれ、スタブ(Stu
b)210,310と、デバイス制御部220,320
と、デバイスドライバ230,330と、を備えてい
る。
Further, the computer 100 includes an application unit 110 and interface units 120 and 140.
And user interface (UI) data storage unit 1
50, an icon data storage unit 160, and a proxy (Pr
oxy) 180, 190. On the other hand, the computers 200 and 300 each have a stub (Stu
b) 210, 310 and device control units 220, 320
And device drivers 230 and 330.

【0132】これらのうち、アプリケーション部110
は、所定のアプリケーションプログラムによって構築さ
れている。ここでのアプリケーションには、Windowsの
ユーザインターフェイスを表示しているシェルなど、O
Sの一部もこれに含まれる。また、インターフェイス部
120,プロキシ180,スタブ210,デバイス制御
部220およびデバイスドライバ230は、それぞれ、
受け手側デバイスであるプリンタ240に対応して生成
されている。一方、インターフェイス部140,プロキ
シ190,スタブ310,デバイス制御部320および
デバイスドライバ330は、それぞれ、送り手側デバイ
スであるスキャナ340に対応して生成されている。
Among these, the application unit 110
Is constructed by a predetermined application program. The applications here include shells that display the Windows user interface,
Part of S is also included in this. The interface unit 120, the proxy 180, the stub 210, the device control unit 220, and the device driver 230 respectively
It is generated corresponding to the printer 240 that is the receiver device. On the other hand, the interface unit 140, the proxy 190, the stub 310, the device control unit 320, and the device driver 330 are respectively generated corresponding to the scanner 340 as the sender device.

【0133】また、インターフェイス部120は、判定
部122と、デバイス情報記憶部124と、ユーザイン
ターフェイス(UI)参照テーブル128と、データ伝
送実行部129と、アイコン参照テーブル130と、デ
ータ出力部132と、関連付部134と、決定部136
と、を備えている。また、インターフェイス部140
は、少なくとも、デバイス情報記憶部144と、データ
伝送実行部148と、を備えている。これら各構成要素
は、それぞれ、コンピュータプログラムによって生成さ
れている。なお、デバイス情報記憶部124およびデバ
イス情報記憶部144には、対応デバイスクラスの情報
125,145と、複合動作可能デバイスクラスの情報
126,146と、複合デバイスカテゴリの情報12
7,147と、が予め記憶されており、結果蓄積情報1
31,149が蓄積されている。なお、これら情報につ
いては、後ほど詳しく説明する。
The interface unit 120 includes a determination unit 122, a device information storage unit 124, a user interface (UI) reference table 128, a data transmission execution unit 129, an icon reference table 130, and a data output unit 132. , Associating unit 134 and determining unit 136
And Also, the interface unit 140
Has at least a device information storage unit 144 and a data transmission execution unit 148. Each of these components is generated by a computer program. The device information storage unit 124 and the device information storage unit 144 store information 125 and 145 of the corresponding device class, information 126 and 146 of the composite operable device class, and information 12 of the composite device category.
7 and 147 are stored in advance, and the result accumulation information 1
31, 149 are stored. Note that such information will be described later in detail.

【0134】図22は図21に示すコンピュータ100
のハードウェア構成の概要を示すブロック図である。
FIG. 22 shows the computer 100 shown in FIG.
FIG. 2 is a block diagram illustrating an outline of a hardware configuration of FIG.

【0135】図22に示すように、ハードウェアの構成
として、コンピュータ100は、その内部または外部
に、コンピュータプログラムに従って種々の処理や制御
を行なうためのCPU70と、上記コンピュータプログ
ラムを記憶したり、処理中に得られたデータなどを一時
的に記憶したりするためのメモリ72と、各種周辺装置
との間でデータなどのやり取りを行なうためのI/O部
74と、各種データを格納するためのハードディスク装
置76と、モデムやターミナルアダプタやネットワーク
カードなどから成り、ネットワークを介して他の装置と
通信を行なうための通信装置78と、CD−ROMドラ
イブ装置80と、ユーザからの指示などを入力するため
のマウス84と、既述したモニタ170と、を備えてい
る。
As shown in FIG. 22, as a hardware configuration, a computer 100 has, inside or outside, a CPU 70 for performing various processes and controls according to a computer program, and stores and executes the computer program. A memory 72 for temporarily storing data and the like obtained therein, an I / O unit 74 for exchanging data and the like with various peripheral devices, and a memory for storing various data. A hard disk device 76, a communication device 78 for communicating with other devices via a network, including a modem, a terminal adapter, a network card, and the like, a CD-ROM drive device 80, and inputs of instructions from a user, etc. And a monitor 170 described above.

【0136】なお、上記したように、アプリケーション
部110、およびインターフェイス部120,140内
の各構成要素は、それぞれ、コンピュータプログラムに
よって生成されているが、具体的には、前述したとお
り、コンピュータ100内のCPU70が、メモリ72
に格納された所望のコンピュータプログラムを読み出し
て実行することにより、それら構成要素として機能す
る。
As described above, the components in the application section 110 and the interface sections 120 and 140 are each generated by a computer program. Specifically, as described above, in the computer 100, CPU 70 has a memory 72
By reading and executing a desired computer program stored in the computer, the computer functions as those components.

【0137】本実施例では、前述したように、メモリ7
2に格納されているコンピュータプログラムは、記録媒
体であるCD−ROM82に記録された形態で提供さ
れ、CD−ROMドライブ装置80により読み取られる
ことによって、コンピュータ100内に取り込まれる。
取り込まれたコンピュータプログラムは、ハードディス
ク装置76に転送され、その後、起動時などにメモリ7
2に転送される。あるいは、読み取られたコンピュータ
プログラムは、ハードディスク装置76を介さず、直
接、メモリ72に転送するようにしても良い。
In this embodiment, as described above, the memory 7
2 is provided in a form recorded on a CD-ROM 82 which is a recording medium, and is read into the CD-ROM drive device 80 and taken into the computer 100.
The fetched computer program is transferred to the hard disk device 76, and thereafter, the memory
2 Alternatively, the read computer program may be directly transferred to the memory 72 without passing through the hard disk device 76.

【0138】さらにまた、本実施例においては、インタ
ーフェイス部120,140内の各構成要素を、それぞ
れ、ソフトウェアによって実現しているが、これらはハ
ードウェアによって実現するようにしても良い。
Furthermore, in the present embodiment, each of the components in the interface units 120 and 140 is realized by software, but these may be realized by hardware.

【0139】また、UIデータ格納部150およびアイ
コンデータ格納部160は、ハードディスク装置76に
それぞれ配備されている。
The UI data storage unit 150 and the icon data storage unit 160 are provided in the hard disk device 76, respectively.

【0140】それでは、図21に示すデバイス制御シス
テムの動作について説明する。今、コンピュータ100
のユーザが、例えば、コンピュータ300に接続された
スキャナ340によって画像を取り込み、その取り込ん
だ画像をコンピュータ200に接続されたプリンタ24
0によって印刷しようとしている場合を考えてみる。
Now, the operation of the device control system shown in FIG. 21 will be described. Now computer 100
User captures an image by, for example, a scanner 340 connected to the computer 300, and transfers the captured image to the printer 24 connected to the computer 200.
Consider the case where printing is to be performed with 0.

【0141】コンピュータ100に接続されたモニタ1
70の画面400上には、今、図23に示すように、送
り手側デバイス(ソース[Source]側のデバイス)であ
るスキャナ340を視覚的に表したスキャナアイコン4
10と、受け手側デバイス(ディスティネイション[De
stination]側のデバイス)であるプリンタ240を視
覚的に表したプリンタアイコン420と、が表示されて
いる。このうち、スキャナアイコン410は、スキャナ
340に対応したインターフェイス部140によって表
示され、プリンタアイコン420は、プリンタ240に
対応したインターフェイス部120によって表示されて
いる。
The monitor 1 connected to the computer 100
As shown in FIG. 23, a scanner icon 4 that visually represents a scanner 340 that is a sender device (device on the source [Source] side) is displayed on the screen 400 of 70.
10 and the receiving device (destination [De
and a printer icon 420 that visually represents the printer 240, which is a device on the [stination] side. Among them, the scanner icon 410 is displayed by the interface unit 140 corresponding to the scanner 340, and the printer icon 420 is displayed by the interface unit 120 corresponding to the printer 240.

【0142】そこで、コンピュータ100のユーザは、
まず、コンピュータ100に接続されたマウス84を操
作し、画面400上に表示されているマウスカーソル4
30により、送り手側のスキャナアイコン410を選択
してドラッグ(Drag)すると、アプリケーション部11
0が、その操作内容に基づいて、スキャナ340に対応
したインターフェイス部140の呼び出しを行なう。続
いて、ユーザがマウス84を操作して、ドラッグしてい
るスキャナアイコン410’を受け手側のプリンタアイ
コン420の上に重ね合わせると、アプリケーション部
110は、その操作内容に従って、今度は、プリンタ2
40に対応したインターフェイス部120の呼び出しを
行なう。これにより、受け手側のデバイスであるプリン
タ240に対応したインターフェイス部120が、主体
となって、図24に示すデータ伝送開始処理を実行す
る。
Therefore, the user of the computer 100
First, the user operates the mouse 84 connected to the computer 100 to display the mouse cursor 4 displayed on the screen 400.
When the user selects and drags (Drags) the scanner icon 410 on the sender side with the application unit 11,
0 calls the interface unit 140 corresponding to the scanner 340 based on the operation content. Subsequently, when the user operates the mouse 84 and superimposes the dragged scanner icon 410 ′ on the receiver-side printer icon 420, the application unit 110 executes the printer 2 according to the operation content.
A call is made to the interface unit 120 corresponding to 40. As a result, the interface unit 120 corresponding to the printer 240, which is the device on the receiving side, mainly performs the data transmission start processing shown in FIG.

【0143】なお、本実施例では、このように、受け手
側のデバイスに対応するインターフェイス部が、主体と
なって処理を実行するようにしているが、本発明はこれ
に限定されるものではなく、送り手側のデバイスに対応
するインターフェイス部が、主体となって処理を実行す
るようにしても良い。
In the present embodiment, the interface unit corresponding to the device on the receiver side executes the processing mainly as described above. However, the present invention is not limited to this. Alternatively, the interface unit corresponding to the device on the sender side may perform the processing mainly.

【0144】図24は図21におけるインターフェイス
部120で実行されるデータ伝送開始処理の流れを示す
フローチャートである。
FIG. 24 is a flowchart showing the flow of the data transmission start process executed by the interface unit 120 in FIG.

【0145】インターフェイス部120には、アプリケ
ーション部110を介して、ユーザによるマウス84の
操作内容は伝えられているので、図24に示す処理が開
始されると、まず、インターフェイス部120内の関連
付部134が、その伝えられた内容を基にして、インタ
ーフェイス部120の対応デバイスであるプリンタ24
0と、相手方のデバイスと、の関連付けを行う(ステッ
プS102)。関連付部134は、インターフェイス部
120がアプリケーション部110から呼び出されたこ
とにより、対応デバイスであるプリンタ240が関連付
けの対象となっていることは認識している。一方、関連
付部134は、アプリケーション部110から伝えられ
たマウス84の操作内容から、関連付けるべき相手方の
デバイスがスキャナ340であることを把握する。従っ
て、関連付部134は、対応デバイスであるプリンタ2
40に対し、相手方デバイスとしてスキャナ340を関
連付け、その結果を判定部122に伝える。
Since the operation of the mouse 84 by the user is transmitted to the interface unit 120 via the application unit 110, when the processing shown in FIG. Based on the content transmitted, the unit 134 outputs the printer 24 corresponding to the interface unit 120.
0 is associated with the other device (step S102). The associating unit 134 recognizes that the printer 240, which is the corresponding device, is the target of the association by calling the interface unit 120 from the application unit 110. On the other hand, the associating unit 134 recognizes from the operation content of the mouse 84 transmitted from the application unit 110 that the partner device to be associated is the scanner 340. Accordingly, the associating unit 134 determines that the corresponding printer 2
The scanner 340 is associated with 40 as a partner device, and the result is transmitted to the determination unit 122.

【0146】次に、判定部122は、伝えられた結果に
基づいて、対応デバイスであるプリンタ240と相手方
デバイスであるスキャナ340の各々のデバイスクラス
(すなわち、デバイスの種類)の情報を、デバイス情報
記憶部124と、スキャナ340に対応するインターフ
ェイス部140のデバイス情報記憶部144と、からそ
れぞれ取得する(ステップS104)。
[0146] Next, based on the result transmitted, the judging section 122 divides the information of the device class (that is, the type of device) of each of the printer 240 as the corresponding device and the scanner 340 as the other device into the device information. It is acquired from the storage unit 124 and the device information storage unit 144 of the interface unit 140 corresponding to the scanner 340 (step S104).

【0147】前述したように、デバイス情報記憶部12
4およびデバイス情報記憶部144には、対応デバイス
クラスの情報125,145がそれぞれ記憶されてい
る。この対応デバイスクラスの情報125,145は、
インターフェイス部120,140に各々対応するデバ
イス(すなわち、対応デバイス)のデバイスクラスを記
した情報である。具体的には、情報125には、プリン
タ240のデバイスクラスとして「プリンタ」が、情報
145には、スキャナ340のデバイスクラスとして
「スキャナ」が、それぞれ、記述されている。
As described above, the device information storage unit 12
4 and the device information storage unit 144 store information 125 and 145 of the corresponding device class, respectively. The information 125 and 145 of the corresponding device class are
This is information describing the device class of a device corresponding to each of the interface units 120 and 140 (that is, a corresponding device). Specifically, the information 125 describes “printer” as a device class of the printer 240, and the information 145 describes “scanner” as a device class of the scanner 340.

【0148】従って、判定部122は、デバイス情報記
憶部124にアクセスして、そこに記憶されている対応
デバイスクラス(プリンタ240のデバイスクラス)の
情報125を取得すると共に、インターフェイス部14
0のデバイス情報記憶部144にアクセスして、そこに
記憶されている対応デバイスクラス(スキャナ340の
デバイスクラス)の情報145を取得する。
Accordingly, the determination unit 122 accesses the device information storage unit 124 to acquire the information 125 of the corresponding device class (device class of the printer 240) stored therein,
The device information storage unit 144 of the “0” is accessed to acquire the information 145 of the corresponding device class (device class of the scanner 340) stored therein.

【0149】次に、判定部122は、取得した情報12
5,145から、対応デバイスであるプリンタ240の
デバイスクラスが「プリンタ」であり、相手方デバイス
であるスキャナ340のデバイスクラスが「スキャナ」
であることを把握すると、デバイス情報記憶部124に
記憶されている複合動作可能デバイスクラスの情報12
6を参照して(ステップS106)、それらデバイスク
ラスの組合せ(すなわち、「プリンタ」と「スキャナ」
の組合せ)が複合デバイスとして動作可能な組合せであ
るか否かを判定する(ステップS108)。
[0149] Next, the judging unit 122 obtains the acquired information 12
From 5,145, the device class of the printer 240 as the corresponding device is “printer”, and the device class of the scanner 340 as the counterpart device is “scanner”.
Is recognized, the multi-operation enabled device class information 12 stored in the device information storage unit 124
6 (step S106), the combination of these device classes (ie, "printer" and "scanner")
Is determined to be a combination operable as a composite device (step S108).

【0150】前述したように、複合デバイスとは、対象
となっている送り手側デバイスの有する機能の少なくと
も一部と対象となっている受け手側デバイスの有する機
能の少なくとも一部とを共に有する仮想的なデバイスの
ことである。すなわち、この場合、対象となっているデ
バイスはスキャナ340とプリンタ240であるので、
スキャナ340の有する機能の少なくとも一部とプリン
タ240の有する機能の少なくとも一部とを共に有する
仮想的なデバイスが、複合デバイスとなる。
As described above, the composite device is a virtual device having both at least a part of the functions of the target sender device and at least a part of the functions of the target receiver device. Device. That is, in this case, the target devices are the scanner 340 and the printer 240,
A virtual device that has at least a part of the functions of the scanner 340 and at least a part of the functions of the printer 240 is a composite device.

【0151】このような複合デバイスを仮想した場合、
前述したように、デバイスの組合せによっては、その複
合デバイスが実際に動作不可能な場合がある。そこで、
判定部122は、上記したステップS106,S108
の処理によって、仮想した複合デバイスが動作可能であ
るかどうかの判定を行なうようにしている。
When such a composite device is imagined,
As described above, depending on the combination of devices, the composite device may not actually operate. Therefore,
The determination unit 122 determines in steps S106 and S108 described above.
By the above process, it is determined whether or not the virtual composite device is operable.

【0152】前述したように、任意のデバイス同士にお
いては、デバイスの組合せによって、一方のデバイスか
らデータを送り出した場合に、他方のデバイスでデータ
を受け取って処理することが可能でない場合も出てく
る。このような場合、当然に、それらデバイスについて
複合デバイスを仮想しても、その複合デバイスは実際に
は動作不可能となる。そこで、この例の場合は、一方の
デバイスからデータを送り出した場合に、他方のデバイ
スでそのデータを受け取って処理することが可能である
かどうかを判断する手法の一つとして、それら任意のデ
バイスの組合せが複合デバイスとして動作可能である組
合せであるかどうかを、判定部122によるステップS
106,S108の処理によって、判断するようにして
いる。
As described above, between arbitrary devices, depending on the combination of devices, when data is sent from one device, it may not be possible to receive and process the data with the other device. . In such a case, naturally, even if a composite device is virtualized for those devices, the composite device actually cannot operate. Therefore, in the case of this example, when data is sent from one device, one of the methods for determining whether the data can be received and processed by the other device is to use those arbitrary devices. It is determined by the determination unit 122 whether or not the combination is a combination operable as a composite device.
The determination is made by the processing of 106 and S108.

【0153】従って、任意のデバイス同士について、そ
れら任意のデバイスの組合せが、複合デバイスとして動
作可能である組合せであるかどうかを判断する代わり
に、別の判断手法によって、上記した一方のデバイスか
らデータを送り出した場合に、他方のデバイスでそのデ
ータを受け取って処理することが可能であるかどうかを
判断するようにしても良い。
Therefore, instead of judging whether or not the combination of the arbitrary devices is a combination operable as a composite device, the data from the one device is determined by another judgment method. Is sent, the other device may determine whether the data can be received and processed.

【0154】さて、前述したように、デバイス情報記憶
部124およびデバイス情報記憶部144には、複合動
作可能デバイスクラスの情報126,146がそれぞれ
記憶されている。この複合動作可能デバイスクラスの情
報126,146は、インターフェイス部120,14
0に各々対応するデバイス(すなわち、対応デバイス)
のデバイスクラスと組み合わせた場合に、その組合せに
よって仮想される複合デバイスが動作可能である他のデ
バイスクラスを列挙した情報である。具体的には、情報
126には、デバイスクラス「プリンタ」と組み合わせ
た場合に、複合デバイスが動作可能である他のデバイス
クラスとして、「スキャナ」,「デジタルカメラ」,
「ファクシミリ」,「電子メール」が記述されている。
一方、情報146には、デバイスクラス「スキャナ」と
組み合わせた場合に、複合デバイスが動作可能である他
のデバイスクラスとして、「プリンタ」,「ファクシミ
リ」,「電子メール」が記述されている。
As described above, the device information storage unit 124 and the device information storage unit 144 store the information 126 and 146 of the multifunction device class, respectively. The information 126 and 146 of the composite operable device class is stored in the interface units 120 and 14.
Devices corresponding to 0 (ie, corresponding devices)
This is information that lists other device classes in which the composite device virtualized by the combination is operable when combined with the above device class. Specifically, the information 126 includes “scanner”, “digital camera”, and “digital camera” as other device classes in which the composite device can operate when combined with the device class “printer”.
"Facsimile" and "E-mail" are described.
On the other hand, the information 146 describes “Printer”, “Facsimile”, and “E-mail” as other device classes that can operate the composite device when combined with the device class “Scanner”.

【0155】なお、或る受け手側デバイスのデバイスク
ラスに組み合わされる他のデバイスクラスは、全て、送
り手側デバイスのデバイスクラスとなっており、逆に、
或る送り手側デバイスのデバイスクラスに組み合わされ
る他のデバイスクラスは、全て、受け手側デバイスのデ
バイスクラスとなっている。従って、上記の場合、受け
手側デバイスのデバイスクラスである「プリンタ」に組
み合わされている「スキャナ」,「デジタルカメラ」,
「ファクシミリ」,「電子メール」は、全て、送り手側
デバイスのデバイスクラスであり、送り手側デバイスの
デバイスクラスである「スキャナ」に組み合わされてい
る「プリンタ」,「ファクシミリ」,「電子メール」
は、全て、受け手側デバイスのデバイスクラスである。
ここで、ファクシミリ,電子メールは送り手側デバイス
としても機能し、受け手側デバイスとしても機能するの
で、デバイスクラス「ファクシミリ」,「電子メール」
は送り手側デバイスおよび受け手側デバイスの両方のデ
バイスクラスに属している。
The other device classes combined with the device class of a certain receiver device are all device classes of the sender device.
All other device classes combined with the device class of a certain sender device are device classes of the receiver device. Therefore, in the above case, “scanner”, “digital camera”,
“Facsimile” and “E-mail” are all device classes of the sender device, and “Printer”, “Facsimile”, and “E-mail” combined with “Scanner” which is the device class of the sender device. "
Are all device classes of the receiving device.
Here, the facsimile and the e-mail function both as the sender device and the receiver device, so the device classes “facsimile” and “e-mail”
Belongs to both device classes of the sender device and the receiver device.

【0156】そこで、判定部122は、対応デバイスで
あるプリンタ240のデバイスクラス「プリンタ」に対
し、相手方デバイスであるスキャナ340のデバイスク
ラス「スキャナ」を組み合わせた場合について、デバイ
ス情報記憶部124に記憶されている複合動作可能デバ
イスクラスの情報126を参照すると、前述したよう
に、デバイスクラス「プリンタ」については、デバイス
クラス「スキャナ」,「デジタルカメラ」,「ファクシ
ミリ」,「電子メール」が、複合デバイスとして動作可
能な組合せとして記述されているので、デバイスクラス
「プリンタ」と「スキャナ」の組合せは、複合デバイス
として動作可能な組合せであると判定を下す。こうし
て、判定部122は、複合デバイスとして動作可能な組
合せである否かの判定を行なうと、その判定結果を決定
部136に伝える。なお、このとき、判定部122は、
その判定結果と共に、相手方デバイスであるスキャナ3
40の名称やデバイスクラスの情報も伝える。
Therefore, the determination unit 122 stores in the device information storage unit 124 a case where the device class “scanner” of the scanner 340 as the partner device is combined with the device class “printer” of the printer 240 as the corresponding device. Referring to the composite operable device class information 126 described above, as described above, for the device class “printer”, the device classes “scanner”, “digital camera”, “facsimile”, and “e-mail” Since the combination is described as a combination operable as a device, the combination of the device classes “printer” and “scanner” is determined to be a combination operable as a composite device. When the determination unit 122 determines whether or not the combination is operable as a composite device, the determination unit 122 transmits the determination result to the determination unit 136. Note that, at this time, the determination unit 122
Along with the determination result, the scanner 3 which is the partner device
The information of the name of 40 and the device class is also transmitted.

【0157】次に、決定部136は、判定部122が複
合デバイスとして動作可能な組合せであると判定した場
合、デバイス情報記憶部124に記憶されている複合デ
バイスカテゴリの情報127を参照して、先に仮想した
複合デバイスの種類を決定し(ステップS110)、判
定部122による判定結果と決定部136による決定結
果をデバイス情報記憶部124,144に結果蓄積情報
131,149として蓄積する。
Next, when the determination unit 122 determines that the combination is operable as a composite device, the determination unit 136 refers to the composite device category information 127 stored in the device information storage unit 124 to determine The type of the previously imagined composite device is determined (step S110), and the determination result by the determination unit 122 and the determination result by the determination unit 136 are stored in the device information storage units 124 and 144 as result storage information 131 and 149.

【0158】前述したように、デバイス情報記憶部12
4およびデバイス情報記憶部144には、複合デバイス
カテゴリの情報127,147がそれぞれ記憶されてい
る。この複合デバイスカテゴリの情報127,147
は、複合デバイスとして動作可能とされるデバイスクラ
スの各組合せについて、それぞれ、対応する複合デバイ
スの種類(複合デバイスカテゴリ)を記した情報であ
る。具体的には、情報127,情報147には次のよう
なものが記述されている。
As described above, the device information storage unit 12
4 and the device information storage unit 144 store information 127 and 147 of the composite device category, respectively. Information 127, 147 of this composite device category
Is information indicating the type (composite device category) of the corresponding composite device for each combination of device classes that can be operated as a composite device. Specifically, the following is described in the information 127 and the information 147.

【0159】 「プリンタ」+「スキャナ」=”コピー機” 「スキャナ」+「ファクシミリ」=”ファクシミリ(送
信側)” 「プリンタ」+「ファクシミリ」=”ファクシミリ(受
信側)”
“Printer” + “Scanner” = “copier” “Scanner” + “Facsimile” = “Facsimile (transmitting side)” “Printer” + “Facsimile” = “Facsimile (receiving side)”

【0160】例えば、デバイスクラス「プリンタ」と
「スキャナ」との組合せでは、プリンタの機能とスキャ
ナの機能を併せ持つデバイスとしてコピー機が考えられ
るので、その組合せに対応する複合デバイスの種類とし
て、”コピー機”が記述される。また、「スキャナ」と
「ファクシミリ」との組合せでは、スキャナの機能とフ
ァクシミリの送信部分の機能とを併せ持つデバイスとし
て、送信側ファクシミリが考えられるので、その組合せ
に対応する複合デバイスの種類として、”ファクシミリ
(送信側)”が記述される。さらに、「プリンタ」と
「ファクシミリ」との組合せでは、プリンタの機能とフ
ァクシミリの受信部分の機能とを併せ持つデバイスとし
て、受信側ファクシミリが考えられるので、その組合せ
に対応する複合デバイスの種類として、”ファクシミリ
(受信側)”が記述される。
For example, in a combination of the device classes “printer” and “scanner”, a copy machine can be considered as a device having both a printer function and a scanner function. Is described. Further, in the combination of “scanner” and “facsimile”, a transmission-side facsimile can be considered as a device having both the function of the scanner and the function of the transmission part of the facsimile. Facsimile (transmission side) "is described. Furthermore, in the combination of “printer” and “facsimile”, a receiving-side facsimile can be considered as a device having both the function of the printer and the function of the receiving part of the facsimile. Facsimile (receiving side) "is described.

【0161】その他の複合デバイスカテゴリとしては、
次のようなものも考えられる。
The other composite device categories include
The following can be considered.

【0162】「デジタルカメラ」+「電子メール」=”
ダイレクトメール送信” 「デジタルカメラ」と「電子メール」との組合せでは、
デジタルカメラの機能と電子メールの送信部分の機能と
を併せ持つ仮想的なデバイスとして、デジタルカメラで
撮った画像を予め設定された特定の送信先に電子メール
で直接送信することが可能なダイレクトメール送信が考
えられるので、その組合せに対応する複合デバイスの種
類として、”ダイレクトメール送信”が与えられる。
“Digital camera” + “E-mail” = ”
Direct mail transmission ”The combination of“ digital camera ”and“ email ”
Direct mail transmission as a virtual device that has both the function of a digital camera and the function of the e-mail transmission part, which can directly send an image taken by a digital camera to a preset destination by e-mail Therefore, “direct mail transmission” is given as the type of the composite device corresponding to the combination.

【0163】そこで、決定部136は、対応デバイスで
あるプリンタ240のデバイスクラス「プリンタ」と、
相手方デバイスであるスキャナ340のデバイスクラス
「スキャナ」と、の組合せについて、デバイス情報記憶
部124に記憶されている複合デバイスカテゴリの情報
127を参照すると、前述したように、デバイスクラス
「プリンタ」と「スキャナ」との組合せについては、複
合デバイスの種類として、”コピー機”が記述されてい
るので、この”コピー機”を「プリンタ」と「スキャ
ナ」との組合せに対応する複合デバイスの種類として決
定する。
Thus, the determination unit 136 determines the device class “printer” of the printer 240 as a corresponding device,
As for the combination of the device class “scanner” of the scanner 340 that is the partner device and the combination 127 of the composite device category stored in the device information storage unit 124, as described above, the device class “printer” and “ For the combination with “scanner”, “copier” is described as the type of composite device, so this “copier” is determined as the type of composite device corresponding to the combination of “printer” and “scanner”. I do.

【0164】こうして、決定部136によって決定され
た複合デバイスの種類は、前述したように、先に判定部
122で判定された結果と共に、結果蓄積情報131,
149として蓄積される。具体的には、例えば、結果蓄
積情報131の場合、相手方デバイスであるスキャナ3
40の名称と、組み合わせた場合に複合デバイスとして
動作可能であるという判定結果と、複合デバイスの種類
(すなわち、”コピー機”)と、が格納されることにな
る。一方、相手方である結果蓄積情報149の場合は、
スキャナ340から見て相手方デバイスであるプリンタ
240の名称と、組み合わせた場合に複合デバイスとし
て動作可能であるという判定結果と、複合デバイスの種
類(すなわち、”コピー機”)と、が格納されることに
なる。
As described above, the type of the composite device determined by the determination unit 136 is determined by the result storage information 131, together with the result determined by the determination unit 122, as described above.
149. Specifically, for example, in the case of the result accumulation information 131, the scanner 3 that is the partner device
The name of the composite device, the determination result indicating that the device can be operated as a composite device when combined, and the type of the composite device (that is, “copier”) are stored. On the other hand, in the case of the result accumulation information 149 which is the other party,
The name of the printer 240, which is the partner device when viewed from the scanner 340, the determination result that the combined device can operate as a combined device when combined, and the type of the combined device (that is, "copier") are stored. become.

【0165】その後、図23に戻って、コンピュータ1
00のユーザが、マウス84を操作して、プリンタアイ
コン420に重ねられていたスキャナアイコン410’
を、その位置でドロップ(Drop)すると、図24に示す
ステップS112の処理が続行される。
After that, returning to FIG.
00 operates the mouse 84 to operate the scanner icon 410 ′ superimposed on the printer icon 420.
Is dropped at that position, the processing in step S112 shown in FIG. 24 is continued.

【0166】すなわち、決定部136は、データ伝送実
行部129と、インターフェイス部140内のデータ伝
送実行部148に、データ伝送の開始を指示する(ステ
ップS112)。すると、これらデータ伝送実行部12
9及び148が、データ伝送の実行処理を開始する(ス
テップS114)。具体的には、データ伝送実行部14
8が、データ伝送を開始する旨をプロキシ190からネ
ットワークを越えて別のコンピュータ300内のスタブ
310に伝え、スタブ310はデバイス制御部320を
介してデバイスドライバ330に伝える。これにより、
デバイスドライバ330は、スキャナ340からデータ
を取り込み、そのデータをデバイス制御部320、スタ
ブ310、プロキシ190を介してインターフェイス部
140のデータ伝送実行部148に送る。データ伝送実
行部148は、そのデータをさらにアプリケーション部
110を介してインターフェイス部120のデータ伝送
実行部129に送る。データ伝送実行部129は、その
データをプロキシ180からネットワークを越えて別の
コンピュータ200内のスタブ210に送り、スタブ2
10は、デバイス制御部220を介してデバイスドライ
バ230に送り、デバイスドライバ230はそのデータ
をプリンタ240に出力する。こうして、スキャナ34
0からプリンタ240へデータの伝送が行なわれる。
That is, the decision unit 136 instructs the data transmission execution unit 129 and the data transmission execution unit 148 in the interface unit 140 to start data transmission (step S112). Then, these data transmission execution units 12
9 and 148 start the data transmission execution process (step S114). Specifically, the data transmission execution unit 14
8 notifies the start of data transmission from the proxy 190 to the stub 310 in another computer 300 over the network, and the stub 310 notifies the device driver 330 via the device control unit 320. This allows
The device driver 330 takes in data from the scanner 340 and sends the data to the data transmission execution unit 148 of the interface unit 140 via the device control unit 320, the stub 310, and the proxy 190. The data transmission execution unit 148 sends the data to the data transmission execution unit 129 of the interface unit 120 via the application unit 110. The data transmission execution unit 129 sends the data from the proxy 180 over the network to the stub 210 in another computer 200, and
10 sends the data to the device driver 230 via the device control unit 220, and the device driver 230 outputs the data to the printer 240. Thus, the scanner 34
The data is transmitted from 0 to the printer 240.

【0167】なお、このとき、プロキシ180,190
およびスタブ210,310は、前述したように、コン
ピュータ100と200との間、または、コンピュータ
100と300との間を、ネットワークを越えて各種制
御情報やデータがやり取りされる際に、上位に位置する
アプリケーション部110やインターフェイス部12
0,140に対して、コンピュータ間を接続する通信路
の抽象化を行なう。すなわち、プロキシ180,190
およびスタブ210,310は、介在する通信路の種類
の違いを吸収して、例えば、介在する通信路が、ネット
ワーク境界を越えて異なるコンピュータ同士をつなぐ通
信路であるか、同一のコンピュータ内において、プロセ
ス境界を越えて異なるプロセス間をつなぐ通信路である
かを、アプリケーション部110やインターフェイス部
120,140に対して全く意識させることなく、制御
情報やデータのやり取りを行なわせる。
At this time, the proxies 180 and 190
As described above, the stubs 210 and 310 are positioned higher when various control information and data are exchanged between the computers 100 and 200 or between the computers 100 and 300 via a network. Application unit 110 and interface unit 12
For 0 and 140, the communication path connecting the computers is abstracted. That is, the proxy 180, 190
The stubs 210 and 310 absorb differences in the types of intervening communication paths, and, for example, determine whether the intervening communication path is a communication path connecting different computers across a network boundary or within the same computer. Control information and data can be exchanged without making the application unit 110 or the interface units 120 and 140 conscious of whether the communication path connects different processes across process boundaries.

【0168】また、デバイス制御部220,320も、
前述したとおり、対応するデバイス(すなわち、デバイ
ス制御部220についてはプリンタ240、デバイス制
御部320についてはスキャナ340)のデバイスクラ
ス(デバイスの種類)の違いを吸収して、上位に位置す
るアプリケーション部110やインターフェイス部12
0,140に対して、デバイスの抽象化(ハードウェア
の抽象化)を行なう。
The device controllers 220 and 320 also
As described above, the difference between the device classes (device types) of the corresponding devices (that is, the printer 240 for the device control unit 220 and the scanner 340 for the device control unit 320) is absorbed, and the upper-level application unit 110 And interface section 12
For 0 and 140, device abstraction (hardware abstraction) is performed.

【0169】従って、アプリケーション部110やイン
ターフェイス部120,140からは、プロキシ18
0,190およびスタブ210,310を介することに
よって、デバイスがどのような位置にあっても、間に介
在する通信路の種類を意識することなく、同様な制御環
境にて、デバイスの設定や制御や操作を行なうことがで
きる。また、デバイス制御部220,320を介するこ
とによって、デバイスクラス(デバイスの種類)の違い
を意識することなく、同様な制御環境にて、デバイスの
設定や制御や操作を行なうことができる。
Therefore, the proxy 18 is transmitted from the application unit 110 and the interface units 120 and 140.
0, 190 and the stubs 210, 310, the device can be set and controlled in a similar control environment, regardless of the position of the device, regardless of the type of communication path interposed therebetween. And operations can be performed. Further, through the device control units 220 and 320, device setting, control, and operation can be performed in a similar control environment without being aware of a difference in device class (device type).

【0170】以上のようにして、コンピュータ100の
ユーザが、マウス84を操作して、プリンタアイコン4
20に重ねられているスキャナアイコン410’をドロ
ップすると、それによって、スキャナ340からプリン
タ240へのデータの伝送が行なわれることになる。
[0170] As described above, the user of the computer 100 operates the mouse 84 to change the printer icon 4
Dropping the scanner icon 410 ′ overlaid on 20 will cause transmission of data from the scanner 340 to the printer 240.

【0171】ところで、一方、図24のステップS10
8において、判定部122が複合デバイスとして動作可
能な組合せでないと判定した場合には、次のような処理
が行なわれる。すなわち、決定部136は、そのような
判定結果を得た場合に、データ出力部132に対し、関
連付け不可のマークを表示するよう指示する(ステップ
S116)。これにより、データ出力部132は、モニ
タ170の画面上において、送り手側デバイスに対応す
るアイコンと受け手側デバイスに対応するアイコンとが
重なり合っている位置に、関連付け不可を表す所定のマ
ークを表示させ、ユーザに対し、対象となった送り手側
デバイスと受け手側デバイスとの組合せでは複合デバイ
スとして動作不可能であり、最終的に関連付けは不成立
であることを教示する。
On the other hand, step S10 in FIG.
In step 8, when the determination unit 122 determines that the combination is not a combination operable as a composite device, the following processing is performed. That is, when such a determination result is obtained, the determination unit 136 instructs the data output unit 132 to display a mark that cannot be associated (step S116). Accordingly, the data output unit 132 displays a predetermined mark indicating that association is impossible on the screen of the monitor 170 at a position where the icon corresponding to the sender device and the icon corresponding to the receiver device overlap each other. The user is instructed that the combination of the target device on the sender side and the device on the receiver side cannot operate as a composite device, and that the association is not finally established.

【0172】以上のように、本実施例によれば、コンピ
ュータ100のユーザが、コンピュータ300に接続さ
れたスキャナ340によって画像を取り込み、その取り
込んだ画像をコンピュータ200に接続されたプリンタ
240によって印刷しようとして、スキャナアイコン4
10をドラッグしプリンタアイコン420に重ね合わせ
ると、自動的に、それらスキャナ340とプリンタ24
0との組合せが複合デバイスとして動作可能である組合
せであるかどうかが判断される。従って、その判断結果
として、動作可能な組合せであると判断されたならば、
スキャナ340から画像のデータを送り出しても、プリ
ンタ240でその画像のデータを受け取って処理できる
ことが保証されたことになる。よって、その後、重ねて
いたスキャナアイコン410’をプリンタアイコン42
0にドロップして、スキャナ340からプリンタ240
への画像のデータの伝送が開始されても、それらデバイ
ス間で、問題なく有効なデータの伝送を行なうことがで
きる。
As described above, according to this embodiment, the user of the computer 100 captures an image by the scanner 340 connected to the computer 300 and prints the captured image by the printer 240 connected to the computer 200. As the scanner icon 4
When the user drags and superimposes on the printer icon 420, the scanner 340 and the printer
It is determined whether the combination with 0 is a combination operable as a composite device. Therefore, if it is determined that the combination is operable as a result of the determination,
Even if image data is sent out from the scanner 340, it is guaranteed that the printer 240 can receive and process the image data. Therefore, after that, the scanner icon 410 ′ which has been overlapped is changed to the printer icon 42.
0 and the scanner 340 to the printer 240
Even if transmission of image data to the device is started, effective data transmission can be performed between these devices without any problem.

【0173】さて、上記した例では、プリンタアイコン
420に重ねられているスキャナアイコン410’をド
ロップすると、直ちに、スキャナ340からプリンタ2
40へデータの伝送が開始されたが、次の例では、直ち
にデータ伝送を開始するのではなく、ドロップした瞬間
に、まず、モニタ170の画面上に、ユーザインターフ
ェイスを表示させるようにしている。
In the above example, when the scanner icon 410 ′ superimposed on the printer icon 420 is dropped, the scanner 340 immediately sends the printer 2
Although data transmission to 40 has started, in the following example, the user interface is displayed on the screen of the monitor 170 at the moment of dropping, instead of immediately starting data transmission.

【0174】図25は図21におけるインターフェイス
部120で実行されるユーザインターフェイス表示処理
の流れを示すフローチャートである。
FIG. 25 is a flowchart showing the flow of a user interface display process executed by the interface unit 120 in FIG.

【0175】なお、図25において、ステップS122
〜S130の処理及びステップS136の処理は、図2
4に示したステップS102〜S110の処理及びステ
ップS116の処理と同じであるので、説明は省略す
る。
In FIG. 25, step S122
Steps S136 and S136 are the same as those in FIG.
4 are the same as the processing of steps S102 to S110 and the processing of step S116, and thus description thereof is omitted.

【0176】それでは、ステップS132以降の処理に
ついて説明する。ステップS130で、決定部136が
複合デバイスの種類を決定する(すなわち、複合デバイ
スの種類として”コピー機”を決定する)と、次に、決
定部136は、UI参照テーブル128を参照して、決
定した複合デバイスの種類に対応するユーザインターフ
ェイスを決定する(ステップS132)。UI参照テー
ブル128には、動作可能とされる複合デバイスの種類
毎に、それぞれ、例えば、対応するユーザインターフェ
イスの識別番号が記述されている。従って、決定部13
6は、決定した複合デバイスの種類に基づいて、それに
対応するユーザインターフェイスの識別番号を、UI参
照テーブル128から得て、それをデータ出力部132
に伝える。
Next, the processing after step S132 will be described. In step S130, when the determination unit 136 determines the type of the composite device (that is, determines “copy machine” as the type of the composite device), the determination unit 136 refers to the UI reference table 128 next. A user interface corresponding to the determined type of composite device is determined (step S132). In the UI reference table 128, for example, for each type of operable composite device, for example, an identification number of a corresponding user interface is described. Therefore, the decision unit 13
6 obtains, from the UI reference table 128, the identification number of the user interface corresponding to the determined type of the composite device, and outputs it to the data output unit 132.
Tell

【0177】その後、図23に戻って、コンピュータ1
00のユーザが、マウス84を操作して、プリンタアイ
コン420に重ねられていたスキャナアイコン410’
を、その位置でドロップ(Drop)すると、図25に示す
ステップS134の処理が続行される。
After that, returning to FIG.
00 operates the mouse 84 to operate the scanner icon 410 ′ superimposed on the printer icon 420.
Is dropped at that position, the processing in step S134 shown in FIG. 25 is continued.

【0178】すなわち、データ出力部132は、伝えら
れたユーザインターフェイスの識別番号に基づいて、U
Iデータ格納部150から、対応するユーザインターフ
ェイスのデータ、すなわち、そのユーザインターフェイ
スをモニタ170の画面上に表示するためのデータをダ
ウンロードする。UIデータ格納部150には、動作可
能とされる複合デバイスの各種類について、それぞれ、
対応するユーザインターフェイスのデータが格納されて
いる。ここで、複合デバイスの種類に対応するユーザイ
ンターフェイスとは、その複合デバイスを操作するため
のユーザインターフェイスであって、その複合デバイス
を設定したり、制御したり、狭義に操作したりするのに
適したユーザインターフェイスである。
That is, the data output unit 132 outputs U based on the transmitted user interface identification number.
From the I data storage unit 150, the data of the corresponding user interface, that is, the data for displaying the user interface on the screen of the monitor 170 is downloaded. The UI data storage unit 150 stores, for each type of operable composite device,
The corresponding user interface data is stored. Here, the user interface corresponding to the type of the composite device is a user interface for operating the composite device, and is suitable for setting, controlling, and operating the composite device in a narrow sense. User interface.

【0179】従って、この例の場合、決定部136で決
定した複合デバイスの種類は”コピー機”であったの
で、データ出力部132は、UIデータ格納部150に
格納されているユーザインターフェイスのデータの中か
ら、コピー機を操作するためのユーザインターフェイス
のデータを選択してダウンロードする。
Therefore, in this example, since the type of the composite device determined by the determination unit 136 is “copy machine”, the data output unit 132 outputs the data of the user interface stored in the UI data storage unit 150. Of the user interface for operating the copier from among the above, and download the data.

【0180】続いて、データ出力部132は、そのダウ
ンロードしたユーザインターフェイスのデータをコンピ
ュータ100に接続されたモニタ170に出力して、モ
ニタ170の画面上に、その複合デバイスであるコピー
機を操作するためのユーザインターフェイスを表示させ
る(ステップS134)。
Subsequently, the data output unit 132 outputs the downloaded user interface data to the monitor 170 connected to the computer 100, and operates the copier as the composite device on the screen of the monitor 170. Is displayed (step S134).

【0181】以上のようにして、コンピュータ100の
ユーザが、マウス84を操作して、プリンタアイコン4
20に重ねられているスキャナアイコン410’をドロ
ップした瞬間に、モニタ170の画面上には、スキャナ
340とプリンタ240を共に操作するためのユーザイ
ンターフェイスとして、図26に示すような、複合デバ
イスであるコピー機を操作するためのユーザインターフ
ェイスが表示されることになる。
As described above, the user of the computer 100 operates the mouse 84 to change the printer icon 4
At the moment when the scanner icon 410 ′ superimposed on the printer 20 is dropped, the screen of the monitor 170 is a composite device as shown in FIG. 26 as a user interface for operating both the scanner 340 and the printer 240. A user interface for operating the copy machine is displayed.

【0182】なお、上記した例の場合は、デバイスクラ
ス「プリンタ」と「スキャナ」との組合せにより複合デ
バイスの種類が”コピー機”であったため、モニタ17
0の画面上には、図26に示すようなコピー機を操作す
るためのユーザインターフェイスが表示されたが、例え
ば、デバイスクラス「プリンタ」と「ファクシミリ」と
の組合せであれば、複合デバイスの種類は”ファクシミ
リ(受信側)”となるので、モニタ170の画面上に
は、図27に示すような受信側ファクシミリを操作する
ためのユーザインターフェイスが表示されることなる。
In the case of the above example, the type of the composite device is “copier” due to the combination of the device classes “printer” and “scanner”.
26, a user interface for operating the copier as shown in FIG. 26 is displayed. For example, if the device class is a combination of "printer" and "facsimile", the type of composite device Is "facsimile (reception side)", so that a user interface for operating the reception side facsimile as shown in FIG. 27 is displayed on the screen of the monitor 170.

【0183】以上のように、本実施例によれば、コンピ
ュータ100のユーザが、コンピュータ300に接続さ
れたスキャナ340によって画像を取り込み、その取り
込んだ画像をコンピュータ200に接続されたプリンタ
240によって印刷しようとしている場合などにおい
て、そのスキャナ340およびプリンタ240を共に操
作するためのユーザインターフェイスとして、プリンタ
とスキャナの機能を共に有したコピー機を操作するため
のユーザインターフェイスが表示されるため、ユーザ
は、スキャナ340用とプリンタ240用とで異なるユ
ーザインターフェイスを使い分ける必要がなく、統合さ
れたユーザインターフェイスでもって一度に設定などの
指示をすることができ、ユーザに対して、最適化された
操作性を提供することができる。また、ユーザは、それ
らスキャナ340およびプリンタ240を1つの複合デ
バイスであるコピー機として見なして、統一的に操作す
ることができるので、操作性をより最適化することがで
きる。
As described above, according to this embodiment, the user of the computer 100 captures an image by the scanner 340 connected to the computer 300, and prints the captured image by the printer 240 connected to the computer 200. In such a case, a user interface for operating a copier having both printer and scanner functions is displayed as a user interface for operating both the scanner 340 and the printer 240. There is no need to use different user interfaces for the 340 and the printer 240, and it is possible to give instructions such as settings at once with an integrated user interface, and to provide the user with optimized operability. thing It can be. In addition, the user can regard the scanner 340 and the printer 240 as a copier as one composite device and operate them in a unified manner, so that the operability can be further optimized.

【0184】さて、以上の説明においては、プリンタア
イコン420に重ねられているスキャナアイコン41
0’をドロップした瞬間に、モニタ170の画面上に、
ユーザインターフェイスを表示させることとして説明し
たが、以下に述べるように、複合デバイスを操作するた
めのユーザインタフェイスを表示させるのに先だって、
複合デバイスに対応するアイコンを表示させるようにし
ても良い。この場合、アイコンを表示するか否かの選択
をユーザが行えるようにするために、ドラッグ&ドロッ
プ時に特定のキーが押されているかを検出するとか、ア
イコンの作成を選べるようなメニューを表示するなどを
行うことが考えられる。
In the above description, the scanner icon 41 superimposed on the printer icon 420 has been described.
At the moment when you drop 0 ', on the screen of the monitor 170,
Although described as displaying the user interface, as described below, prior to displaying the user interface for operating the composite device,
An icon corresponding to the composite device may be displayed. In this case, in order to allow the user to select whether or not to display an icon, a menu is displayed in which it is detected whether a specific key is pressed at the time of drag and drop, or an icon can be selected. And so on.

【0185】図28は図25に示すユーザインターフェ
イス表示処理の一部を変更した場合の処理の流れを示す
フローチャートである。
FIG. 28 is a flowchart showing the flow of processing when a part of the user interface display processing shown in FIG. 25 is changed.

【0186】この変形例では、決定部136が、UI参
照テーブル128を参照して、ステップS130で決定
した複合デバイスの種類に対応するユーザインターフェ
イスを決定した後(ステップS132)、引き続いて、
決定部136は、アイコン参照テーブル130を参照し
て、ステップS130で決定した複合デバイスの種類に
対応するアイコンを決定する(ステップS140)。ア
イコン参照テーブル130には、動作可能とされる複合
デバイスの種類毎に、それぞれ、例えば、対応するアイ
コンの識別番号が記述されている。これにより、決定部
136は、決定した複合デバイスの種類に基づいて、そ
れに対応するアイコンの識別番号を、アイコン参照テー
ブル130から得て、それをデータ出力部132に伝え
る。
In this modification, the determining unit 136 determines the user interface corresponding to the type of the composite device determined in step S130 by referring to the UI reference table 128 (step S132).
The determining unit 136 refers to the icon reference table 130 and determines an icon corresponding to the type of the composite device determined in step S130 (step S140). In the icon reference table 130, for example, for each type of operable composite device, for example, the identification number of the corresponding icon is described. Thereby, the determining unit 136 obtains the identification number of the corresponding icon from the icon reference table 130 based on the determined type of the composite device, and transmits it to the data output unit 132.

【0187】その後、コンピュータ100のユーザが、
マウス84を操作して、プリンタアイコン420に重ね
られていたスキャナアイコン410’を、その位置でド
ロップすると、図28に示すステップS142以降の処
理が続行される。
Then, the user of the computer 100
By operating the mouse 84 and dropping the scanner icon 410 ′ superimposed on the printer icon 420 at that position, the processing from step S 142 shown in FIG. 28 is continued.

【0188】すなわち、データ出力部132は、決定部
136から伝えられたアイコンの識別番号に基づいて、
アイコンデータ格納部160から、対応するアイコンを
モニタ170の画面上に表示するためのデータをダウン
ロードする。アイコンデータ格納部160には、動作可
能とされる複合デバイスの各種類について、それぞれ、
その複合デバイスを視覚的に表したアイコンのデータが
格納されている。
That is, the data output unit 132 determines, based on the identification number of the icon transmitted from the determination unit 136,
Data for displaying the corresponding icon on the screen of the monitor 170 is downloaded from the icon data storage unit 160. The icon data storage unit 160 stores, for each type of operable composite device,
Icon data that visually represents the composite device is stored.

【0189】従って、前述した如く、決定部136で決
定した複合デバイスの種類が”コピー機”であったとす
ると、データ出力部132は、アイコンデータ格納部1
60に格納されているアイコンのデータの中から、コピ
ー機に対応するアイコンのデータを選択してダウンロー
ドする。
Therefore, as described above, assuming that the type of the composite device determined by the determination unit 136 is “copier”, the data output unit 132 sends the icon data storage unit 1
The icon data corresponding to the copy machine is selected and downloaded from the icon data stored in 60.

【0190】続いて、データ出力部132は、そのダウ
ンロードしたアイコンのデータをコンピュータ100に
接続されたモニタ170に出力して、モニタ170の画
面上に、その複合デバイスであるコピー機に対応するア
イコンを表示させる(ステップS142)。
Subsequently, the data output unit 132 outputs the data of the downloaded icon to the monitor 170 connected to the computer 100, and displays an icon corresponding to the copy machine which is the composite device on the screen of the monitor 170. Is displayed (step S142).

【0191】従って、コンピュータ100のユーザが、
マウス84を操作して、プリンタアイコン420に重ね
られているスキャナアイコン410’をドロップした瞬
間に、モニタ170の画面上には、図29に示すよう
に、複合デバイスであるコピー機を視覚的に表すコピー
機アイコン440が表示されることになる。これはドラ
ッグ&ドロップされた位置に表示されても良いし、複合
デバイスフォルダ等の別の場所に表示されても良い。な
お、もとのスキャナアイコン410およびプリンタアイ
コン420は、図29に示すようにモニタ170の画面
上から一時的に消滅しても良いし、そのまま画面上に表
示され続けても良い。
Thus, the user of the computer 100
At the moment when the mouse 84 is operated to drop the scanner icon 410 ′ superimposed on the printer icon 420, the copy machine as a composite device is visually displayed on the screen of the monitor 170 as shown in FIG. The displayed copy machine icon 440 will be displayed. This may be displayed at the position where it is dragged and dropped, or may be displayed at another location such as a composite device folder. Note that the original scanner icon 410 and printer icon 420 may temporarily disappear from the screen of the monitor 170 as shown in FIG. 29, or may continue to be displayed on the screen as it is.

【0192】次に、決定部136は、表示されたコピー
機アイコン440について、そのアイコンの示す複合デ
バイスが実際にはどのようなデバイスによって構成され
ているかを示す情報(即ち、その複合デバイスであるコ
ピー機は送り手側デバイスであるスキャナ340と受け
手側デバイスであるプリンタ240とで構成されている
ことを示す情報)をデバイス情報記憶部124,144
に結果蓄積情報131,149として蓄積した後、コン
ピュータ100のユーザが、マウス84を操作して、図
29に示すように、マウスカーソル430をコピー機ア
イコン440に重ね合わせて、マウス84のボタンをク
リックしたかどうかを監視する(ステップS144)。
そして、決定部136が、クリックしたことを検出した
ら、前述したステップS134の処理を実行する。な
お、ステップS134の処理については、図25におい
て既に説明しているので、その説明は省略する。
Next, for the displayed copier icon 440, the determination unit 136 determines the information indicating what kind of device the composite device indicated by the icon is actually composed of (ie, the composite device). The information indicating that the copier is composed of the scanner 340 as the sender device and the printer 240 as the receiver device) is stored in the device information storage units 124 and 144.
29, the user of the computer 100 operates the mouse 84 to place the mouse cursor 430 on the copy machine icon 440, and press the button of the mouse 84, as shown in FIG. It is monitored whether or not the button has been clicked (step S144).
Then, when the determination unit 136 detects that the click has been performed, the process of step S134 described above is executed. The processing in step S134 has already been described with reference to FIG. 25, and a description thereof will not be repeated.

【0193】従って、コンピュータ100のユーザが、
マウスカーソル430をコピー機アイコン440に重ね
合わせた状態で、マウス84のボタンをクリックした瞬
間に、ステップS144の処理によって、今度は、モニ
タ170の画面上に、図26に示したような、コピー機
を操作するためのユーザインターフェイスが表示され
る。
Thus, the user of the computer 100
With the mouse cursor 430 superimposed on the copy machine icon 440, the moment the button of the mouse 84 is clicked, the processing of step S144 causes the copy screen as shown in FIG. The user interface for operating the machine is displayed.

【0194】このように、関連付けの対象となったスキ
ャナ340およびプリンタ240の組合せに対応するア
イコンとして、複合デバイスであるコピー機に対応する
アイコンを表示することにより、コンピュータ100の
ユーザは、スキャナ340およびプリンタ240を1つ
の新たなデバイス(すなわち、コピー機)として視覚的
に認識することができ、以後の取り扱いが容易になる。
また、複合デバイスであるコピー機に対応するアイコン
を表示させているときに、ユーザからの所定の指示によ
って、その複合デバイスであるコピー機を操作するため
ユーザインターフェイスが表示されることになり、ユー
ザは、そのユーザインターフェイスを介して、直ちにそ
のコピー機の設定などの指示を入力することができる。
As described above, by displaying the icon corresponding to the copier, which is a multifunction device, as the icon corresponding to the combination of the scanner 340 and the printer 240 to be associated, the user of the computer 100 can use the scanner 340. And the printer 240 can be visually recognized as one new device (ie, a copier), which facilitates subsequent handling.
Further, when an icon corresponding to the multifunction device copier is displayed, a user interface for operating the multifunction device copier is displayed in accordance with a predetermined instruction from the user. Can immediately input an instruction such as a setting of the copier via the user interface.

【0195】では、次に、モニタ170の画面上に、複
合デバイス(例えば、コピー機)を操作するためのユー
ザインターフェイスが表示されているときに、コンピュ
ータ100のユーザが、そのユーザインターフェイスを
介して、その複合デバイスについての設定などの指示を
コンピュータ100に入力した場合、どのようにして、
その指示がコンピュータ200に接続されたプリンタ2
40やコンピュータ300に接続されたスキャナ340
に伝えられるかについて説明する。
Next, when a user interface for operating a multifunction device (for example, a copying machine) is displayed on the screen of the monitor 170, the user of the computer 100 can use the user interface via the user interface. When an instruction such as a setting for the composite device is input to the computer 100,
The instruction is sent to the printer 2 connected to the computer 200.
40 and a scanner 340 connected to the computer 300
Is explained.

【0196】コンピュータ100のユーザが、キーボー
ド(図示せず)やマウス84などを操作して、モニタ1
70の画面上に表示された上記ユーザインターフェイス
を介して、複合デバイスについての設定の指示を入力す
ると、アプリケーション部110は、プリンタ240に
関連する設定の指示については、インターフェイス部1
20に対してその指示を伝え、スキャナ340に関連す
る設定の指示については、インターフェイス部140に
対してその指示を伝える。各インターフェイス部12
0,140は、それぞれ、その指示をプロキシ180,
190からネットワークを越えて別のコンピュータ20
0,300内のスタブ210,310に伝え、スタブ2
10,310は、デバイス制御部220,320を介し
てデバイスドライバ230,330に伝える。これによ
り、デバイスドライバ230は、その指示に従って、プ
リンタ240の設定を行ない、デバイスドライバ330
は、スキャナ340の設定を行なう。
The user of the computer 100 operates a keyboard (not shown), a mouse 84 and the like to operate the monitor 1.
When the user inputs a setting instruction for the multifunction device via the user interface displayed on the screen 70, the application unit 110 issues an instruction for setting related to the printer 240 to the interface unit 1.
The instruction is transmitted to the interface unit 140, and the instruction for setting related to the scanner 340 is transmitted to the interface unit 140. Each interface unit 12
0, 140 respectively transmit the instruction to the proxy 180,
190 to another computer 20 across the network
0, 300 to stubs 210, 310 and stub 2
10 and 310 communicate to the device drivers 230 and 330 via the device control units 220 and 320. As a result, the device driver 230 sets the printer 240 according to the instruction, and the device driver 330
Sets the scanner 340.

【0197】ところで、上述したように、図24に示し
たデータ伝送開始処理ではステップS110において、
図25に示したユーザインターフェイス表示処理ではス
テップS130において、判定部122による判定結果
と決定部136による決定結果とがデバイス情報記憶部
124に結果蓄積情報131として蓄積される。すなわ
ち、上記した例の場合、対応デバイスであるプリンタ2
40に相手方のデバイスとしてスキャナ340が関連付
けられて、上記処理が行なわれたが、対応デバイスであ
るプリンタ240に別のデバイスが関連付けられれば、
そのたび毎に上記処理が行なわれて、上記判定結果と決
定結果が結果蓄積情報131として蓄積されることにな
る。従って、結果蓄積情報131には、対応デバイスで
あるプリンタ240に対し、過去に関連付けの行なわれ
た全てのデバイスについて、そのデバイスの名称と、そ
のデバイスと組み合わせた場合に複合デバイスとして動
作可能であるかどうかの判定結果と、動作可能である場
合のその複合デバイスの種類と、がそれぞれ格納されて
いることになる。
By the way, as described above, in the data transmission start processing shown in FIG.
In the user interface display process shown in FIG. 25, in step S130, the determination result by the determination unit 122 and the determination result by the determination unit 136 are stored in the device information storage unit 124 as the result storage information 131. That is, in the case of the above-described example, the printer 2 as the corresponding device is used.
The scanner 340 is associated with 40 as a partner device, and the above-described processing is performed. If another device is associated with the corresponding printer 240,
The above processing is performed each time, and the determination result and the determination result are accumulated as the result accumulation information 131. Therefore, the result accumulation information 131 indicates that all devices previously associated with the corresponding printer 240 can operate as a composite device when combined with the device name. The result of the determination as to whether the device is operable and the type of the composite device when the device is operable are stored.

【0198】よって、この結果蓄積情報131を利用す
れば、次のような処理が可能となる。即ち、対応デバイ
スであるプリンタ240と、過去に1回でも関連付けの
行なわれたデバイスについては、結果蓄積情報131に
そのデバイスに関する情報が格納されているので、図2
4に示したデータ伝送開始処理または図25に示したユ
ーザインターフェイス表示処理において、判定部122
が、関連付部134から、関連付けの行なわれた相手方
デバイスの名称が伝えられた段階で、結果蓄積情報13
1にアクセスして、その相手方デバイスに関する情報が
格納されているかどうか検索し、格納されていれば、そ
の情報を読み出すようにする。そして、その情報を見
て、その相手方デバイスとの組合せにおいては、既に、
複合デバイスとして動作可能であると判断されている場
合には、データ伝送開始処理ではステップS112ま
で、ユーザインターフェイス表示処理ではステップS1
32まで、処理をスキップし、上記の情報に基づいて以
降の処理を行なうようにする。また、動作不可能である
と判断されている場合には、データ伝送開始処理ではス
テップS116に、ユーザインターフェイス表示処理で
はステップS136にスキップして、その処理を行な
う。
Therefore, the following processing can be performed by using the accumulated information 131. That is, for a device that has been associated with the printer 240 as a corresponding device at least once in the past, since information related to the device is stored in the result accumulation information 131, FIG.
In the data transmission start process shown in FIG. 4 or the user interface display process shown in FIG.
When the name of the partner device with which the association has been made is transmitted from the association unit 134, the result accumulation information 13
1 is accessed to search whether information on the partner device is stored, and if so, the information is read. Then, looking at the information, in the combination with the partner device,
If it is determined that the device can be operated as a multifunction device, the process proceeds to step S112 in the data transmission start process and to step S1 in the user interface display process.
Up to 32, the processing is skipped, and the subsequent processing is performed based on the above information. If it is determined that the operation is not possible, the process is skipped to step S116 in the data transmission start process and to step S136 in the user interface display process, and the process is performed.

【0199】このようにすることによって、参照や判断
や決定などの処理(ステップS104〜S110または
ステップS124〜S130の処理)が省略されるの
で、処理時間を短縮化することができる。
By doing so, the processing such as reference, judgment and determination (the processing of steps S104 to S110 or steps S124 to S130) is omitted, so that the processing time can be shortened.

【0200】なお、結果蓄積情報131に、その相手方
デバイスについて、プリンタ240との関連付けの頻度
を表す関連付け頻度情報が含まれている場合には、デー
タ伝送開始処理やユーザインターフェイス表示処理の一
連の処理が終了した段階で、判定部122は、結果蓄積
情報131に再度アクセスして、その相手方デバイスに
ついての関連付け頻度情報を更新する(即ち、関連付け
の行なわれた頻度を1増やす)。
When the result accumulation information 131 includes association frequency information indicating the frequency of association with the printer 240 for the partner device, a series of processing of data transmission start processing and user interface display processing is performed. Is completed, the determination unit 122 accesses the result accumulation information 131 again and updates the association frequency information of the partner device (that is, increases the association frequency by one).

【0201】またさらに、結果蓄積情報131を利用す
れば、次のような処理も可能となる。図30は図21に
おける結果蓄積情報131を利用してモニタ170の画
面上のプリンタアイコンの近くに表示されたポップアッ
プメニューを示す説明図である。図30に示すように、
モニタ170の画面400上にプリンタアイコン420
が表示されている場合に、ユーザがマウス84を操作
し、画面400上に表示されているマウスカーソル43
0でそのプリンタアイコン420を選択し、そこでマウ
ス84の右ボタンをクリックすると、データ出力部13
2は、結果蓄積情報131を参照して、プリンタアイコ
ン420のそばにポップアップメニュー470を表示さ
せる。そのポップアップメニュー470には、対応デバ
イスであるプリンタ240が過去に関連付けられ、複合
デバイスとして動作可能な組合せであると判断されたデ
バイスの名称が羅列して表示されている。しかも、その
表示順序は、結果蓄積情報131に格納されている関連
付け頻度情報に基づいて、プリンタ240と関連付けの
行なわれた頻度の高い順となっている。
Further, if the result accumulation information 131 is used, the following processing can be performed. FIG. 30 is an explanatory diagram showing a pop-up menu displayed near a printer icon on the screen of the monitor 170 using the result accumulation information 131 in FIG. As shown in FIG.
A printer icon 420 is displayed on the screen 400 of the monitor 170.
Is displayed, the user operates the mouse 84 and the mouse cursor 43 displayed on the screen 400 is displayed.
0, the printer icon 420 is selected, and the right button of the mouse 84 is clicked there.
2 displays a pop-up menu 470 near the printer icon 420 with reference to the result accumulation information 131. In the pop-up menu 470, the names of devices that have been associated with the corresponding printer 240 in the past and have been determined to be a combination operable as a composite device are displayed in a row. In addition, the display order is based on the association frequency information stored in the result accumulation information 131, in the order of the higher frequency of association with the printer 240.

【0202】その後、ユーザが、その表示されたデバイ
スの中から、対応デバイスであるプリンタ240と今か
ら関連付けを行ないたいデバイスを、マウスカーソル4
30で選択すると、関連付部134は対応デバイスであ
るプリンタ240と選択した相手方のデバイスとの関連
付けを行う。
Thereafter, the user designates a device to be associated with the corresponding printer 240 from the displayed devices by using the mouse cursor 4.
When the selection is made at 30, the associating unit 134 associates the printer 240, which is the corresponding device, with the selected partner device.

【0203】以上のようなポップアップメニュー470
を表示させることによって、ユーザは、その対応デバイ
スであるプリンタ24と過去に複合デバイスとして動作
可能であると判断されたデバイスとしてどのようなもの
があるかを一目で把握できると共に、それらデバイスの
中で、過去に、どのようなデバイスとよく関連付けられ
ていたかを知ることができる。しかも、関連付けの行な
われた頻度の高いデバイスが上位に来るので、ユーザ
は、プリンタ240と共にもよく使用されているデバイ
スを直ちに選択することができる。
The pop-up menu 470 as described above
Is displayed, the user can grasp at a glance what kind of devices are determined to be operable as a composite device with the printer 24 as the corresponding device in the past, and among those devices, Then, in the past, what kind of device was often associated with can be known. In addition, since the device with a high association frequency is ranked higher, the user can immediately select a device that is frequently used together with the printer 240.

【0204】図31は図21における結果蓄積情報13
1を利用してモニタ170の画面上に表示された送り手
側デバイスと受け手側デバイスの組合せを示す説明図で
ある。ユーザがマウス84等によってコンピュータ10
0に、送り手側デバイスと受け手側デバイスの組合せの
表示を指示すると、所定のインターフェイス部が自己の
持つ結果蓄積情報と他のインターフェイス部の持つ結果
蓄積情報をそれぞれ参照して、コンピュータ100によ
って過去に関連付けの行なわれたデバイスについて、複
合デバイスとして動作可能であると判断された組合せを
検索し、その結果を図31に示すようにモニタ170の
画面400上に組合せ表示ウインドウ480を開いて表
示させる。
FIG. 31 shows the result accumulation information 13 shown in FIG.
FIG. 4 is an explanatory diagram showing a combination of a sender device and a receiver device displayed on the screen of a monitor 170 using No. 1; When the user uses the mouse 84 or the like to
When the display of a combination of the sender device and the receiver device is instructed to 0, the computer 100 refers to the result accumulation information owned by itself and the result accumulation information possessed by another interface unit, and the A search is made for a combination determined to be operable as a composite device with respect to the device associated with the device, and the result is displayed by opening a combination display window 480 on the screen 400 of the monitor 170 as shown in FIG. .

【0205】組合せ表示ウインドウ480には、コンピ
ュータ100によって過去に関連付けられ複合デバイス
として動作可能であると判断されたデバイスの組合せに
ついて、それぞれ、送り手側デバイスの名称と受け手側
デバイスの名称とが、その関連付けの行なわれた最新の
日時と共に表示されている。
In the combination display window 480, the name of the sender device and the name of the receiver device are respectively displayed for the combinations of the devices that have been previously associated by the computer 100 and determined to be operable as a composite device. It is displayed together with the latest date and time when the association was made.

【0206】従って、ユーザは、コンピュータ100に
よって、過去に、どのようなデバイス同士が関連付けら
れ、複合デバイスとして動作可能であると判断されたか
を一目で把握することができる。
Accordingly, the user can grasp at a glance what devices have been previously associated with each other and determined to be operable as a composite device by the computer 100.

【0207】図32は図21における結果蓄積情報13
1を利用してモニタ170の画面上のコピー機アイコン
の近くに表示されたポップアップメニューを示す説明図
である。図32に示すように、モニタ170の画面40
0上に、複合デバイスであるコピー機を視覚的に表すコ
ピー機アイコン440が表示されている場合に、ユーザ
がマウス84を操作し、画面400上に表示されている
マウスカーソル430でそのコピー機アイコン440を
選択し、そこでマウス84の右ボタンをクリックする
と、データ出力部132は、結果蓄積情報131を参照
して、コピー機アイコン440のそばにポップアップメ
ニュー490を表示させる。そのポップアップメニュー
490には、そのコピー機アイコン440の示す複合デ
バイス(即ち、コピー機)を構成するデバイスの名称が
それぞれ表示される。具体的には、その複合デバイスを
構成するデバイスとして、送り手側デバイスについては
スキャナ340の名称(例えば、スキャナC)が、受け
手側デバイスについてはプリンタ240の名称(例え
ば、プリンタA)が、それぞれ表示される。
FIG. 32 shows the result accumulation information 13 shown in FIG.
FIG. 4 is an explanatory diagram showing a pop-up menu displayed near a copy machine icon on a screen of a monitor 170 by using FIG. As shown in FIG.
When a copy machine icon 440 that visually indicates a copy machine that is a composite device is displayed on the copy machine 0, the user operates the mouse 84, and the mouse cursor 430 displayed on the screen 400 displays the copy machine. When the icon 440 is selected and the right button of the mouse 84 is clicked there, the data output unit 132 refers to the result accumulation information 131 and displays a pop-up menu 490 near the copy machine icon 440. In the pop-up menu 490, the names of the devices constituting the composite device (that is, the copier) indicated by the copier icon 440 are displayed. Specifically, as the devices constituting the composite device, the name of the scanner 340 (for example, the scanner C) for the sender device, and the name of the printer 240 (for example, the printer A) for the receiver device, respectively. Is displayed.

【0208】従って、ユーザは、複合デバイスを表すア
イコンが表示されている場合に、その複合デバイスがど
のようなデバイスによって構成されていたかを忘れてし
まったとしても、上記のポップアップメニュー490を
表示させることによって、容易に知ることができる。
[0208] Therefore, when the icon indicating the composite device is displayed, the user causes the pop-up menu 490 to be displayed even if the user forgets what kind of device the composite device was composed of. By doing so, you can easily know.

【0209】ところで、上記した例では、図23に示し
たように、マウス84の操作により、送り手側デバイス
であるスキャナ340に対応したスキャナアイコン41
0をドラッグして、受け手側デバイスであるプリンタ2
40に対応したプリンタアイコン420の上に重ね合わ
せることにより、図24に示したデータ伝送開始処理や
図25に示したユーザインターフェイス表示処理を実行
していた。しかし、このように、送り手側デバイスに対
応するアイコンをドラッグして、受け手側デバイスに対
応するアイコンの上に重ね合わせる場合だけでなく、次
のような場合にも、データ伝送開始処理やユーザインタ
ーフェイス表示処理を実行するようにしても良い。
In the above example, as shown in FIG. 23, the operation of the mouse 84 causes the scanner icon 41 corresponding to the scanner 340 as the sender device to operate.
Drag “0” to the printer 2 that is the recipient device
The data transmission start processing shown in FIG. 24 and the user interface display processing shown in FIG. 25 have been executed by superimposing the data on the printer icon 420 corresponding to 40. However, not only when the icon corresponding to the sender device is dragged and superimposed on the icon corresponding to the receiver device as described above, but also in the following cases, the data transmission start processing and the user Interface display processing may be performed.

【0210】例えば、今、送り手側デバイスとしてスキ
ャナ340の代わりに、デジタルカメラを考え、モニタ
170の画面400上に、送り手側デバイスであるデジ
タルカメラに対応するデジタルカメラアイコンと受け手
側デバイスであるプリンタアイコン420が表示されて
いるものとする。そこで、ユーザが、マウス84を操作
して、マウスカーソル430をデジタルカメラアイコン
の上に重ねて、マウス84のボタンをダブルクリックす
ると、図33に示すように、ウインドウ460が開き、
デジタルカメラに取り込まれている各々の画像ファイル
に対応した画像アイコンが列挙されて表示される。そこ
で、ユーザが、デジタルカメラに取り込まれている複数
の画像ファイルの中から、プリンタ240によって印刷
したい画像ファイルを決定し、その画像ファイルに対応
した画像アイコン450を選択してドラッグ(Drag)
し、プリンタアイコン420の上に重ね合わせると、図
24に示したデータ伝送開始処理または図25に示した
ユーザインターフェイス表示処理が実行される。
For example, a digital camera is now considered instead of the scanner 340 as the sender device, and a digital camera icon corresponding to the digital camera as the sender device and a receiver device are displayed on the screen 400 of the monitor 170. It is assumed that a certain printer icon 420 is displayed. Then, when the user operates the mouse 84 to place the mouse cursor 430 on the digital camera icon and double-clicks the button of the mouse 84, a window 460 opens as shown in FIG.
Image icons corresponding to the respective image files captured by the digital camera are listed and displayed. Therefore, the user determines an image file to be printed by the printer 240 from a plurality of image files taken into the digital camera, selects an image icon 450 corresponding to the image file, and drags (Drag)
Then, when it is overlaid on the printer icon 420, the data transmission start processing shown in FIG. 24 or the user interface display processing shown in FIG. 25 is executed.

【0211】このとき、図24のステップS102や図
25のステップS122では、インターフェイス部12
0内の関連付部134が、アプリケーション部110か
ら伝えられたマウス84の操作内容を分析して、対象と
なっている画像ファイルを取り込んでいる送り手側デバ
イスがデジタルカメラであることを把握し、インターフ
ェイス部120の対応デバイスであるプリンタ240と
関連付けを行うべき相手方のデバイスは、デジタルカメ
ラであることを認識する。従って、関連付部134は、
プリンタ240とデジタルカメラとの関連付けを行う。
At this time, in step S102 of FIG. 24 and step S122 of FIG.
The associating unit 134 in 0 analyzes the operation content of the mouse 84 transmitted from the application unit 110, and recognizes that the sender device that is capturing the target image file is a digital camera. It recognizes that the other device to be associated with the printer 240, which is the corresponding device of the interface unit 120, is a digital camera. Therefore, the association unit 134
The association between the printer 240 and the digital camera is performed.

【0212】従って、このように、送り手側デバイスに
入力されている情報に対応するアイコンをドラッグし
て、受け手側デバイスに対応するアイコンの上に重ね合
わせることにより、データ伝送開始処理またはユーザイ
ンターフェイス表示処理を実行するようにしても良い。
Therefore, by dragging the icon corresponding to the information input to the sender device and superimposing it on the icon corresponding to the receiver device, the data transmission start processing or the user interface Display processing may be executed.

【0213】また、上記した説明では、送り手側デバイ
スに対応するアイコン(または送り手側デバイスに入力
されている情報に対応するアイコン)をドラッグしてい
るが、受け手側デバイスに対応するアイコンをドラッグ
して、送り手側デバイスに対応するアイコン(または送
り手側デバイスに入力されている情報に対応するアイコ
ン)の上に重ね合わせることにより、データ伝送開始処
理またはユーザインターフェイス表示処理を実行するよ
うにしても良い。
In the above description, the icon corresponding to the sender device (or the icon corresponding to the information input to the sender device) is dragged, but the icon corresponding to the receiver device is dragged. The data transmission start processing or the user interface display processing is performed by dragging and superimposing on the icon corresponding to the sender device (or the icon corresponding to the information input to the sender device). You may do it.

【0214】また、アイコンをドラッグする方法に限ら
ず、例えば、マウス操作により、送り手側デバイスに対
応するアイコン(または送り手側デバイスに入力されて
いる情報に対応するアイコン)と受け手側デバイスに対
応するアイコンを共に選択した上で、ポップ・アップ・
メニューを表示させて、そのメニュー内に、予め載せて
あるデータ伝送開始処理やユーザインターフェイス表示
処理の実行命令を選択して、上記処理を実行させるよう
にしても良い。
In addition to the method of dragging the icon, the icon corresponding to the sender's device (or the icon corresponding to the information input to the sender's device) and the icon corresponding to the receiver's device are operated by, for example, mouse operation. After selecting the corresponding icons together,
A menu may be displayed, and the above-described processing may be executed by selecting an execution instruction of the data transmission start processing or the user interface display processing, which is put in advance in the menu.

【0215】また、図21においては、コンピュータ1
00のアプリケーション部110に対して、ユーザがコ
ンピュータ100に接続されたマウス84を操作するこ
とにより、種々の指示を与えていだが、本発明はこれに
限定されるものではなく、例えば、PDA(Personal D
igital Assistants)や携帯電話やモバイルコンピュー
タなどの情報端末機器を用いて、ネットワークを介し
て、コンピュータ100のアプリケーション部110
に、種々の指示を与えるようにしても良い。
In FIG. 21, the computer 1
The user gives various instructions to the application unit 110 of the PC 100 by operating the mouse 84 connected to the computer 100. However, the present invention is not limited to this. For example, a PDA (Personal D
digital assistants) and the application unit 110 of the computer 100 via a network using information terminal equipment such as a mobile phone and a mobile computer.
May be given various instructions.

【0216】図34は情報端末機器500を利用してコ
ンピュータ100のアプリケーション部110に指示を
与える場合の構成を示すブロック図である。図34にお
いて、図21に示した構成要素と同じ構成要素について
は、同じ符号を付してある。
FIG. 34 is a block diagram showing a configuration in which an instruction is given to the application unit 110 of the computer 100 using the information terminal device 500. 34, the same components as those shown in FIG. 21 are denoted by the same reference numerals.

【0217】図34に示すように、コンピュータ100
には、ネットワーク(図示せず)を介して、コンピュー
タ200,300の他に、さらに情報端末機器500が
接続されている。そして、コンピュータ100は、アプ
リケーション部110、インターフェイス部120,1
40及びプロキシ180,190の他に、さらに、情報
公開部195を備えている。また、情報端末機器500
は、リモートアプリケーション部510と、操作部52
0と、表示部530と、を備えている。
[0217] As shown in FIG.
Is connected to information terminals 500 in addition to the computers 200 and 300 via a network (not shown). Then, the computer 100 includes the application unit 110, the interface units 120, 1
In addition to the 40 and the proxies 180 and 190, an information disclosure unit 195 is further provided. Also, the information terminal device 500
Are a remote application unit 510 and an operation unit 52
0, and a display unit 530.

【0218】これらのうち、コンピュータ100の情報
公開部195は、例えば、Webサーバソフトウェアに
よって構築されており、情報端末機器500のリモート
アプリケーション部510は、例えば、Webブラウザ
ソフトウェアによって構築されている。
Of these, the information disclosure unit 195 of the computer 100 is constructed by, for example, Web server software, and the remote application unit 510 of the information terminal device 500 is constructed by, for example, Web browser software.

【0219】そこで、情報公開部195は、アプリケー
ション部110の持つ情報を、Webによってネットワ
ーク上に公開する。一方、リモートアプリケーション部
510は、情報端末機器500のユーザが操作部520
を操作して、例えば、コンピュータ100のURL(Un
iform Resource Locator)である"http://123.45.67.89
/resource"が入力されると、そのURLに基づいてコン
ピュータ100にアクセスし、情報公開部195が公開
している情報を取得して、表示部530に表示させる。
なお、Webサーバであるコンピュータ100とWeb
クライアントである情報端末機器500との間は、周知
の通り、Web標準プロトコルであるHTTPによって
情報のやり取りがなされる。
[0219] Therefore, the information disclosure unit 195 publishes the information held by the application unit 110 on the network via the Web. On the other hand, the remote application unit 510 allows the user of the information terminal device 500 to operate the operation unit 520.
To operate, for example, the URL (Un
iform Resource Locator) "http://123.45.67.89
When “/ resource” is input, the computer 100 accesses the computer 100 based on the URL, acquires the information disclosed by the information disclosure unit 195, and displays the information on the display unit 530.
Note that the computer 100 which is a Web server and the Web server
As is well known, information is exchanged with the information terminal device 500, which is a client, by using HTTP, which is a Web standard protocol.

【0220】図35は図34に示す情報端末機器500
の外観と表示部530に表示された画面の一例を示す説
明図である。図35に示すように、情報端末機器500
の表示部530には、コンピュータ100の情報公開部
195によって公開された情報がいわゆるホームページ
の形で表示されている。
FIG. 35 shows the information terminal device 500 shown in FIG.
FIG. 7 is an explanatory diagram showing an example of the appearance of the image and a screen displayed on a display unit 530. As shown in FIG. 35, the information terminal device 500
The information disclosed by the information disclosure unit 195 of the computer 100 is displayed on a display unit 530 in the form of a so-called homepage.

【0221】そこで、情報端末機器500のユーザが、
操作部520を操作して、例えば、第1表示領域532
に表示されている「送り手側デバイス(Source Devic
e)」及び「受け手側デバイス(Destination Devic
e)」の項目のうち、何れか一方を選択して、サーチボ
タン534を押すと、選択したデバイスの候補が第2の
表示領域536に表示される。
Therefore, the user of the information terminal device 500
By operating the operation unit 520, for example, the first display area 532 is displayed.
"Source Device (Source Devic
e) ”and“ Destination Device ”
When any one of the items in “e)” is selected and the search button 534 is pressed, the selected device candidate is displayed in the second display area 536.

【0222】また、情報端末機器500のユーザが、操
作部520を操作して、例えば、送り手側デバイスと受
け手側デバイス各々について、表示された候補の中か
ら、所望のデバイスとして例えば「スキャナ1(Scanne
r 1)」と「プリンタ1(Printer 1)」をそれぞれ選択
すると、図35に示すように、第2表示領域536に、
その選択結果が表示される。さらに、ユーザが実行ボタ
ン536を押すと、リモートアプリケーション部510
は、ネットワーク、情報公開部195を介して、アプリ
ケーション部110に対して、スキャナ1からプリンタ
1へのデータの伝送開始を指示する。アプリケーション
部110は、この指示をさらにインターフェイス部12
0に伝え、これにより、インターフェイス部120は、
例えば、前述の図24に示したデータ伝送開始処理を開
始する。
Further, the user of the information terminal device 500 operates the operation unit 520 to select, for example, “scanner 1” as a desired device from the displayed candidates for each of the sender device and the receiver device. (Scanne
r 1) ”and“ Printer 1 ”are selected, as shown in FIG. 35, the second display area 536 is displayed.
The result of the selection is displayed. Further, when the user presses the execution button 536, the remote application unit 510
Instructs the application unit 110 via the network and the information disclosure unit 195 to start transmitting data from the scanner 1 to the printer 1. The application unit 110 further transmits this instruction to the interface unit 12.
0, whereby the interface unit 120
For example, the data transmission start processing shown in FIG. 24 is started.

【0223】以上のようにして、情報端末機器からネッ
トワークを介してアプリケーション部に指示を与えるこ
とが可能となるので、リソースの乏しい情報端末機器か
らネットワーク上の種々のデバイスを制御することが可
能となる。
As described above, it is possible to give an instruction from the information terminal device to the application unit via the network, so that it is possible to control various devices on the network from the information terminal device with scarce resources. Become.

【0224】また、図21においては、プリンタ240
やスキャナ340等のデバイスに関連した情報、すなわ
ち、対応デバイスクラスの情報125,145と、複合
動作可能デバイスクラスの情報126,146と、複合
デバイスカテゴリの情報127,147と、結果蓄積情
報131,149などは、インターフェイス部120,
140内のデバイス情報記憶部124,144に記憶さ
れていたが、これらプリンタ240やスキャナ340等
のデバイスに関する情報は、各デバイスに対応するデバ
イス制御部220,320にも格納されている(但し、
結果蓄積情報131,149については格納させる必要
がある)ので、これらプリンタ240やスキャナ340
等のデバイスに関する情報を、インターフェイス部12
0,140内に組み込む代わりに、必要なとき、ネット
ワークを介してこれらデバイス制御部220,320に
アクセスして、取得するようにしても良い。また、これ
らプリンタ240やスキャナ340等のデバイスに関す
る情報を、コンピュータ100〜300以外のネットワ
ーク上に存在する別のコンピュータ(例えば、サーバな
ど)に格納して、必要な時に、ネットワークを介してそ
のコンピュータにアクセスして、取得するようにしても
良い。
In FIG. 21, the printer 240
Related to devices such as the scanner and the scanner 340, that is, information 125 and 145 of the corresponding device class, information 126 and 146 of the multifunction device class that can be operated, information 127 and 147 of the multifunction device category, and result accumulation information 131 and 149 etc. are the interface unit 120,
Although the information about the devices such as the printer 240 and the scanner 340 is stored in the device information storage units 124 and 144 in the device 140, the information is also stored in the device control units 220 and 320 corresponding to each device.
It is necessary to store the result accumulation information 131 and 149).
Information about the device such as the
Instead of being incorporated in the device control units 0 and 140, the device control units 220 and 320 may be accessed and acquired via a network when necessary. Further, information about the devices such as the printer 240 and the scanner 340 is stored in another computer (for example, a server) existing on the network other than the computers 100 to 300, and when necessary, the computer is connected via the network. May be accessed and acquired.

【0225】また、図21においては、ユーザインター
フェイスのデータやアイコンのデータは、インターフェ
イス部120とは、別のUIデータ格納部150やアイ
コンデータ格納部160に格納されており、モニタ17
0の画面上に表示する時点で、これらからダウンロード
していた。しかし、本発明はこれに限定されるものでは
なく、例えば、ユーザインターフェイスのデータやアイ
コンのデータを、COMオブジェクトとして構成される
インターフェイス部120内に、初めから組み込むよう
にしておいても良い。また、ユーザインターフェイスの
データやアイコンのデータを、コンピュータ200や3
00に格納するようにしても良いし、コンピュータ10
0〜300以外のネットワーク上に存在する別のコンピ
ュータ(例えば、サーバなど)に格納するようにしても
良い。
In FIG. 21, user interface data and icon data are stored in a UI data storage unit 150 and an icon data storage unit 160 which are separate from the interface unit 120.
At the time of display on the screen of No. 0, it was downloaded from these. However, the present invention is not limited to this. For example, user interface data or icon data may be incorporated into the interface unit 120 configured as a COM object from the beginning. Further, data of the user interface and data of the icons are transferred to the computer 200 or 3.
00 or the computer 10
It may be stored in another computer (for example, a server) existing on a network other than 0 to 300.

【0226】さらに、図21に示すデバイス制御システ
ムは図2(c)に示した接続形態であって、プリンタ2
40やスキャナ340などのデバイスは、アプリケーシ
ョン部110やインターフェイス部120,140の存
在するコンピュータ100とは、別のコンピュータ20
0,コンピュータ300に接続されていたが、図2
(b)に示した接続形態として、プリンタ240やスキ
ャナ340などのデバイスは、アプリケーション部11
0等の存在するコンピュータ100に接続するようにし
ても良い。この場合は、スタブ、デバイス制御部および
デバイスドライバの各構成要素も、アプリケーション部
110等の存在するコンピュータ100内に生成される
ことになる。また、図21においては、プリンタ240
やスキャナ340などのデバイスは、コンピュータ20
0や300の外部に接続されているように描いてある
が、図3に示したように、デバイスとコンピュータとが
一体的に構成されていても構わない。
The device control system shown in FIG. 21 has the connection form shown in FIG.
Devices such as the scanner 40 and the scanner 340 are different from the computer 100 in which the application unit 110 and the interface units 120 and 140 exist.
0, connected to the computer 300,
In the connection form shown in FIG. 2B, devices such as the printer 240 and the scanner 340 are connected to the application unit 11.
Alternatively, it may be connected to the computer 100 where 0 or the like exists. In this case, the respective components of the stub, the device control unit, and the device driver are also generated in the computer 100 where the application unit 110 and the like exist. In FIG. 21, the printer 240
Devices such as the scanner 20 and the scanner 340 are connected to the computer 20.
Although it is depicted as being connected to the outside of 0 or 300, the device and the computer may be integrally configured as shown in FIG.

【0227】なお、本発明は上記した実施例や実施形態
に限られるものではなく、その要旨を逸脱しない範囲に
おいて種々の態様にて実施することが可能である。
The present invention is not limited to the examples and embodiments described above, but can be implemented in various modes without departing from the scope of the invention.

【0228】上記した実施例においては、図21に示し
たように、対応デバイスクラスの情報125,145や
複合動作可能デバイスクラスの情報126,146な
ど、対象となるデバイスの属性情報として、デバイスの
種類に関する情報を参照して、対象となるデバイスが複
合デバイスとして動作可能な組合せであるか否かを判定
していた(図24のステップS108または図25のス
テップS128)。しかし、上述したように、参照され
る属性情報としては、デバイスの種類の他にも、送り手
側デバイス系/受け手側デバイス系、Push型/Pull型
(データ伝送の主体がSource側か,Destination側
か)、取り扱い可能なデータ形式、デバイスの状態(動
作可能か?等)や性能(処理速度等)や存在場所(セク
ション,フロアー等)や処理コスト(通信コストや印刷
コスト)、特別なデータ伝送方式のサポートの有無な
ど、種々の情報を用いることができる。
In the above-described embodiment, as shown in FIG. 21, the attribute information of the target device, such as the corresponding device class information 125 and 145 and the multifunction device class information 126 and 146, is used as the attribute information of the device. With reference to the information on the type, it has been determined whether or not the target device is a combination that can operate as a composite device (step S108 in FIG. 24 or step S128 in FIG. 25). However, as described above, as attribute information to be referred to, in addition to the type of device, a sender-side device system / a receiver-side device system, a Push type / Pull type (whether the subject of data transmission is the Source side or Destination Side), data formats that can be handled, device status (operable?), Performance (processing speed, etc.), location (section, floor, etc.), processing cost (communication cost, printing cost), special data Various kinds of information such as whether or not the transmission method is supported can be used.

【0229】また、対象となるデバイスが複合デバイス
として動作可能な組合せであるか否かを判定した後に、
複合デバイスとして動作可能な組合せであると判定され
た対象デバイスについて、そのデバイスの組合せがどの
程度有効であるかを、上記の属性情報に基づいて総合的
に評価して、その有効性の度合いを表す評価値を得るよ
うにしても良い。例えば、上記属性情報の各々に予め重
み付けた点数を与えておき、対象となるデバイスの組合
せについて、その合計点を算出することによって、て評
価値を得るようにする。
After determining whether or not the target device is a combination operable as a composite device,
For a target device determined to be a combination operable as a composite device, the extent to which the combination of devices is effective is comprehensively evaluated based on the above attribute information, and the degree of effectiveness is determined. An evaluation value may be obtained. For example, a weighted score is given to each of the attribute information in advance, and an evaluation value is obtained by calculating a total score of a combination of target devices.

【0230】また、このような評価値を得た場合、モニ
タ170の画面400上に表示されている、対象となる
デバイスのアイコンの近くに、その評価値自体を表示す
るようにしても良い。
When such an evaluation value is obtained, the evaluation value itself may be displayed near the icon of the target device displayed on the screen 400 of the monitor 170.

【0231】また、或る対応デバイスに対して、相手方
となるデバイスを複数選択することにより、対象となる
デバイスの組合せを複数組作った場合は、その組合せ毎
にそれぞれ評価値を得て、その評価値の高い順に、相手
方となるデバイスをリストアップして表示するようにし
ても良い。
When a plurality of combinations of target devices are made by selecting a plurality of partner devices with respect to a certain corresponding device, an evaluation value is obtained for each combination, and an evaluation value is obtained for each combination. The partner devices may be listed and displayed in descending order of the evaluation value.

【0232】図36は図21におけるインターフェイス
部120で実行される他のユーザインターフェイス表示
処理の流れを示すフローチャートである。
FIG. 36 is a flowchart showing the flow of another user interface display process executed by the interface unit 120 in FIG.

【0233】図36に示すように、決定部136は、判
定部122が対象となるデバイスについて、複合デバイ
スとして動作可能な組合せであると判定した場合に(ス
テップS148)、複合デバイスの種類を決定した後
(ステップS150)、デバイス情報記憶部124や1
44に記憶されている属性情報を参照して、対象となる
デバイスの組合せについて、組合せの有効性の度合いを
表す評価値を算出する(ステップS152)。そして、
データ出力部132は、算出された評価値に基づいて、
上述したような表示をモニタ170の画面上に行なう
(ステップS154)。
As shown in FIG. 36, when the determination unit 122 determines that the target device is a combination that can operate as a composite device (step S148), the determination unit 136 determines the type of the composite device. After that (step S150), the device information storage units 124 and 1
With reference to the attribute information stored in 44, an evaluation value representing the degree of effectiveness of the combination is calculated for the target device combination (step S152). And
The data output unit 132, based on the calculated evaluation value,
The display as described above is performed on the screen of the monitor 170 (step S154).

【0234】上記した実施例においては、制御対象とな
るデバイスは2つまたは3つであったが、本発明はこれ
に限定されるものではなく、4つ以上のデバイスを制御
対象としても良い。
In the above embodiment, the number of devices to be controlled is two or three. However, the present invention is not limited to this, and four or more devices may be controlled.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施例としてのデバイス制御システ
ムの構成を示すブロック図である。
FIG. 1 is a block diagram showing a configuration of a device control system as one embodiment of the present invention.

【図2】図1のデバイス制御システムについての接続形
態の代表例を示すブロック図である。
FIG. 2 is a block diagram showing a representative example of a connection mode for the device control system of FIG.

【図3】図1のデバイス制御システムについての接続形
態の代表例を示すブロック図である。
FIG. 3 is a block diagram showing a typical example of a connection mode for the device control system of FIG. 1;

【図4】図1のデバイス制御システムにおける別のデー
タ伝送の方法を説明するためのブロック図である。
FIG. 4 is a block diagram for explaining another data transmission method in the device control system of FIG. 1;

【図5】図1のデバイス制御システムにおける別のデー
タ伝送の方法を説明するためのブロック図である。
FIG. 5 is a block diagram for explaining another data transmission method in the device control system of FIG. 1;

【図6】図1のデバイス制御システムをCOMの技術を
用いて実現した場合の具体例を示すブロック図である。
FIG. 6 is a block diagram showing a specific example in a case where the device control system of FIG. 1 is realized using the technology of COM.

【図7】画面上に表示されたスキャナ及びプリンタのア
イコンを操作している様子を示す説明図である。
FIG. 7 is an explanatory diagram showing a state in which icons of a scanner and a printer displayed on a screen are being operated.

【図8】図6のデバイス制御システムにおいて、データ
伝送を行なう場合の手順を示す説明図である。
FIG. 8 is an explanatory diagram showing a procedure for performing data transmission in the device control system of FIG. 6;

【図9】図6のデバイス制御システムにおいて、データ
伝送を行なう場合の手順を示す説明図である。
FIG. 9 is an explanatory diagram showing a procedure for performing data transmission in the device control system of FIG. 6;

【図10】図6のデバイス制御システムにおいて、デー
タ伝送を行なう場合の手順を示す説明図である。
FIG. 10 is an explanatory diagram showing a procedure for performing data transmission in the device control system of FIG. 6;

【図11】図6のデバイス制御システムにおいて、デー
タ伝送を行なう場合の手順を示す説明図である。
FIG. 11 is an explanatory diagram showing a procedure for performing data transmission in the device control system of FIG. 6;

【図12】図6のデバイス制御システムにおいて、デー
タ伝送を行なう場合の手順を示す説明図である。
FIG. 12 is an explanatory diagram showing a procedure for performing data transmission in the device control system of FIG. 6;

【図13】図5に示したデータ伝送の方法をCOMの技
術を用いて実現した場合の具体例を示すブロック図であ
る。
FIG. 13 is a block diagram showing a specific example when the data transmission method shown in FIG. 5 is realized by using the COM technique.

【図14】図13のデバイス制御部30a,30b間で
直接のデータ伝送を行なう場合の手順を示す説明図であ
る。
FIG. 14 is an explanatory diagram showing a procedure when direct data transmission is performed between the device control units 30a and 30b in FIG. 13;

【図15】図13のデバイス制御部30a,30b間で
直接のデータ伝送を行なう場合の手順を示す説明図であ
る。
FIG. 15 is an explanatory diagram showing a procedure when direct data transmission is performed between the device control units 30a and 30b in FIG. 13;

【図16】図13のデバイス制御部30a,30b間で
直接のデータ伝送を行なう場合の手順を示す説明図であ
る。
FIG. 16 is an explanatory diagram showing a procedure for performing direct data transmission between the device control units 30a and 30b in FIG. 13;

【図17】図13のデバイス制御部30a,30b間で
直接のデータ伝送を行なう場合の手順を示す説明図であ
る。
FIG. 17 is an explanatory diagram showing a procedure when direct data transmission is performed between the device control units 30a and 30b in FIG. 13;

【図18】図1に示すデバイス制御システムによって仮
想的なコピー機を実現した場合に画面上に表示されるユ
ーザインターフェイスの一例を示す説明図である。
18 is an explanatory diagram showing an example of a user interface displayed on a screen when a virtual copier is realized by the device control system shown in FIG. 1;

【図19】図1に示すデバイス制御システムによって仮
想的なコピー機を実現した場合のデータの流れを示す説
明図である。
FIG. 19 is an explanatory diagram showing a data flow when a virtual copier is realized by the device control system shown in FIG. 1;

【図20】画面上に表示されるデバイス選択ツリーの一
例を示す説明図である。
FIG. 20 is an explanatory diagram illustrating an example of a device selection tree displayed on a screen.

【図21】図2(c)の接続形態にて接続した場合のデ
バイス制御システムを示すブロック図である。
FIG. 21 is a block diagram showing a device control system when connected in the connection form of FIG. 2 (c).

【図22】図21に示すコンピュータ100のハードウ
ェア構成の概要を示すブロック図である。
FIG. 22 is a block diagram showing an outline of a hardware configuration of a computer 100 shown in FIG. 21.

【図23】図21におけるモニタ170の画面上に表示
されたスキャナアイコンおよびプリンタアイコンを示す
説明図である。
23 is an explanatory diagram showing a scanner icon and a printer icon displayed on the screen of the monitor 170 in FIG. 21.

【図24】図21におけるインターフェイス部120で
実行されるデータ伝送開始処理の流れを示すフローチャ
ートである。
24 is a flowchart showing a flow of a data transmission start process executed by the interface unit 120 in FIG. 21.

【図25】図21におけるインターフェイス部120で
実行されるユーザインターフェイス表示処理の流れを示
すフローチャートである。
FIG. 25 is a flowchart showing a flow of a user interface display process executed by the interface unit 120 in FIG. 21.

【図26】図1におけるモニタ170の画面上に表示さ
れた、複合デバイスであるコピー機を操作するためのユ
ーザインターフェイスを示す説明図である。
26 is an explanatory diagram showing a user interface for operating a copier, which is a multifunction device, displayed on the screen of the monitor 170 in FIG. 1. FIG.

【図27】図1におけるモニタ170の画面上に表示さ
れた、複合デバイスである受信側ファクシミリを操作す
るためのユーザインターフェイスを示す説明図である。
FIG. 27 is an explanatory diagram showing a user interface displayed on the screen of the monitor 170 in FIG. 1 for operating a receiving-side facsimile which is a composite device.

【図28】図25に示すユーザインターフェイス表示処
理の一部を変更した場合の処理の流れを示すフローチャ
ートである。
FIG. 28 is a flowchart showing a processing flow when a part of the user interface display processing shown in FIG. 25 is changed.

【図29】図21におけるモニタ170の画面上に表示
されたコピー機アイコンを示す説明図である。
FIG. 29 is an explanatory diagram showing a copy machine icon displayed on the screen of the monitor 170 in FIG. 21.

【図30】図21における結果蓄積情報131を利用し
てモニタ170の画面上のプリンタアイコンの近くに表
示されたポップアップメニューを示す説明図である。
FIG. 30 is an explanatory diagram showing a pop-up menu displayed near a printer icon on the screen of the monitor 170 using the result accumulation information 131 in FIG. 21;

【図31】図21における結果蓄積情報131を利用し
てモニタ170の画面上に表示された送り手側デバイス
と受け手側デバイスの組合せを示す説明図である。
31 is an explanatory diagram showing a combination of a sender device and a receiver device displayed on the screen of a monitor 170 using the result accumulation information 131 in FIG. 21.

【図32】図21における結果蓄積情報131を利用し
てモニタ170の画面上のコピー機アイコンの近くに表
示されたポップアップメニューを示す説明図である。
32 is an explanatory diagram showing a pop-up menu displayed near a copy machine icon on the screen of the monitor 170 using the result accumulation information 131 in FIG. 21.

【図33】図21におけるモニタ170の画面上に表示
された画像アイコンおよびプリンタアイコンを示す説明
図である。
FIG. 33 is an explanatory diagram showing image icons and printer icons displayed on the screen of the monitor 170 in FIG. 21.

【図34】情報端末機器500を利用してコンピュータ
100のアプリケーション部110に指示を与える場合
の構成を示すブロック図である。
FIG. 34 is a block diagram showing a configuration in a case where an instruction is given to an application unit 110 of the computer 100 using the information terminal device 500.

【図35】図34に示す情報端末機器500の外観と表
示部530に表示された画面の一例を示す説明図であ
る。
35 is an explanatory diagram illustrating an example of an appearance of the information terminal device 500 illustrated in FIG. 34 and a screen displayed on the display unit 530.

【図36】図21におけるインターフェイス部120で
実行される他のユーザインターフェイス表示処理の流れ
を示すフローチャートである。
FIG. 36 is a flowchart showing the flow of another user interface display process executed by the interface unit 120 in FIG. 21.

【符号の説明】[Explanation of symbols]

20…アプリケーション部 22a,22b…インターフェイス部 24a,24b…通信路抽象化部 26a,26b…通信路 28a,28b…デバイス抽象化部 30a,30b…デバイス制御部 32a,32b…デバイス・ドライバ 34a,34b…デバイス 36…通信路抽象化部 38…通信路 40…コンピュータ 42,44…コンピュータ 46…ネットワーク 48,50,52…コンピュータ 54…ネットワーク 60a,60b,60c…デバイス抽象化部 62,64…通信路抽象化部 I1,I6…アイ・サイバー・プラグ I2,I7…アイ・コンテキスト・メニュー I3,I8…アイ・ドロップ・ソース I4,I9…アイ・ドロップ・ターゲット I5,I10…アイ・サイバー・イベント I11,I13…アイ・サイバー・プロトコル I12,I14…アイ・サイバー・イベント M1,M2…ステイタス・モニタ N1…イベント・ハンドラー P1〜P5…プロキシ S1〜S5…スタブ 70…CPU 72…メモリ 74…I/O部 76…ハードディスク装置 78…通信装置 80…CD−ROMドライブ装置 82…CD−ROM 84…マウス 100…コンピュータ 110…アプリケーション部 120…インターフェイス部 122…判定部 124…デバイス情報記憶部 125…対応デバイスクラスの情報 126…複合動作可能デバイスクラスの情報 127…複合デバイスカテゴリの情報 128…UI参照テーブル 130…アイコン参照テーブル 132…データ出力部 134…関連付部 136…決定部 140…インターフェイス部 144…デバイス情報記憶部 145…対応デバイスクラスの情報 146…複合動作可能デバイスクラスの情報 147…複合デバイスカテゴリの情報 150…UIデータ格納部 160…アイコンデータ格納部 170…モニタ 180,190…プロキシ 200…コンピュータ 210…スタブ 220…デバイス制御部 230…デバイスドライバ 240…プリンタ 300…コンピュータ 310…スタブ 320…デバイス制御部 330…デバイスドライバ 340…スキャナ 400…画面 410…スキャナアイコン 420…プリンタアイコン 430…マウスカーソル 440…コピー機アイコン 450…画像アイコン 460…ウインドウ Reference numeral 20: application unit 22a, 22b: interface unit 24a, 24b: communication path abstraction unit 26a, 26b: communication path 28a, 28b: device abstraction unit 30a, 30b: device control unit 32a, 32b: device driver 34a, 34b ... Device 36 ... Communication path abstraction unit 38 ... Communication path 40 ... Computer 42,44 ... Computer 46 ... Network 48,50,52 ... Computer 54 ... Network 60a, 60b, 60c ... Device abstraction unit 62,64 ... Communication path Abstraction unit I1, I6 ... Eye cyber plug I2, I7 ... Eye context menu I3, I8 ... Eye drop source I4, I9 ... Eye drop target I5, I10 ... Eye cyber event I11 I13 ... I Cyber Protocols I12, I14 Eye Cyber Event M1, M2 Status Monitor N1 Event Handler P1 to P5 Proxy S1 to S5 Stub 70 CPU 72 Memory 74 I / O Unit 76 Hard Disk Device 78 Communication device 80 CD-ROM drive device 82 CD-ROM 84 Mouse 100 Computer 110 Application unit 120 Interface unit 122 Judgment unit 124 Device information storage unit 125 Information on compatible device classes 126 Multifunction operation possible Device class information 127 ... Multiple device category information 128 ... UI reference table 130 ... icon reference table 132 ... data output unit 134 ... association unit 136 ... determination unit 140 ... interface unit 144 ... device information record Storage unit 145 ... corresponding device class information 146 ... multifunction device class information 147 ... multifunction device category information 150 ... UI data storage unit 160 ... icon data storage unit 170 ... monitor 180,190 ... proxy 200 ... computer 210 ... Stub 220 Device control unit 230 Device driver 240 Printer 300 Computer 310 Stub 320 Device control unit 330 Device driver 340 Scanner 400 Screen 410 Scanner icon 420 Printer icon 430 Mouse cursor 440 Copy machine Icon 450 ... image icon 460 ... window

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】 1つ以上のデバイスを制御するためのデ
バイス制御システムであって、 前記デバイスにそれぞれ対応し、対応するデバイスとの
間でデータまたは情報のやり取りを行なう1つ以上のデ
バイス抽象化部と、 前記デバイス抽象化部にそれぞれ対応し、対応するデバ
イス抽象化部と通信路を介して接続され、対応する前記
デバイス抽象化部と、所定のアプリケーションプログラ
ムによって構築されるアプリケーション部と、の間でデ
ータまたは情報のやり取りを仲介する1つ以上のインタ
ーフェイス部と、 相互に対応する前記デバイス抽象化部とインターフェイ
ス部との間にそれぞれ設けられる1つ以上の通信路抽象
化部と、 を備え、 前記デバイス抽象化部は、対応する前記デバイスについ
てデバイスの種類に起因した制御上の相違を吸収して、
前記アプリケーション部に対しデバイスの種類に依存し
ない同一の制御環境を前記インターフェイス部を介して
提供し、 前記通信路抽象化部は、前記デバイス抽象化部とインタ
ーフェイス部との間を接続する通信路について、通信路
の種類に起因した制御上の相違を吸収して、前記アプリ
ケーション部に対して、通信路の種類に依存しない同一
の制御環境を前記インターフェイス部を介して提供する
ことを特徴とするデバイス制御システム。
1. A device control system for controlling one or more devices, each device corresponding to the device and exchanging data or information with the corresponding device. And a unit corresponding to the device abstraction unit, connected to the corresponding device abstraction unit via a communication path, and corresponding to the device abstraction unit and an application unit configured by a predetermined application program. At least one interface unit that mediates exchange of data or information between the devices, and at least one communication path abstraction unit provided between the corresponding device abstraction unit and the interface unit. The device abstraction unit controls a corresponding control device based on a device type. To absorb,
The same control environment that does not depend on the type of device is provided to the application unit via the interface unit, and the communication path abstraction unit provides a communication path connecting the device abstraction unit and the interface unit. Absorbing the control difference caused by the type of the communication path, and providing the same control environment independent of the type of the communication path to the application unit through the interface unit. Control system.
【請求項2】 請求項1に記載のデバイス制御システム
において、 前記デバイスが複数存在し、それらデバイスに対応する
前記デバイス抽象化部が複数存在する場合に、 前記デバイス抽象化部は、対応するインターフェイス部
を介した前記アプリケーション部からの指示に従って、
対応する前記インターフェイス部との接続を解除すると
共に、他の所定のデバイス抽象化部との間で通信路を介
して接続を確立し、データまたは情報のやり取りを行な
うことを特徴とするデバイス制御システム。
2. The device control system according to claim 1, wherein when there are a plurality of the devices and a plurality of the device abstraction units corresponding to the devices, the device abstraction unit includes a corresponding interface. According to instructions from the application unit via the unit,
A device control system for releasing a connection with the corresponding interface unit, establishing a connection with another predetermined device abstraction unit via a communication path, and exchanging data or information. .
【請求項3】 請求項2に記載のデバイス制御システム
において、 2つの前記デバイス抽象化部の間を接続する前記通信路
について、通信路の種類に起因した制御上の相違を吸収
して、2つの前記デバイス抽象化部に対して、通信路の
種類に依存しない同一の制御環境を提供する特定通信路
抽象化部を設けたことを特徴とするデバイス制御システ
ム。
3. The device control system according to claim 2, wherein the communication path connecting between the two device abstraction units absorbs a control difference caused by a type of the communication path. A device control system, characterized in that a specific communication path abstraction unit that provides the same control environment independent of the type of communication path is provided for one of the device abstraction units.
【請求項4】 請求項1に記載のデバイス制御システム
において、 前記デバイスに対応したシンボルを画面上に表示する表
示手段と、 表示された前記シンボルを操作するための操作手段と、 をさらに備え、 前記アプリケーション部またはインターフェイス部は、
前記操作手段による前記シンボルへの操作内容に従っ
て、前記シンボルに対応するデバイスを制御することを
特徴とするデバイス制御システム。
4. The device control system according to claim 1, further comprising: display means for displaying a symbol corresponding to the device on a screen; and operation means for operating the displayed symbol. The application unit or the interface unit includes:
A device control system, wherein a device corresponding to the symbol is controlled in accordance with an operation performed on the symbol by the operation means.
【請求項5】 請求項1に記載のデバイス制御システム
において、 前記デバイスが複数存在し、それらデバイスに対応する
前記デバイス抽象化部及びインターフェイス部がそれぞ
れ複数存在する場合に、 各インターフェイス部は、それぞれ、前記アプリケーシ
ョン部に対して同一のインターフェイスを提供すると共
に、 各デバイス抽象化部は、それぞれ、前記インターフェイ
ス部に対して同一のインターフェイスを提供することを
特徴とするデバイス制御システム。
5. The device control system according to claim 1, wherein when there are a plurality of the devices and a plurality of the device abstraction units and the plurality of interface units corresponding to the devices, respectively, A device control system, wherein the same interface is provided to the application unit, and each device abstraction unit provides the same interface to the interface unit.
【請求項6】 請求項1に記載のデバイス制御システム
において、 前記インターフェイス部は、該インターフェイス部に対
応するデバイスと他のデバイスとの間でデータ伝送を行
なうよう前記アプリケーション部から指示された場合
に、前記他のデバイスに対応するインターフェイス部と
の間で情報のやり取りを行ない、その情報に基づいて、
対応する前記デバイスと前記他のデバイスとの間でデー
タの伝送が可能であるかどうかを判断することを特徴と
するデバイス制御システム。
6. The device control system according to claim 1, wherein the interface unit receives an instruction from the application unit to perform data transmission between a device corresponding to the interface unit and another device. Exchange information with the interface unit corresponding to the other device, based on the information,
A device control system for determining whether data transmission is possible between the corresponding device and the other device.
【請求項7】 1つ以上のデバイスを制御するためのデ
バイス制御方法であって、 (a)前記デバイスにそれぞれ対応し、対応するデバイ
スとの間でデータまたは情報のやり取りを行なうと共
に、対応する前記デバイスについてデバイスの種類に起
因した制御上の相違を吸収して、所定のアプリケーショ
ンプログラムによって構築されるアプリケーション部に
対し、デバイスの種類に依存しない同一の制御環境を提
供する1つ以上のデバイス抽象化部を生成する工程と、 (b)前記デバイス抽象化部にそれぞれ対応し、対応す
るデバイス抽象化部と通信路を介して接続され、対応す
る前記デバイス抽象化部と前記アプリケーション部との
間でデータまたは情報のやり取りを仲介する1つ以上の
インターフェイス部を生成する工程と、 (c)前記インターフェイス部にそれぞれ対応し、対応
するインターフェイス部と該インターフェイス部に対応
する前記デバイス抽象化部との間を接続する前記通信路
について、通信路の種類に起因した制御上の相違を吸収
して、前記アプリケーション部に対して、通信路の種類
に依存しない同一の制御環境を提供する1つ以上の通信
路抽象化部を生成する工程と、 (d)前記アプリケーション部により、前記インターフ
ェイス部,通信路抽象化部及びデバイス抽象化部を介し
て、前記デバイスを制御する工程と、を備えるデバイス
制御方法。
7. A device control method for controlling one or more devices, comprising: (a) exchanging data or information with each of the devices, and exchanging data or information with the corresponding devices; One or more device abstractions that absorb control differences caused by the device type of the device and provide the same control environment independent of the device type to an application unit constructed by a predetermined application program And (b) respectively corresponding to the device abstraction unit, connected to the corresponding device abstraction unit via a communication path, and connected between the corresponding device abstraction unit and the application unit. Generating one or more interface units that mediate the exchange of data or information at (c) The communication paths respectively corresponding to the interface sections and connecting between the corresponding interface section and the device abstraction section corresponding to the interface section, by absorbing a control difference caused by a type of the communication path. Generating one or more communication path abstraction sections that provide the same control environment independent of the type of communication path to the application section; and (d) the interface section and the communication section by the application section. Controlling the device via a road abstraction unit and a device abstraction unit.
【請求項8】 1つ以上のデバイスを制御するデバイス
制御システムを構築するためのコンピュータプログラム
を記録したコンピュータ読み取り可能な記録媒体であっ
て、 前記デバイスにそれぞれ対応し、対応するデバイスとの
間でデータまたは情報のやり取りを行なうと共に、対応
する前記デバイスについてデバイスの種類に起因した制
御上の相違を吸収して、所定のアプリケーションプログ
ラムによって構築されるアプリケーション部に対し、デ
バイスの種類に依存しない同一の制御環境を提供する1
つ以上のデバイス抽象化部を生成する機能と、 前記デバイス抽象化部にそれぞれ対応し、対応するデバ
イス抽象化部と通信路を介して接続され、対応する前記
デバイス抽象化部と前記アプリケーション部との間でデ
ータまたは情報のやり取りを仲介する1つ以上のインタ
ーフェイス部を生成する機能と、 前記インターフェイス部にそれぞれ対応し、対応するイ
ンターフェイス部と該インターフェイス部に対応する前
記デバイス抽象化部との間を接続する前記通信路につい
て、通信路の種類に起因した制御上の相違を吸収して、
前記アプリケーション部に対して、通信路の種類に依存
しない同一の制御環境を提供する1つ以上の通信路抽象
化部を生成する機能と、 を前記コンピュータに実現させるためのコンピュータプ
ログラムを記録した記録媒体。
8. A computer-readable recording medium storing a computer program for constructing a device control system for controlling one or more devices, the computer-readable recording medium corresponding to each of the devices, and It exchanges data or information and absorbs control differences caused by the type of device for the corresponding device, so that an application unit constructed by a predetermined application program has the same device type independent of the device type. Providing a control environment 1
A function of generating one or more device abstraction units, respectively corresponding to the device abstraction unit, connected to the corresponding device abstraction unit via a communication path, and corresponding to the device abstraction unit and the application unit. A function of generating one or more interface units that mediate the exchange of data or information between the device and the device abstraction unit corresponding to the interface unit and the corresponding interface unit and the device abstraction unit corresponding to the interface unit For the communication path connecting, absorb the difference in control due to the type of communication path,
A function of generating one or more communication path abstraction sections for providing the same control environment independent of the type of communication path to the application section; and recording a computer program for causing the computer to implement Medium.
JP11184239A 1998-06-30 1999-06-29 Device control system, its method and record medium for recording program for constructing the same system Pending JP2000222335A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11184239A JP2000222335A (en) 1998-06-30 1999-06-29 Device control system, its method and record medium for recording program for constructing the same system

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP20126798 1998-06-30
JP35212098 1998-11-25
JP10-201267 1998-11-25
JP10-352120 1998-11-25
JP11184239A JP2000222335A (en) 1998-06-30 1999-06-29 Device control system, its method and record medium for recording program for constructing the same system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2002344479A Division JP2003233577A (en) 1998-06-30 2002-11-27 Device control system

Publications (1)

Publication Number Publication Date
JP2000222335A true JP2000222335A (en) 2000-08-11

Family

ID=27325395

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11184239A Pending JP2000222335A (en) 1998-06-30 1999-06-29 Device control system, its method and record medium for recording program for constructing the same system

Country Status (1)

Country Link
JP (1) JP2000222335A (en)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003141063A (en) * 2001-10-31 2003-05-16 Sony Corp Information providing system, information providing method and storage medium
JP2006085492A (en) * 2004-09-16 2006-03-30 Ricoh Co Ltd Stream control program and image formation device
JP2007066322A (en) * 2006-10-05 2007-03-15 Ntt Docomo Inc Data processor and data processing method
JP2008005518A (en) * 2007-07-23 2008-01-10 Fuji Xerox Co Ltd Image processing system
JP2008107940A (en) * 2006-10-24 2008-05-08 Sony Corp Information processor, information processing method, and computer program
JP2008257740A (en) * 2001-03-31 2008-10-23 Siebel Systems Inc Adaptive communication application programming interface
US7561927B2 (en) 2004-07-02 2009-07-14 Okuma Corporation Numerical controller which can call program described in script language
JP2009201092A (en) * 2008-01-25 2009-09-03 Ricoh Co Ltd Image forming apparatus
JP2010166614A (en) * 2010-04-05 2010-07-29 Fuji Xerox Co Ltd Image processing system
US8161499B2 (en) 2004-04-21 2012-04-17 Ntt Docomo, Inc. Data processing device and data processing method
JP2012257281A (en) * 2012-07-26 2012-12-27 Fuji Xerox Co Ltd Service processing system
US8345281B2 (en) 2006-04-04 2013-01-01 Canon Kabushiki Kaisha Image processing device setting conflict determination
JP2014017017A (en) * 2013-10-03 2014-01-30 Fuji Xerox Co Ltd Service processing system
JP2014146292A (en) * 2013-01-30 2014-08-14 Seiko Epson Corp Control system
JP2014530397A (en) * 2011-09-12 2014-11-17 マイクロソフト コーポレーション Presenting the device as an application
JP2015053684A (en) * 2014-09-29 2015-03-19 富士ゼロックス株式会社 Service processing system

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013069336A (en) * 2001-03-31 2013-04-18 Siebel Systems Inc Adaptive communication application programming interface
JP2008257740A (en) * 2001-03-31 2008-10-23 Siebel Systems Inc Adaptive communication application programming interface
US8335928B2 (en) 2001-10-31 2012-12-18 Sony Corporation Information providing system and method and storage medium
US7458026B2 (en) 2001-10-31 2008-11-25 Sony Corporation Information providing system and method and storage medium
JP2003141063A (en) * 2001-10-31 2003-05-16 Sony Corp Information providing system, information providing method and storage medium
US8161499B2 (en) 2004-04-21 2012-04-17 Ntt Docomo, Inc. Data processing device and data processing method
US7561927B2 (en) 2004-07-02 2009-07-14 Okuma Corporation Numerical controller which can call program described in script language
JP4656897B2 (en) * 2004-09-16 2011-03-23 株式会社リコー Stream control program and image forming apparatus
JP2006085492A (en) * 2004-09-16 2006-03-30 Ricoh Co Ltd Stream control program and image formation device
US8345281B2 (en) 2006-04-04 2013-01-01 Canon Kabushiki Kaisha Image processing device setting conflict determination
USRE48551E1 (en) 2006-04-04 2021-05-11 Canon Kabushiki Kaisha Image processing device setting conflict determination
JP2007066322A (en) * 2006-10-05 2007-03-15 Ntt Docomo Inc Data processor and data processing method
JP2008107940A (en) * 2006-10-24 2008-05-08 Sony Corp Information processor, information processing method, and computer program
JP2008005518A (en) * 2007-07-23 2008-01-10 Fuji Xerox Co Ltd Image processing system
JP2009201092A (en) * 2008-01-25 2009-09-03 Ricoh Co Ltd Image forming apparatus
JP2010166614A (en) * 2010-04-05 2010-07-29 Fuji Xerox Co Ltd Image processing system
JP2014530397A (en) * 2011-09-12 2014-11-17 マイクロソフト コーポレーション Presenting the device as an application
JP2012257281A (en) * 2012-07-26 2012-12-27 Fuji Xerox Co Ltd Service processing system
JP2014146292A (en) * 2013-01-30 2014-08-14 Seiko Epson Corp Control system
JP2014017017A (en) * 2013-10-03 2014-01-30 Fuji Xerox Co Ltd Service processing system
JP2015053684A (en) * 2014-09-29 2015-03-19 富士ゼロックス株式会社 Service processing system

Similar Documents

Publication Publication Date Title
EP0969653B1 (en) Device control apparatus and method of determining device
US8639063B2 (en) Information processing system and information processing method, and information processing program used therein
RU2425413C2 (en) Information processing device, image input device, document distribution system and control method thereof
US7551303B2 (en) Service processing device and method
JP4144632B2 (en) Image processing apparatus, image processing system, and parameter setting method for image processing apparatus
JP3582393B2 (en) Device control device, user interface display method, and recording medium recording computer program for displaying user interface
US20040070630A1 (en) Multifunction apparatus, server, and server system
US8810837B2 (en) Scanning system, printing system, service providing system, and control method
JP2000222335A (en) Device control system, its method and record medium for recording program for constructing the same system
JP2004129248A (en) Image forming apparatus and scan data processing method
JP2007174400A (en) Composite machine, control apparatus, composite machine control system, control method for the composite machine, program, and recording medium
JP2008139981A (en) Controller, terminal equipment, display system, display method, program, and its recording medium
US20090276493A1 (en) Service processing system and service processing method
US8488170B2 (en) Print job management apparatus, system, and method
US20100027050A1 (en) Dynamic bridging of web-enabled components
EP1482697A2 (en) Remote service provision using a chat protocol
JP2000222341A (en) Device controller, system therefor, device judging method and record medium for recording computer program for device judgment
JP2003233577A (en) Device control system
JP2003303162A (en) Device controller, device control system, device controlling method, and recording medium with computer program recorded therein for performing device control
JP2007081771A (en) Job processor and job requesting device
JP5108571B2 (en) Device, data transfer system, data transfer method, program, and recording medium
JP2010129094A (en) Method and system for third party to perform administrative control of remote image processing job and image processing device
JP2006285995A (en) Device controller, user interface display method, storage medium storing computer program for displaying user interface
JP2001154769A (en) Device controller, user interface display method, recording medium in which computer program to display user interface is recorded
JP2005311958A (en) Scanner unit, and network scanner system comprised of multiple scanner units

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050630

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050802

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051003

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060425

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060626

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060703

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20070406

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090828