JP5589574B2 - Device control apparatus, device control program, storage medium, and device control system - Google Patents

Device control apparatus, device control program, storage medium, and device control system Download PDF

Info

Publication number
JP5589574B2
JP5589574B2 JP2010131430A JP2010131430A JP5589574B2 JP 5589574 B2 JP5589574 B2 JP 5589574B2 JP 2010131430 A JP2010131430 A JP 2010131430A JP 2010131430 A JP2010131430 A JP 2010131430A JP 5589574 B2 JP5589574 B2 JP 5589574B2
Authority
JP
Japan
Prior art keywords
plug
information
side plug
printer
unit
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.)
Expired - Fee Related
Application number
JP2010131430A
Other languages
Japanese (ja)
Other versions
JP2011257957A (en
Inventor
滋朗 荒木
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2010131430A priority Critical patent/JP5589574B2/en
Publication of JP2011257957A publication Critical patent/JP2011257957A/en
Application granted granted Critical
Publication of JP5589574B2 publication Critical patent/JP5589574B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、機器制御装置、機器制御プログラム、記憶媒体、及び機器制御システムに関する。   The present invention relates to a device control apparatus, a device control program, a storage medium, and a device control system.

従来より、プリンタは、機種によって搭載されている機能が異なっている。そして、ユーザの要求の多様化に伴い、プリンタに対して、必要な機能のみ利用できるようにカスタマイズした上で、販売することへのニーズが向上している。このようなニーズに対応するために、各機能をプラグインとして追加できるプリンタが提案されている。当該プリンタに対して機能が追加される場合、当該プリンタを制御するためのプリンタドライバに対しても、追加された機能を使えるように機能拡張する必要がある。   Conventionally, printers have different functions depending on the model. With the diversification of user demands, needs for selling printers after customizing them so that only necessary functions can be used are increasing. In order to meet such needs, printers capable of adding functions as plug-ins have been proposed. When a function is added to the printer, it is necessary to expand the function so that the added function can be used for a printer driver for controlling the printer.

このような機能拡張を行うために、プリンタドライバを再コンパイルし、顧客の環境に再インストールすることは、ユーザの利便性が低下する。そこで、再コンパイレーションや再インストールを行わずに、機能拡張を行う技術として、プラグインとしてプリンタドライバに機能を追加する技術が既に知られている。   In order to perform such function expansion, recompiling the printer driver and re-installing it in the customer's environment reduces the convenience for the user. Therefore, a technique for adding a function to a printer driver as a plug-in is already known as a technique for expanding functions without performing recompilation or reinstallation.

このプラグイン技術を用いた場合、プリンタドライバ側が当該プラグインに対応できていないにも拘わらず、インストールできてしまうという問題が生じていた。そこで、特許文献1に記載された技術では、プリンタドライバのバージョンと対応PDLとを参照して、プラグインを追加可能か否か判断する技術が提案されている。これによりプリンタドライバとプラグインとの間の不整合を抑止することは可能となった。   When this plug-in technology is used, there has been a problem that the printer driver can be installed although the printer driver is not compatible with the plug-in. Therefore, in the technique described in Patent Document 1, a technique for determining whether or not a plug-in can be added by referring to the printer driver version and the corresponding PDL is proposed. This makes it possible to suppress inconsistencies between the printer driver and the plug-in.

しかしながら、引用文献1を含む従来のプラグイン技術では、PC側にインストールしたプラグインに対応するプリンタ側の本体プラグインが有効になっていない場合、当該プラグインの機能を利用した印刷コマンドが送信できるにもかかわらず、当該印刷コマンドを用いた印刷処理はプリンタでできないという問題が生じていた。この本体プラグインが有効になっていない場合の例としては、プリンタに本体プラグインがインストールされていない場合、プリンタにインストールされた本体プラグインとPCにインストールされたプラグインとの間のバージョンが違うため利用できない場合、又は本体プラグインはインストールされているものの利用不可に設定されている場合などがある。   However, in the conventional plug-in technology including the cited document 1, when the printer-side main body plug-in corresponding to the plug-in installed on the PC side is not valid, a print command using the function of the plug-in is transmitted. Despite being able to do so, there has been a problem that the printing process using the print command cannot be performed by the printer. As an example of the case where the main unit plug-in is not enabled, when the main unit plug-in is not installed in the printer, the version between the main unit plug-in installed in the printer and the plug-in installed in the PC is There are cases where it cannot be used because it is different, or there are cases where the main body plug-in is installed but disabled.

さらに、これらのような状況が生じた場合、利用できないプラグインの機能が設定画面等表示されるため、ユーザに対して、当該プラグインの機能を利用できるという誤解を与えてることにもなる。   Further, when such a situation occurs, the plug-in function that cannot be used is displayed on the setting screen or the like, which may give the user a misunderstanding that the function of the plug-in can be used.

本発明は、上記に鑑みてなされたものであって、PCにインストールされたドライバ側のプラグインと、当該ドライバで制御する対象となる機器側の本体プラグインとの間の整合性を合わせることで、利用者に対して機器を利用する時の信頼性を向上させることを目的とする。   The present invention has been made in view of the above, and matches the consistency between a driver-side plug-in installed in a PC and a device-side main body plug-in to be controlled by the driver. Therefore, it is an object to improve the reliability when using the device for the user.

上述した課題を解決し、目的を達成するために、本発明にかかる機器制御装置は、ネットワークを介して接続された機器にインストールされた機器側プラグインが提供する機能を、利用するためのプラグインと、前記プラグインが利用可能な前記機器側プラグインを識別する第1識別情報を含む、プラグイン利用先情報を記憶する記憶手段と、前記機器から、当該機器にインストールされた機器側プラグインを識別する第2識別情報と、前記機器側プラグインが利用可能であるか否かを示す利用可否情報と、を含む機器側プラグイン一覧情報を取得する取得手段と、前記記憶手段に記憶された前記プラグイン利用先情報に含まれる前記第1識別情報と、前記取得手段により取得された前記機器側プラグイン一覧情報に含まれる前記第2識別情報とを比較することにより、前記第1識別情報で識別される前記機器側プラグインが前記機器にインストールされているか否かを判別し、インストールされている場合に、インストールされている前記機器側プラグインが利用可能か否かを前記利用可否情報に基づいて判別する判別手段と、前記判別手段によって利用可能と判別された前記プラグインのみ利用して、前記機器を制御する印刷制御手段と、を備えたことを特徴とする。 In order to solve the above-described problems and achieve the object, the device control apparatus according to the present invention is a plug for using a function provided by a device-side plug-in installed in a device connected via a network. Storage means for storing plug-in usage destination information including first identification information for identifying the device-side plug-in that can be used by the plug- in, and a device-side plug installed in the device from the device Acquisition means for acquiring device-side plug-in list information including second identification information for identifying an in-use and availability information indicating whether or not the device-side plug-in is available; and storing in the storage means the second identification information contained in the the first identification information, the device-side plug-in list information acquired by the acquisition unit included in the plugin with destination information To determine whether the device-side plug-in identified by the first identification information is installed in the device, and if installed, the device-side plug installed Determining means for determining whether or not an in can be used based on the availability information; and a print control means for controlling the device using only the plug-in determined to be usable by the determining means. It is characterized by having.

また、本発明にかかる機器制御プログラムは、ネットワークを介して接続された機器が有する機器側プラグインの機能を利用するためのプラグインをインストール可能な、コンピュータで実行される機器制御プログラムであって、前記コンピュータが、前記プラグインが利用可能な前記機器側プラグインを識別する第1識別情報を含む、プラグイン利用先情報を記憶する記憶手段を備え、前記機器から、当該機器にインストールされた機器側プラグインを識別する第2識別情報と、前記機器側プラグインが利用可能であるか否かを示す利用可否情報と、を含む機器側プラグイン一覧情報を取得する取得ステップと、前記記憶手段に記憶された前記プラグイン利用先情報に含まれる前記第1識別情報と、前記取得ステップにより取得された前記機器側プラグイン一覧情報に含まれる前記第2識別情報とを比較することにより、前記第1識別情報で識別される前記機器側プラグインが前記機器にインストールされているか否かを判別し、インストールされている場合に、インストールされている前記機器側プラグインが利用可能か否かを前記利用可否情報に基づいて判別する判別ステップと、前記判別ステップによって利用可能と判別された前記プラグインのみ利用して、前記機器を制御する制御ステップと、を前記コンピュータに実行させるための機器制御プログラムであるFurther, the device control program according to the present invention is a device control program executed by a computer capable of installing a plug-in for using a function of a device-side plug-in included in a device connected via a network. The computer includes storage means for storing plug-in usage information including first identification information for identifying the device-side plug-in that can be used by the plug-in, and is installed from the device into the device . An acquisition step of acquiring device-side plug-in list information including second identification information for identifying a device-side plug-in and availability information indicating whether or not the device-side plug-in is available; said first identification information included in the plugin with destination information stored in the unit, the obtained by the obtaining step By comparing the second identification information included in the vessel side plug-list information, the device-side plug-in that is identified by the first identification information to determine whether it is installed in the device, the installation A determination step for determining whether or not the installed device-side plug-in is available based on the availability information, and only using the plug-in determined to be usable by the determination step. Then, a device control program for causing the computer to execute a control step of controlling the device .

また、本発明にかかる記憶媒体は、上記のプログラムを記憶したコンピュータ読み取り可能な記憶媒体であることを特徴とする。   A storage medium according to the present invention is a computer-readable storage medium storing the above program.

また、本発明にかかる機器制御システムは、機器側プラグインのインストールで機能を追加することが可能な機器と、前記機器とネットワークを介して接続された機器制御装置と、で構成された機器制御システムであって、前記機器は、前記機器制御装置から利用可能なものとしてインストールされた前記機器側プラグインの一覧を示した機器側プラグイン一覧情報を、前記機器制御装置に対して出力する出力手段を備え、前記機器制御装置は、ネットワークを介して接続された機器にインストールされた機器側プラグインが提供する機能を、利用するためのプラグインと、前記プラグインが利用可能な前記機器側プラグインを識別する第1識別情報を含む、プラグイン利用先情報を記憶する記憶手段と、前記機器から、当該機器にインストールされた機器側プラグインを識別する第2識別情報と、前記機器側プラグインが利用可能であるか否かを示す利用可否情報と、を含む機器側プラグイン一覧情報を取得する取得手段と、前記記憶手段に記憶された前記プラグイン利用先情報に含まれる前記第1識別情報と、前記取得手段により取得された前記機器側プラグイン一覧情報に含まれる前記第2識別情報とを比較することにより、前記第1識別情報で識別される前記機器側プラグインが前記機器にインストールされているか否かを判別し、インストールされている場合に、インストールされている前記機器側プラグインが利用可能か否かを前記利用可否情報に基づいて判別する判別手段と、前記判別手段によって利用可能と判別された前記プラグインのみ利用して、前記機器を制御する印刷制御手段と、を備えたこと、を特徴とする。 In addition, the device control system according to the present invention includes a device control including a device capable of adding a function by installing a device-side plug-in, and a device control apparatus connected to the device via a network. An output in which the device outputs device-side plug-in list information indicating a list of the device-side plug-ins installed as available from the device control device to the device control device. The device control apparatus includes: a plug-in for using a function provided by a device-side plug-in installed in a device connected via a network; and the device side on which the plug-in can be used includes first identification information identifying a plugin, storage means for storing a plugin with destination information, from the device, installation to the equipment A second identification information identifying the Le is the equipment-side plug-in, an acquisition unit for acquiring the device-side plug-in list information including a use permission information which the equipment-side plug-in indicating whether available The first identification information included in the plug-in usage information stored in the storage unit is compared with the second identification information included in the device-side plug-in list information acquired by the acquisition unit. Thus, it is determined whether or not the device-side plug-in identified by the first identification information is installed in the device, and when the device-side plug-in is installed, the installed device-side plug-in can be used. and determining means for determining based on said utilization permission information whether, by utilizing only the plug-in determines that available by the determination means, control said equipment And print control means for, further comprising a, wherein.

本発明によれば、機器にインストールされた機器側プラグインと、自装置のプラグインとの不整合を抑止し、信頼性を向上させるという効果を奏する。   According to the present invention, an inconsistency between the device-side plug-in installed in the device and the plug-in of the own device is suppressed, and the reliability is improved.

図1は、第1の実施の形態にかかるプリンタ制御システムの構成を示すブロック図である。FIG. 1 is a block diagram illustrating the configuration of the printer control system according to the first embodiment. 図2は、第1の実施の形態にかかるPCの構成を示したブロック図である。FIG. 2 is a block diagram showing the configuration of the PC according to the first embodiment. 図3は、第1の実施の形態にかかるプリンタのプラットフォーム情報の例を示した図である。FIG. 3 is a diagram illustrating an example of platform information of the printer according to the first embodiment. 図4は、プラグイン一覧情報の例を示した図である。FIG. 4 is a diagram illustrating an example of plug-in list information. 図5は、プリンタドライバに追加されているBorderLineプラグインのプラグイン利用先情報を示す図である。FIG. 5 is a diagram showing plug-in usage information of the BorderLine plug-in added to the printer driver. 図6は、プリンタドライバに追加されているStampプラグインのプラグイン利用先情報を示す図である。FIG. 6 is a diagram illustrating plug-in usage information of a Stamp plug-in added to the printer driver. 図7は、プリンタドライバに追加されているAdvancedSecurityプラグインのプラグイン利用先情報を示す図である。FIG. 7 is a diagram showing plug-in usage information of the AdvancedSecurity plug-in added to the printer driver. 図8は、第1の実施の形態にかかるプリンタの構成を示したブロック図である。FIG. 8 is a block diagram illustrating the configuration of the printer according to the first embodiment. 図9は、BorderLineプラグインの本体プラグイン情報の例を示した図である。FIG. 9 is a diagram illustrating an example of main body plug-in information of the BorderLine plug-in. 図10は、第1の実施の形態にかかるPCにおける、各プラグインの有効/無効の設定処理の手順を示すフローチャートである。FIG. 10 is a flowchart illustrating the procedure of the setting process for enabling / disabling each plug-in in the PC according to the first embodiment. 図11は、第1の実施の形態にかかる、コアドライバの設定管理部における、プラットフォーム情報とプラグイン一覧情報との取得処理の手順を示すフローチャートである。FIG. 11 is a flowchart illustrating a procedure of acquisition processing of platform information and plug-in list information in the core driver setting management unit according to the first embodiment. 図12は、第1の実施の形態にかかる、各プラグインの設定管理部における、当該プラグインの利用可能か否かの設定処理の手順を示すフローチャートである。FIG. 12 is a flowchart illustrating a procedure of setting processing for determining whether or not the plug-in is available in the setting management unit of each plug-in according to the first embodiment. 図13は、第1の実施の形態にかかる、各プラグインの画面表示部における、表示処理の手順を示すフローチャートである。FIG. 13 is a flowchart illustrating a procedure of display processing in the screen display unit of each plug-in according to the first embodiment. 図14は、第1の実施の形態にかかる、コアドライバの画面表示部及び各プラグインの画面表示部により表示された設定画面の例を示した図である。FIG. 14 is a diagram illustrating an example of a setting screen displayed by the screen display unit of the core driver and the screen display unit of each plug-in according to the first embodiment. 図15は、 第1の実施の形態にかかる、各プラグインの描画部223による描画処理の手順を示すフローチャートである。FIG. 15 is a flowchart illustrating a drawing processing procedure by the drawing unit 223 of each plug-in according to the first embodiment. 図16は、第2の実施の形態のPCの構成を示したブロック図である。FIG. 16 is a block diagram illustrating a configuration of a PC according to the second embodiment. 図17は、第2の実施の形態にかかる、各プラグインの設定管理部における、当該プラグインの利用可能か否かの設定処理の手順を示すフローチャートである。FIG. 17 is a flowchart illustrating a setting process procedure for determining whether or not a plug-in is available in the setting management unit of each plug-in according to the second embodiment. 図18は、第2の実施の形態にかかる、各プラグインの画面表示部における、表示処理の手順を示すフローチャートである。FIG. 18 is a flowchart illustrating a procedure of display processing in the screen display unit of each plug-in according to the second embodiment. 図19は、第2の実施の形態にかかる、コアドライバの画面表示部及び各プラグインの画面表示部により表示された設定画面の例を示した図である。FIG. 19 is a diagram illustrating an example of a setting screen displayed by the screen display unit of the core driver and the screen display unit of each plug-in according to the second embodiment. 図20は、第2の実施の形態にかかる、各プラグインの描画部による描画処理の手順を示すフローチャートである。FIG. 20 is a flowchart illustrating a drawing processing procedure by the drawing unit of each plug-in according to the second embodiment. 図21は、実施の形態にかかるPCのハードウェア構成を示した図である。FIG. 21 is a diagram illustrating a hardware configuration of the PC according to the embodiment.

以下に添付図面を参照して、この発明にかかる機器制御装置、機器制御プログラム、記憶媒体、及び機器制御システムの一実施の形態を詳細に説明する。   Exemplary embodiments of an apparatus control device, an apparatus control program, a storage medium, and an apparatus control system according to the present invention will be explained below in detail with reference to the accompanying drawings.

(第1の実施の形態)
図1は、第1の実施の形態にかかるプリンタ制御システムの構成を示すブロック図である。図1に示すように、本実施の形態にかかるプリンタ制御システムでは、ネットワーク160を介して、PC100と、プリンタ150と、が接続されているものとする。
(First embodiment)
FIG. 1 is a block diagram illustrating the configuration of the printer control system according to the first embodiment. As shown in FIG. 1, in the printer control system according to this embodiment, it is assumed that a PC 100 and a printer 150 are connected via a network 160.

ネットワーク160は、PC100と、プリンタ150と、を接続可能なネットワークであればよく、例えばLAN(Local Area Network)などが考えられる。また、PC100と、プリンタ150と、をUSB(Universal Serial Bus)やシリアルポートで接続してもよい。さらに、PC100と、プリンタ150と、を公衆ネットワーク回線で接続しても良い。そして、PC100は、プリンタ150を制御するためのプリンタドライバ110を備えている。   The network 160 may be any network that can connect the PC 100 and the printer 150. For example, a LAN (Local Area Network) may be considered. Further, the PC 100 and the printer 150 may be connected by a USB (Universal Serial Bus) or a serial port. Further, the PC 100 and the printer 150 may be connected via a public network line. The PC 100 includes a printer driver 110 for controlling the printer 150.

そして、本実施の形態にかかるプリンタ制御システムでは、プリンタ150に機能を追加したい場合、当該機能のプラグインのインストールにより実現する。そして、プリンタ150に対してプラグイン(以下、プリンタ150側のプラグインを本体プラグインと称す)をインストールする場合、PC100のプリンタ150を制御するためのプリンタドライバ110に対しても、当該機能に対応するプラグインを追加する必要がある。   In the printer control system according to the present embodiment, when it is desired to add a function to the printer 150, it is realized by installing a plug-in for the function. When a plug-in is installed in the printer 150 (hereinafter, the plug-in on the printer 150 side is referred to as a main body plug-in), the printer driver 110 for controlling the printer 150 of the PC 100 also has this function. A corresponding plug-in needs to be added.

このように、本実施の形態においては、プラグインは、プリンタドライバ110とプリンタ150との各々にインストールする必要がある。このため、プリンタドライバ110とプリンタ150との間で、ユーザが意図しない差異が生じることもある。この差異の例としては、プリンタドライバ110とプリンタ150のどちらかにプラグインがインストールされていない、プリンタドライバ110とプリンタ150とにインストールされたプラグイン間のバージョンが異なる、又は、プリンタ150側で当該プラグインによる利用不可設定になっている等がある。   As described above, in this embodiment, the plug-in needs to be installed in each of the printer driver 110 and the printer 150. For this reason, a difference unintended by the user may occur between the printer driver 110 and the printer 150. As an example of this difference, the plug-in is not installed in either the printer driver 110 or the printer 150, the versions between plug-ins installed in the printer driver 110 and the printer 150 are different, or the printer 150 side There is a setting that cannot be used by the plug-in.

このバージョンが異なる例としては、プリンタ150に対応するプリンタドライバは、ネットワークに接続された複数の情報処理装置のOSにインストールする必要があるため、プリンタ150のプラグインのバージョンアップが行われた場合に、複数の情報処理装置のうちのいずれかについて、プリンタドライバのバージョンアップを忘れてしまう等がある。   As an example in which this version is different, the printer driver corresponding to the printer 150 needs to be installed in the OSs of a plurality of information processing apparatuses connected to the network. In addition, for example, forgetting to upgrade the printer driver of any of the plurality of information processing apparatuses.

また、プリンタ150側で当該プラグインによる利用不可設定になる例としては、プリンタ150の利用不可設定は、ユーザにより選択可能な環境も考えられるが、当該環境において、ユーザがプラグインの利用を不可能にする操作を行った場合、PC100のプリンタドライバ110において、対応するプラグインが利用可能なために、不整合が生じる場合がある。   In addition, as an example in which the use of the plug-in is disabled on the printer 150 side, an environment where the user can select the use-disapproval setting of the printer 150 may be considered, but in this environment, the user cannot use the plug-in. When the operation to enable the operation is performed, inconsistency may occur because the corresponding plug-in is available in the printer driver 110 of the PC 100.

さらには、他の例としては、プリンタ150の標準機能の設定や、プリンタ150にインストールされた他の本体プラグインの設定の影響により、本体プラグインが利用不可である場合なども考えられる。   Furthermore, as another example, a case where the main body plug-in cannot be used due to the setting of the standard function of the printer 150 or the setting of another main body plug-in installed in the printer 150 may be considered.

具体的には、プリンタ150本体で、複数種類の認証機能に関するプラグインが追加されている場合に、より強い認証機能(例えば地紋印刷)のみ利用可能として、もう一方の認証機能(例えばスタンプ印字)を利用不可設定にするのが望ましい場合がある。つまり、プリンタ150本体で、地紋のような印刷結果に情報を付加する機能を使う場合に、Stamp機能でスタンプ印字してしまうと、地紋により付加された情報が失われてしまう可能性が生じるからである。このような場合にプリンタ150側では、スタンプ印字の機能を利用不可能にしているにもかかわらず、PC100のプリンタドライバ110にインストールされたプラグインでは選択可能になってしまうということも考えられる。   Specifically, when plug-ins relating to a plurality of types of authentication functions are added to the printer 150 main body, only the stronger authentication function (for example, tint block printing) can be used, and the other authentication function (for example, stamp printing). It may be desirable to disable the setting. In other words, if the printer 150 uses a function for adding information to a print result such as a background pattern, if stamp printing is performed using the stamp function, the information added by the background pattern may be lost. It is. In such a case, it is conceivable that the printer 150 can be selected by a plug-in installed in the printer driver 110 of the PC 100 even though the stamp printing function is disabled.

そこで、本実施の形態の印刷制御システムでは、プリンタ150の本体プラグインが解釈可能且つ反映可能な場合に限って、対応するプリンタドライバ110のプラグインが利用可能となるよう制御を行うこととした。これにより、本実施の形態のPC100を含む印刷制御システムでは、プリンタ150側で本体プラグインが利用できないにも拘わらず、ユーザに対して、プラグインの機能が使えるという誤解を与えることを抑止する。さらに、印刷制御システムでは、ネットワークに接続されたプリンタ150及び当該プリンタ150による印刷結果に悪影響を与えることを抑止する。   Therefore, in the print control system of the present embodiment, control is performed so that the corresponding plug-in of the printer driver 110 can be used only when the main body plug-in of the printer 150 can be interpreted and reflected. . Thereby, in the print control system including the PC 100 according to the present embodiment, it is possible to prevent the user from being misunderstood that the plug-in function can be used even though the main body plug-in cannot be used on the printer 150 side. . Further, the print control system suppresses adverse effects on the printer 150 connected to the network and the printing result by the printer 150.

図2は、第1の実施の形態にかかるPC(Personal Computer)の構成を示したブロック図である。図2に示すように、PC100は、通信インターフェイス201と、プラグインインストーラ202と、プリンタドライバ110と、OS204と、アプリケーション205と、を備える。   FIG. 2 is a block diagram showing a configuration of a PC (Personal Computer) according to the first embodiment. As illustrated in FIG. 2, the PC 100 includes a communication interface 201, a plug-in installer 202, a printer driver 110, an OS 204, and an application 205.

通信インターフェイス201は、外部ネットワークと接続するためのインターフェイスとする。これにより、PC100は、プリンタ150と通信することができる。   The communication interface 201 is an interface for connecting to an external network. Thereby, the PC 100 can communicate with the printer 150.

アプリケーション205は、ユーザが必要とする機能を組み込んだソフトウェアとする。このアプリケーション205としては、例えば、文書作成ソフトウェアや、画像作成ソフトウェア、又は表計算ソフトウェアなどとする。また、アプリケーション205は、プリンタ150に対応する描画データの生成や印刷コマンドの生成などは直接的には行わない。そして、アプリケーション205は、印刷を行いたい場合には、印刷の対象に関する情報をOS204に受け渡す。   The application 205 is software incorporating a function required by the user. The application 205 is, for example, document creation software, image creation software, or spreadsheet software. Further, the application 205 does not directly generate the drawing data corresponding to the printer 150 or the print command. When the application 205 wants to perform printing, it passes information related to the printing target to the OS 204.

OS204は、PC100の制御を行う。例えば、OS204は、アプリケーション205から、印刷の対象に関する情報を受け付けた場合に、その情報をプリンタドライバ110に受け渡す。これにより、プリンタドライバ110で、受け渡された情報から、プリンタ150が解釈可能な印刷命令を生成する。   The OS 204 controls the PC 100. For example, when the OS 204 receives information related to a print target from the application 205, the OS 204 transfers the information to the printer driver 110. As a result, the printer driver 110 generates a print command that can be interpreted by the printer 150 from the received information.

プラグインインストーラ202は、プリンタドライバ110に対してプラグインをインストール(追加)するコントローラとする。このプラグインインストーラ202が追加するプラグインは、プリンタ150のプラットフォームに依存して動作するものとする。このため、本実施の形態では、プラグインを利用するために、プリンタ150のプラットフォームに対応しているか確認する。   The plug-in installer 202 is a controller that installs (adds) a plug-in to the printer driver 110. It is assumed that the plug-in added by the plug-in installer 202 operates depending on the platform of the printer 150. For this reason, in this embodiment, in order to use the plug-in, it is confirmed whether the printer 150 is compatible with the platform.

プリンタドライバ110は、プリンタドライバとしての標準機能を備えたコアドライバ210と、コアドライバに機能を追加するプラグインで構成されたプラグイン群220と、を備え、プリンタ(例えば、プリンタ150)を制御するドライバとする。   The printer driver 110 includes a core driver 210 having a standard function as a printer driver, and a plug-in group 220 configured by plug-ins that add functions to the core driver, and controls a printer (for example, the printer 150). Driver.

本実施の形態にかかるプリンタドライバ110は、複数種類のプリンタに対応したプリンタドライバ110とする。当該複数種類のプリンタでは、PDLが共通するものとする。このため、コアドライバ210は、複数種類のプリンタに共通するPDLによる印刷命令(描画データ含む)を生成する。そして、プリンタの種類間の違いは、インストールされたプラグインで吸収する。このため、本実施の形態にかかるPC100のプリンタドライバ110では、プリンタの種類に応じて異なるプラットフォームに応じたプラグインを利用する必要がある。   The printer driver 110 according to this embodiment is a printer driver 110 that supports a plurality of types of printers. The plurality of types of printers share a common PDL. For this reason, the core driver 210 generates a print command (including drawing data) by PDL common to a plurality of types of printers. Differences between printer types are absorbed by installed plug-ins. For this reason, the printer driver 110 of the PC 100 according to the present embodiment needs to use plug-ins corresponding to different platforms depending on the type of printer.

コアドライバ210は、画面表示部211と、描画部212と、設定管理部213と、通信部214と、を備え、PDLに従って、描画データを含む印刷命令を生成する。   The core driver 210 includes a screen display unit 211, a drawing unit 212, a setting management unit 213, and a communication unit 214, and generates a print command including drawing data according to PDL.

そして、本実施の形態においては、コアドライバ210に機能を追加するプラグインの集合として、プラグイン群220がある。このプラグイン群220により、1つのコアドライバ210に対して、1又は複数のプラグインが追加されることで、コアドライバ210にない様々な機能を提供する。なお、プラグイン群220では、初期状態においては、プラグインが0個であってもよい。   In the present embodiment, there is a plug-in group 220 as a set of plug-ins that add functions to the core driver 210. The plug-in group 220 provides various functions not provided in the core driver 210 by adding one or a plurality of plug-ins to one core driver 210. In the plug-in group 220, the number of plug-ins may be zero in the initial state.

通信部214は、通信インターフェイス201を介して、プリンタ150とデータの送受信を行う。そして、通信部214は、プリンタ150に対して、描画データを含む印刷命令を送信することで、プリンタ150による印刷を実現する。   The communication unit 214 transmits and receives data to and from the printer 150 via the communication interface 201. Then, the communication unit 214 realizes printing by the printer 150 by transmitting a print command including drawing data to the printer 150.

設定管理部213は、プリンタドライバ110全体の設定を管理する。例えば、設定管理部213は、印刷設定の禁則処理や、各種印刷のための設定を行う。また、設定管理部213は、双方向通信結果を、印刷設定に対して反映させる。   A setting management unit 213 manages settings for the entire printer driver 110. For example, the setting management unit 213 performs print setting prohibition processing and various settings for printing. In addition, the setting management unit 213 reflects the bidirectional communication result on the print setting.

取得部215は、通信部214によるプリンタ150との通信制御により、プリンタ150から、プリンタ150のプラットフォーム情報と、本体プラグイン一覧情報と、を取得する。   The acquisition unit 215 acquires platform information of the printer 150 and main body plug-in list information from the printer 150 through communication control with the printer 150 by the communication unit 214.

プラットフォーム情報は、プリンタ150に搭載されたプラットフォームを識別する情報とする。図3は、プリンタ150のプラットフォーム情報の例を示した図である。図3に示す例では、プラットフォーム情報として、プラットフォームの名称である“PlatformA”が含まれている。なお、プリンタ150に搭載されたプラットフォームとは、当該プリンタ150に搭載されたOS、ファームウェアなど、プリンタ150の機種等に応じて異なる情報であればよい。   The platform information is information for identifying a platform mounted on the printer 150. FIG. 3 is a diagram illustrating an example of platform information of the printer 150. In the example illustrated in FIG. 3, “Platform A” that is the name of the platform is included as the platform information. Note that the platform installed in the printer 150 may be different information depending on the model of the printer 150, such as the OS and firmware installed in the printer 150.

本体プラグイン一覧情報は、プリンタ150にインストールされた本体プラグインを特定するための一覧を示した情報とする。図4は、本体プラグイン一覧情報の例を示した図である。図4に示すように本体プラグイン一覧情報には、プラグイン名と、プラグインのバージョンと、利用可能フラグと、を有している。プラグイン名は、プリンタの本体プラグインの名前とする。利用可能フラグは、当該本体プラグインが利用可能であるか否かを示すフラグとする。このように、本体プラグイン一覧情報には、プリンタ150上で動作可能な本体プラグインを識別する情報が含まれている。   The main body plug-in list information is information indicating a list for specifying main body plug-ins installed in the printer 150. FIG. 4 is a diagram illustrating an example of main body plug-in list information. As shown in FIG. 4, the main body plug-in list information includes a plug-in name, a plug-in version, and an available flag. The plug-in name is the name of the printer main unit plug-in. The available flag is a flag indicating whether or not the main body plug-in is available. As described above, the main body plug-in list information includes information for identifying main body plug-ins operable on the printer 150.

図4に示す例では、プリンタ150に追加された本体プラグインとして、BorderLineプラグインと、Stampプラグインと、AdvancedSecurityプラグインと、の3種類が追加されたことを示している。プリンタ150にインストールされたBorderLineプラグインは、バージョンが2.0であり、利用可能フラグは利用可能に設定されていることを示している。プリンタ150にインストールされたStampプラグインは、バージョンが2.0であり、利用可能フラグは利用可能に設定されていることを示している。プリンタ150にインストールされたAdvancedSecurityプラグインは、バージョンが1.0であり、利用可能フラグは利用不可に設定されていることを示している。   In the example illustrated in FIG. 4, three types of main body plug-ins added to the printer 150, that is, a BorderLine plug-in, a Stamp plug-in, and an AdvancedSecurity plug-in, are added. The BorderLine plug-in installed in the printer 150 has a version of 2.0, indicating that the available flag is set to available. The Stamp plug-in installed in the printer 150 has a version of 2.0, and the availability flag is set to be available. The AdvancedSecurity plug-in installed in the printer 150 indicates that the version is 1.0 and the availability flag is set to unavailable.

このように、取得部215は、通信部214による双方向通信によって、プリンタ150本体のプラットフォーム名と、インストールされている本体プラグイン一覧情報と、を取得する。そして、設定管理部213が、取得部215が取得したプラットフォーム名と、本体プラグイン一覧情報と、を、プラグイン群220に含まれている各プラグインの設定管理部224に受け渡す。これにより、各プラグインが、プリンタ150で対応する機能が利用可能か否かを判別する。   In this way, the acquisition unit 215 acquires the platform name of the printer 150 main body and the installed main body plug-in list information through bidirectional communication by the communication unit 214. Then, the setting management unit 213 transfers the platform name acquired by the acquisition unit 215 and the main body plug-in list information to the setting management unit 224 of each plug-in included in the plug-in group 220. Thereby, each plug-in determines whether or not the function corresponding to the printer 150 can be used.

画面表示部211は、プリンタドライバ110を用いた印刷に関する印刷設定画面を表示する。また、画面表示部211は、プラグイン群220に含まれる各プラグインの画面表示部222を呼び出し、各プラグインに関する表示を行わせる。   The screen display unit 211 displays a print setting screen related to printing using the printer driver 110. In addition, the screen display unit 211 calls the screen display unit 222 of each plug-in included in the plug-in group 220 to perform display regarding each plug-in.

描画部212は、OS204を介して、アプリケーション205から印刷の対象として受け付けた情報を、プリンタ150が解釈可能な、描画データを含む印刷命令に変換する。また、描画部212は、プラグイン群220に含まれる各プラグインの描画部223を呼び出し、描画処理を行わせる。ただし、描画部212が、各プラグインの描画部223を呼び出したとしても、各プラグインの判別部226で描画部による描画処理を行わないと判定された場合には、各プラグインによる描画処理は行われない。   The drawing unit 212 converts information received as a printing target from the application 205 via the OS 204 into a print command including drawing data that can be interpreted by the printer 150. In addition, the drawing unit 212 calls the drawing unit 223 of each plug-in included in the plug-in group 220 to perform drawing processing. However, even if the drawing unit 212 calls the drawing unit 223 of each plug-in, if the drawing unit 226 determines that the drawing unit 212 does not perform drawing processing, the drawing processing by each plug-in Is not done.

プラグイン群220は、プリンタドライバ110に対してインストールされたプラグインの集合を示している。そして、プラグイン群220に含まれる各プラグインは、プリンタ150にインストールされた本体プラグインの機能を利用するプラグインとする。本実施の形態においては、BorderLineプラグイン221Aと、Stampプラグイン221Bと、AdvancedSecurityプラグイン221Cと、が含まれている。   A plug-in group 220 indicates a set of plug-ins installed for the printer driver 110. Each plug-in included in the plug-in group 220 is a plug-in that uses the function of the main body plug-in installed in the printer 150. In the present embodiment, a BorderLine plug-in 221A, a Stamp plug-in 221B, and an AdvancedSecurity plug-in 221C are included.

BorderLineプラグイン221Aは、集約時の罫線の追加機能であり、画面表示部222と、描画部223と、設定管理部224と、プラグイン利用先情報記憶部225と、を備えている。   The BorderLine plug-in 221 </ b> A is a function for adding ruled lines during aggregation, and includes a screen display unit 222, a drawing unit 223, a setting management unit 224, and a plug-in usage destination information storage unit 225.

プラグイン利用先情報記憶部225は、当該プラグインが利用可能な、プリンタの本体プラグインを識別する情報を含んだ、プラグイン利用先情報を記憶する。プラグイン利用先情報は、プリンタのプラットフォームと、自プラグイン(BorderLineプラグイン221A)が利用可能な本体プラグインを識別するプラグイン情報と、を含むものとする。本実施の形態では、自プラグイン(BorderLineプラグイン221A)が利用可能な本体プラグインを識別する情報として、本体プラグイン名、及び本体プラグインのバージョンを含むものとする。   The plug-in use destination information storage unit 225 stores plug-in use destination information including information for identifying the main body plug-in of the printer that can be used by the plug-in. The plug-in usage information includes the printer platform and plug-in information for identifying a main body plug-in that can be used by the self plug-in (BorderLine plug-in 221A). In the present embodiment, it is assumed that the main body plug-in name and the main body plug-in version are included as information for identifying the main body plug-in that can be used by the own plug-in (BorderLine plug-in 221A).

図5は、プリンタドライバに追加されているBorderLineプラグイン221Aのプラグイン利用先情報を示す図である。図5に示すプラグイン利用先情報の例では、1行毎に、BorderLineプラグイン221Aが利用可能なプリンタ150側の本体プラグインを示している。例えば、1行目は、PlatformAに追加されたBorderLineプラグインのバージョン2.0が利用可能であることを示している。また、2行目は、PlatformAに追加されたBorderLineプラグインのバージョン1.0が利用可能であることを示している。また、3行目は、PlatformBに追加されたEnhancedBorderLineプラグインのバージョン1.0が利用可能であることを示している。   FIG. 5 is a diagram showing plug-in usage information of the BorderLine plug-in 221A added to the printer driver. In the example of the plug-in usage destination information shown in FIG. 5, the main body plug-in on the printer 150 side that can use the BorderLine plug-in 221A is shown for each line. For example, the first line indicates that version 2.0 of the BorderLine plug-in added to Platform A can be used. The second line indicates that version 1.0 of the BorderLine plug-in added to Platform A can be used. The third line indicates that version 1.0 of the EnhancedBorderLine plug-in added to Platform B can be used.

設定管理部224は、判別部226を備え、プラグイン毎の設定を管理する。例えば、設定管理部224は、プラグインに関する、印刷設定の禁則処理や、各種印刷のための設定を行う。   The setting management unit 224 includes a determination unit 226 and manages settings for each plug-in. For example, the setting management unit 224 performs a print setting prohibition process and various print settings related to plug-ins.

判別部226は、プラグイン利用先情報記憶部225に記憶されたプラグイン利用先情報と、コアドライバ210の設定管理部213から受け渡された本体プラグイン一覧情報とプラットフォーム情報と、に基づいて、自プラグイン(例えばBorderLineプラグイン221A)が利用可能か否かを判別する。第1の実施の形態では、判別部226が判別した結果を、有効/無効フラグに設定する。この有効/無効フラグは、自プラグインが利用可能であるか否かを示すフラグであり、PC100上のレジストリ上に格納される。   The determination unit 226 is based on the plug-in use destination information stored in the plug-in use destination information storage unit 225, the main body plug-in list information and the platform information passed from the setting management unit 213 of the core driver 210. Then, it is determined whether or not the own plug-in (for example, BorderLine plug-in 221A) is available. In the first embodiment, the result determined by the determination unit 226 is set in the valid / invalid flag. This valid / invalid flag is a flag indicating whether or not the plug-in is available, and is stored on the registry on the PC 100.

具体的な処理としては、判別部226は、プラグイン情報利用先記憶部225に記憶されたプラグイン利用先情報に含まれるプラットフォーム名と、受け取ったプラットフォーム情報とが一致する行があるか否かを判別する。そして、判別部226は、本体プラグイン一覧情報に含まれるバージョン情報と、一致するものとしてプラグイン利用先情報から抽出された行に含まれている本体プラグイン名及びバージョン情報が、受け取った本体プラグイン一覧情報に含まれているプラグイン名及びバージョンと一致するか否かを判別する。そして、判別部226は、一致すると判別された本体プラグイン一覧情報の行に含まれている利用可能フラグが利用可能であるか否かを判別する。そして、判別部226は、利用可能と示されていた場合に、自プラグインが利用可能と判別する。   As a specific process, the determination unit 226 determines whether there is a line in which the platform name included in the plug-in usage destination information stored in the plug-in information usage destination storage unit 225 matches the received platform information. Is determined. Then, the determination unit 226 receives the main body plug-in name and version information included in the line extracted from the plug-in usage information as the version information included in the main body plug-in list information. It is determined whether or not it matches the plug-in name and version included in the plug-in list information. Then, the determination unit 226 determines whether or not the available flag included in the row of the main body plug-in list information determined to match is available. Then, the determination unit 226 determines that the plug-in is available when it is indicated that it can be used.

このように、本実施の形態においては、プラグイン毎に備えている判別部226で判別処理を行うこととした。これにより、コアドライバ210の構成、処理が簡素化される。そして、プリンタドライバ110は、判別部226により利用可能と判別されたプラグインのみ利用して、プリンタ150を制御する。   Thus, in this embodiment, the determination process is performed by the determination unit 226 provided for each plug-in. Thereby, the configuration and processing of the core driver 210 are simplified. Then, the printer driver 110 controls the printer 150 using only the plug-ins determined to be usable by the determination unit 226.

画面表示部222は、ドライバの設定を行う設定画面を表示する際、コアドライバ210の画面表示部211から呼び出され、当該プラグインの項目に関する表示を行う。その際、画面表示部222は、同じプラグインに含まれている判別部226で利用可能と判別された場合、つまり有効/無効フラグが有効と設定されている場合に限って当該プラグインの項目を表示し、利用不可能と判別された場合、つまり有効/無効フラグが無効に設定されている場合に当該プラグインの項目を非表示とする。なお、本実施の形態では無効に設定されている場合に非表示としたが、当該プラグインの項目が選択できなければよく、例えば半輝度表示等でもよい。   The screen display unit 222 is called from the screen display unit 211 of the core driver 210 when displaying a setting screen for setting a driver, and performs display regarding the item of the plug-in. At that time, the screen display unit 222 can be used only when the determination unit 226 included in the same plug-in determines that it can be used, that is, when the valid / invalid flag is set to valid. Is displayed, and if the valid / invalid flag is set to invalid, the item of the plug-in is hidden. In this embodiment, the display is not displayed when it is set to be invalid. However, it is sufficient that the item of the plug-in cannot be selected, and for example, a semi-luminance display may be used.

そして、本実施の形態では、画面表示部222は、当該プラグインの項目を表示する際、設定管理部224が管理している各種設定情報を参照した上で、当該プラグインの管理している機能について選択を行うための項目を、設定画面上に表示する。   In the present embodiment, the screen display unit 222 manages the plug-in after referring to the various setting information managed by the setting management unit 224 when displaying the item of the plug-in. Items for selecting functions are displayed on the setting screen.

描画部223は、プリンタ150に対する印刷命令を生成する際に、コアドライバ210の描画部212から呼び出され、当該プラグインの機能に基づく描画処理を行う。その際、描画部223は、同じプラグインに含まれている判別部226で利用可能と判別された場合、つまり有効/無効フラグが有効と設定されている場合に限って当該プラグインの機能による描画処理を行い、利用不可能と判別された場合、つまり有効/無効フラグが無効に設定されている場合に当該プラグインの機能による描画処理を行わない。そして、描画部223は、設定管理部224が管理している各種設定情報を参照し、コアドライバ210の生成する、描画データを含む印刷命令に対して、当該プラグインの描画処理で生成された情報の付加を行ったり、修正を行ったりする。   The drawing unit 223 is called from the drawing unit 212 of the core driver 210 when generating a print command for the printer 150 and performs drawing processing based on the function of the plug-in. At that time, the drawing unit 223 depends on the function of the plug-in only when it is determined that the determination unit 226 included in the same plug-in can use it, that is, when the valid / invalid flag is set to valid. If the drawing process is performed and it is determined that it cannot be used, that is, if the valid / invalid flag is set to invalid, the drawing process by the function of the plug-in is not performed. Then, the drawing unit 223 refers to various setting information managed by the setting management unit 224 and is generated by the drawing process of the plug-in for the print command including the drawing data generated by the core driver 210. Add or modify information.

Stampプラグイン221Bは、スタンプ付加機能である。また、Stampプラグイン221Bも、BorderLineプラグイン221Aと同様に、画面表示部222と、描画部223と、設定管理部224と、プラグイン利用先情報記憶部225とを備えている。プラグイン利用先情報記憶部225以外は、BorderLineプラグイン221Aと同様として説明を省略する。   The Stamp plug-in 221B is a stamp addition function. The Stamp plug-in 221B also includes a screen display unit 222, a drawing unit 223, a setting management unit 224, and a plug-in usage information storage unit 225, as with the BorderLine plug-in 221A. Except for the plug-in usage information storage unit 225, the description is omitted because it is the same as the BorderLine plug-in 221A.

Stampプラグイン221Bのプラグイン利用先情報記憶部225は、Stampプラグイン221Bが利用可能な、プリンタの本体プラグインを識別する情報を含んだ、プラグイン利用先情報を、記憶する。図6は、プリンタドライバに追加されているStampプラグイン221Bのプラグイン利用先情報を示す図である。図6に示すプラグイン利用先情報の例では、1行毎に、Stampプラグイン221Bが利用可能なプリンタ150側の本体プラグインを示している。例えば、1行目は、PlatformAに追加されたStampプラグインのバージョン1.0が利用可能であることを示している。また、2行目は、PlatformBに追加されたStampプラグインのバージョン1.0が利用可能であることを示している。   The plug-in usage destination information storage unit 225 of the Stamp plug-in 221B stores plug-in usage destination information including information for identifying the main body plug-in of the printer that can be used by the Stamp plug-in 221B. FIG. 6 is a diagram showing plug-in usage destination information of the Stamp plug-in 221B added to the printer driver. In the example of plug-in usage destination information shown in FIG. 6, the main body plug-in on the printer 150 side that can use the Stamp plug-in 221B is shown for each line. For example, the first line indicates that version 1.0 of the Stamp plug-in added to Platform A can be used. The second line indicates that the version 1.0 of the Stamp plug-in added to Platform B can be used.

AdvancedSecurityプラグイン221Cは、ジョブの認証機能である。また、AdvancedSecurityプラグイン221Cも、BorderLineプラグイン221Aと同様に、画面表示部222と、描画部223と、設定管理部224と、プラグイン利用先情報記憶部225とを備えている。プラグイン利用先情報記憶部225以外は、BorderLineプラグイン221Aと同様として説明を省略する。   The AdvancedSecurity plug-in 221C is a job authentication function. Similarly to the BorderLine plug-in 221A, the AdvancedSecurity plug-in 221C also includes a screen display unit 222, a drawing unit 223, a setting management unit 224, and a plug-in usage destination information storage unit 225. Except for the plug-in usage information storage unit 225, the description is omitted because it is the same as the BorderLine plug-in 221A.

AdvancedSecurityプラグイン221Cのプラグイン利用先情報記憶部225は、AdvancedSecurityプラグイン221Cが利用可能な、プリンタの本体プラグインを識別する情報を含んだ、プラグイン利用先情報を、記憶する。図7は、プリンタドライバに追加されているAdvancedSecurityプラグイン221Cのプラグイン利用先情報を示す図である。図7に示すプラグイン利用先情報の例では、1行毎に、AdvancedSecurityプラグイン221Cが利用可能なプリンタ150側の本体プラグインを示している。例えば、1行目は、PlatformAに追加されたAdvancedSecurityプラグインのバージョン1.0が利用可能であることを示している。また、2行目は、PlatformBに追加されたAdvancedSecurityプラグインのバージョン2.0が利用可能であることを示している。   The plug-in usage destination information storage unit 225 of the AdvancedSecurity plug-in 221C stores plug-in usage destination information including information for identifying the main body plug-in of the printer that can be used by the AdvancedSecurity plug-in 221C. FIG. 7 is a diagram showing plug-in usage information of the AdvancedSecurity plug-in 221C added to the printer driver. In the example of the plug-in usage information shown in FIG. 7, the main body plug-in on the printer 150 side that can use the AdvancedSecurity plug-in 221C is shown for each line. For example, the first line indicates that version 1.0 of the AdvancedSecurity plug-in added to Platform A can be used. The second line indicates that version 2.0 of the AdvancedSecurity plug-in added to Platform B can be used.

図8は、プリンタ150の構成を示したブロック図である。図8に示すように、プリンタ150は、通信インターフェイス801と、情報制御部802と、プラットフォーム803と、本体プラグイン群810と、を備えている。   FIG. 8 is a block diagram showing the configuration of the printer 150. As illustrated in FIG. 8, the printer 150 includes a communication interface 801, an information control unit 802, a platform 803, and a main body plug-in group 810.

通信インターフェイス801は、外部ネットワークと接続するためのインターフェイスとする。これにより、プリンタ150は、PC100と通信することができる。例えば、通信インターフェイス801は、PC100から、印刷命令を受信する。さらに、通信インターフェイス801は、PC100からの双方向通信要求を受け付け、ファームウェア情報と、本体プラグイン一覧情報と、をPC100に対して送信する。   The communication interface 801 is an interface for connecting to an external network. Thereby, the printer 150 can communicate with the PC 100. For example, the communication interface 801 receives a print command from the PC 100. Further, the communication interface 801 receives a bidirectional communication request from the PC 100 and transmits firmware information and main body plug-in list information to the PC 100.

プラットフォーム803は、プリンタ150の印刷に関する標準的な機能を提供する。プラットフォーム803は、プリンタの種類等に応じて異なるものとする。また、プラットフォーム803は、追加された本体プラグインを利用する(呼び出す)機能を有する。なお、プラットフォームの種類によって追加可能な本体プラグインの種類が異なるものとする。また、プラットフォーム803から、情報制御部802は、当該プラットフォーム803を識別するプラットフォーム名を取得できる。本実施の形態にかかるプラットフォーム名は、PlatformAとする。   The platform 803 provides standard functions related to printing of the printer 150. The platform 803 is different depending on the type of printer. The platform 803 has a function of using (calling) the added main body plug-in. Note that the types of main body plug-ins that can be added differ depending on the type of platform. Further, from the platform 803, the information control unit 802 can acquire a platform name for identifying the platform 803. The platform name according to this embodiment is assumed to be Platform A.

本体プラグイン群810は、プリンタ150にインストールされた本体プラグインを含む構成とする。本実施の形態にかかる本体プラグイン群810は、BorderLine本体プラグイン811Aと、Stamp本体プラグイン811Bと、AdvancedSecurity本体プラグイン811Cと、を含む構成とする。   The main body plug-in group 810 includes a main body plug-in installed in the printer 150. The main body plug-in group 810 according to the present embodiment includes a BorderLine main body plug-in 811A, a Stamp main body plug-in 811B, and an AdvancedSecurity main body plug-in 811C.

そして、各本体プラグインは、印刷命令に付加した情報を解釈し、当該プラグインの有する機能を印刷結果に反映させる。また、本体プラグインはバージョンを有し、各バージョンによって解釈できる印刷命令が異なる。このため、PC100側のプリンタドライバ110のプラグインと、プリンタ150に追加されている本体プラグインとの間では、種類だけでなくバージョン間の整合性がなければならない。また、本体プラグインは、常に利用可能とは限らず、他からの設定や自装置の設定により、利用不可能となる。   Each main body plug-in interprets the information added to the print command, and reflects the function of the plug-in in the print result. Further, the main body plug-in has a version, and a print command that can be interpreted differs depending on each version. For this reason, between the plug-in of the printer driver 110 on the PC 100 side and the main body plug-in added to the printer 150, not only the type but also the consistency between versions must be present. In addition, the main body plug-in is not always available, and cannot be used due to settings from other devices or settings of the own device.

また、各本体プラグインは、本体プラグイン情報815を有する。図9は、プリンタ150の、BorderLineプラグイン815に格納された本体プラグイン情報の例を示した図である。図9に示すように、本体プラグイン情報には、当該プラグインを示すプラグイン名と、当該プラグインのバージョンと、利用可能フラグと、が含まれている。図9に示すように、BorderLineプラグインの本体プラグイン情報では、バージョンが2.0であり、利用可能フラグが利用可能であることを示している。   Each main body plug-in has main body plug-in information 815. FIG. 9 is a diagram illustrating an example of main body plug-in information stored in the BorderLine plug-in 815 of the printer 150. As shown in FIG. 9, the main body plug-in information includes a plug-in name indicating the plug-in, a version of the plug-in, and an available flag. As shown in FIG. 9, the main body plug-in information of the BorderLine plug-in indicates that the version is 2.0 and the available flag is available.

また、Stampプラグインの本体プラグイン情報では、バージョンが2.0であり、利用可能フラグが利用可能とする。AdvancedSecurityプラグインの本体プラグイン情報では、バージョンが1.0であり、利用可能フラグが利用不可とする。   Further, in the main body plug-in information of the Stamp plug-in, the version is 2.0 and the available flag can be used. In the main body plug-in information of the AdvancedSecurity plug-in, the version is 1.0 and the available flag is unavailable.

情報制御部802は、通信インターフェイス801がPC100と双方向通信要求を受け付けた際に、プラットフォーム803から、プラットフォーム名をプラットフォーム情報として取得する。さらに、情報制御部802は、本体プラグイン群810に含まれている各本体プラグイン811A〜811Cから、各本体プラグインに含まれている本体プラグイン情報を取得し、取得した本体プラグイン情報から本体プラグイン一覧情報を生成する。そして、情報制御部802が取得したプラットフォーム情報、及び生成した本体プラグイン一覧情報は、通信インターフェイス801により、双方向通信要求をしたPC100に対して送信される。   The information control unit 802 acquires the platform name as platform information from the platform 803 when the communication interface 801 receives a bidirectional communication request with the PC 100. Further, the information control unit 802 acquires the main body plug-in information included in each main body plug-in from the main body plug-ins 811A to 811C included in the main body plug-in group 810, and acquires the acquired main body plug-in information. Main body plug-in list information is generated from. The platform information acquired by the information control unit 802 and the generated main body plug-in list information are transmitted to the PC 100 that has requested bi-directional communication by the communication interface 801.

次に、本実施の形態にかかるPC100における、各プラグインの有効/無効の設定処理について説明する。図10は、本実施の形態にかかるPC100における上述した処理の手順を示すフローチャートである。   Next, the setting process for enabling / disabling each plug-in in the PC 100 according to the present embodiment will be described. FIG. 10 is a flowchart showing the above-described processing procedure in the PC 100 according to the present embodiment.

本実施の形態にかかるPC100の各プラグインの有効/無効の設定は、PC100にドライバがインストールされた時や、印刷先のポートを切り替える時とする。このように印刷するプリンタの切り替えと考えられるタイミングで設定を行うこととした。これにより、PC100がモバイル機器である場合に、接続先のプリンタに応じた利用が可能となる。   The validity / invalidity setting of each plug-in of the PC 100 according to the present embodiment is set when a driver is installed in the PC 100 or when a printing destination port is switched. In this way, the setting is performed at the timing considered to be the switching of the printer for printing. As a result, when the PC 100 is a mobile device, it can be used in accordance with the connection destination printer.

また、PC100に対して、プリンタドライバ110のプラグインが追加された時も、図10に示す各プラグインの有効/無効の設定を行う。さらに、プリンタドライバ110の設定画面を表示する際に、有効/無効の設定を行っても良い。これにより、プリンタ150に新たに本体側プラグインが追加された場合や、プリンタ150の本体側プラグインの有効/無効が切り替えられた場合等に迅速に対応することができる。   Also, when a plug-in for the printer driver 110 is added to the PC 100, the setting for enabling / disabling each plug-in shown in FIG. 10 is performed. Further, when the setting screen of the printer driver 110 is displayed, valid / invalid setting may be performed. Accordingly, it is possible to quickly cope with a case where a main body side plug-in is newly added to the printer 150 or a case where the validity / invalidity of the main body side plug-in of the printer 150 is switched.

まず、コアドライバ210の取得部215が、プリンタ150との双方向通信により、接続先プリンタのプラットフォーム情報と、本体プラグイン一覧情報と、を取得する(ステップS1001)。そして、取得部215が取得したプラットフォーム情報と、本体プラグイン一覧情報とは、インストールされている各プラグインに受け渡される。   First, the acquisition unit 215 of the core driver 210 acquires the platform information of the connection destination printer and the main body plug-in list information through bidirectional communication with the printer 150 (step S1001). Then, the platform information acquired by the acquisition unit 215 and the main body plug-in list information are transferred to each installed plug-in.

そして、プラグインでは、受け渡されたプラットフォーム情報と本体プラグイン一覧情報とに基づいて、利用可能か否か示す設定を行う(ステップS1002)。本実施の形態では、利用可能か否かを示す設定として、プラグイン毎に有効/無効フラグを設定する。   Then, in the plug-in, a setting indicating whether or not the plug-in can be used is performed based on the received platform information and main body plug-in list information (step S1002). In this embodiment, a valid / invalid flag is set for each plug-in as a setting indicating whether or not it can be used.

そして、設定管理部213が、全てのプラグインで利用可能か否かを示す設定が終了したか判別する(ステップS1003)。終了していない場合(ステップS1003:No)、ステップS1002の処理を全てのプラグインで終了するまで待機する。   Then, the setting management unit 213 determines whether or not the setting indicating whether the plug-in can be used is completed (step S1003). If not completed (step S1003: No), the process waits until the process of step S1002 is completed for all plug-ins.

そして、設定管理部213は、全てのプラグインで利用可能か否かを示す設定が終了したと判別した場合(ステップS1003:Yes)、処理を終了する。   If the setting management unit 213 determines that the setting indicating whether or not all plug-ins can be used has ended (step S1003: Yes), the process ends.

上述した処理手順で、各プラグインの有効/無効フラグの設定がなされることとなる。次に、図10の各ステップの具体的な処理について説明する。   The valid / invalid flag of each plug-in is set by the processing procedure described above. Next, specific processing of each step in FIG. 10 will be described.

次に、図10のステップS1001で示した、コアドライバ210の設定管理部213におけるプラットフォーム情報と本体プラグイン一覧情報との取得処理について説明する。図11は、本実施の形態にかかる設定管理部213における上述した処理の手順を示すフローチャートである。   Next, the acquisition process of the platform information and the main body plug-in list information in the setting management unit 213 of the core driver 210 shown in step S1001 of FIG. 10 will be described. FIG. 11 is a flowchart showing the above-described processing procedure in the setting management unit 213 according to the present embodiment.

まず、設定管理部213は、接続先のプリンタ150との間で双方向通信を開始する(ステップS1101)。そして、設定管理部213内の取得部215が、双方向通信中に、プリンタ150から、プラットフォーム情報を取得する(ステップS1102)。   First, the setting management unit 213 starts bidirectional communication with the connection destination printer 150 (step S1101). Then, the acquisition unit 215 in the setting management unit 213 acquires platform information from the printer 150 during bidirectional communication (step S1102).

さらに、取得部215は、プリンタ150から、本体プラグイン一覧情報を取得する(ステップS1103)。その後、設定管理部213が、プリンタ150との間の双方向通信を終了する(ステップS1104)。   Further, the acquisition unit 215 acquires main body plug-in list information from the printer 150 (step S1103). Thereafter, the setting management unit 213 ends the bidirectional communication with the printer 150 (step S1104).

その後、設定管理部213が、プラットフォーム情報と、本体プラグイン一覧情報と、をインストールされている全てのプラグインに対して受け渡す(ステップS1105)。   Thereafter, the setting management unit 213 transfers the platform information and the main body plug-in list information to all installed plug-ins (step S1105).

上述した処理手順の後、各プラグインによる設定が行われる。次に、本実施の形態にかかるプラグインの設定管理部224における、当該プラグインの利用可能か否かの設定処理について説明する。図12は、本実施の形態にかかる各プラグインの設定管理部224における上述した処理の手順を示すフローチャートである。なお、全てのプラグインで図12に示す処理を行い、プラグイン毎に、利用可能か否かの設定が行われるものとする。   After the above-described processing procedure, setting by each plug-in is performed. Next, setting processing for determining whether or not the plug-in can be used in the plug-in setting management unit 224 according to the present embodiment will be described. FIG. 12 is a flowchart showing the above-described processing procedure in the setting management unit 224 of each plug-in according to the present embodiment. It is assumed that the processing shown in FIG. 12 is performed for all plug-ins, and whether or not each plug-in can be used is set.

まず、プラグインの設定管理部224は、プラットフォーム情報と、本体プラグイン一覧情報と、を受け取る(ステップS1201)。そして、設定管理部224内の判別部226は、プラグイン利用先情報記憶部225に記憶されたプラグイン利用先情報に含まれているプラットフォーム名が、受け取ったプラットフォーム情報と一致する行があるか否か判別する(ステップS1202)。一致する行がないと判別した場合(ステップS1202:No)、当該プラグインの有効/無効フラグを無効に設定して処理を終了する(ステップS1208)。   First, the plug-in setting management unit 224 receives platform information and main body plug-in list information (step S1201). Then, the determination unit 226 in the setting management unit 224 determines whether there is a line in which the platform name included in the plug-in usage destination information stored in the plug-in usage destination information storage unit 225 matches the received platform information. It is determined whether or not (step S1202). If it is determined that there is no matching line (step S1202: No), the validity / invalidity flag of the plug-in is set invalid and the process ends (step S1208).

一方、判別部226が、一致する行があると判別した場合(ステップS1202:Yes)、プラグイン利用先情報から、プラットフォーム名が一致した行を抽出する(ステップS1203)。   On the other hand, when the determination unit 226 determines that there is a matching line (step S1202: Yes), a line with a matching platform name is extracted from the plug-in usage destination information (step S1203).

その後、判別部226が、抽出した行と、本体プラグイン一覧情報との間で本体側プラグイン名及びバージョンが一致する行があるか否か判別する(ステップS1204)、一致する行がないと判別した場合(ステップS1204:No)、当該プラグインの有効/無効フラグを無効に設定して処理を終了する(ステップS1208)。   Thereafter, the determination unit 226 determines whether or not there is a line in which the main body plug-in name and version match between the extracted line and the main body plug-in list information (step S1204). If it is determined (step S1204: No), the valid / invalid flag of the plug-in is set to invalid, and the process ends (step S1208).

一方、判別部226が、本体側プラグイン名及びバージョンが一致する行があると判別した場合(ステップS1204:Yes)、一致した行を本体プラグイン一覧情報から抽出する(ステップS1205)。   On the other hand, when the determination unit 226 determines that there is a line with the matching main body side plug-in name and version (step S1204: Yes), the matching line is extracted from the main body plug-in list information (step S1205).

そして、判別部226は、抽出した行の利用可能フラグが“Enable”か否か判別する(ステップS1206)。そして、“Enable”ではない、つまり“Disable”と判別した場合(ステップS1206:No)、当該プラグインの有効/無効フラグを無効に設定して処理を終了する(ステップS1208)。   Then, the determination unit 226 determines whether or not the usable flag of the extracted row is “Enable” (step S1206). If it is determined that it is not “Enable”, that is, “Disable” (step S1206: No), the valid / invalid flag of the plug-in is set to invalid, and the process ends (step S1208).

一方、判別部226が、抽出した行の利用可能フラグが“Enable”と判別した場合(ステップS1206:Yes)、当該プラグインの有効/無効フラグを有効に設定して処理を終了する(ステップS1207)。   On the other hand, when the determination unit 226 determines that the availability flag of the extracted row is “Enable” (step S1206: Yes), the validity / invalidity flag of the plug-in is set to be valid, and the process ends (step S1207). ).

上述した処理手順により、有効/無効フラグが設定される。この有効/無効フラグは、設定画面を表示する際、又は印刷命令に基づく描画処理を行う際に、参照される。   The valid / invalid flag is set by the processing procedure described above. This valid / invalid flag is referred to when a setting screen is displayed or when drawing processing based on a print command is performed.

次に、本実施の形態の各プラグインにおける、上述した処理手順で設定される有効/無効フラグについて説明する。BorderLineプラグイン221Aの場合、BorderLineプラグイン221Aの判別部226は、判別処理により、図5に示されるプラグイン利用先情報から、図3のプラグイン情報で示されたPlatformAが記載されている1行目と2行目とを、ステップS1203において抽出する。その後、判別部226は、抽出された1行目が、図4の本体プラグイン一覧情報の1行目と一致すると判定する。このため、判別部226は、本体プラグイン一覧情報から1行目を抽出する。この抽出された行が“Enable”のため、BorderLineプラグインの設定管理部224は、有効/無効フラグを有効と設定する。   Next, the valid / invalid flag set in the processing procedure described above in each plug-in of the present embodiment will be described. In the case of the BorderLine plug-in 221A, the determination unit 226 of the BorderLine plug-in 221A describes PlatformA indicated by the plug-in information in FIG. 3 from the plug-in usage information shown in FIG. The line and the second line are extracted in step S1203. Thereafter, the determination unit 226 determines that the extracted first line matches the first line of the main body plug-in list information of FIG. Therefore, the determination unit 226 extracts the first line from the main body plug-in list information. Since the extracted line is “Enable”, the setting management unit 224 of the BorderLine plug-in sets the valid / invalid flag as valid.

次に、Stampプラグイン221Bの場合、Stampプラグイン221Bの判別部226は、判別処理により、図6に示されるプラグイン利用先情報から、図3のプラグイン情報で示されたPlatformAが記載されている1行目を、ステップS1203において抽出する。その後、判別部226は、抽出された1行目が、図4の本体プラグイン一覧情報と一致する行がないと判別する。このため、Stampプラグイン221Bの設定管理部224は、有効/無効フラグを無効と設定する。   Next, in the case of the Stamp plug-in 221B, the determination unit 226 of the Stamp plug-in 221B describes the Platform A indicated by the plug-in information in FIG. 3 from the plug-in usage information shown in FIG. The first line is extracted in step S1203. Thereafter, the determination unit 226 determines that the extracted first line does not have a line that matches the main body plug-in list information of FIG. For this reason, the setting management unit 224 of the Stamp plug-in 221B sets the valid / invalid flag as invalid.

次に、AdvancedSecurityプラグイン221Cの場合、AdvancedSecurityプラグイン221Cの判別部226は、判別処理により、図7に示されるプラグイン利用先情報から、図3のプラグイン情報で示されたPlatformAが記載されている1行目を、ステップS1203において抽出する。その後、判別部226は、抽出された1行目が、図4の本体プラグイン一覧情報の3行目と一致すると判別する。このため、判別部226は、本体プラグイン一覧情報から3行目を抽出する。この抽出された行が“Disable”のため、AdvancedSecurityプラグイン221Cの設定管理部224は、有効/無効フラグを無効と設定する。   Next, in the case of the AdvancedSecurity plug-in 221C, the discrimination unit 226 of the AdvancedSecurity plug-in 221C describes the Platform A indicated by the plug-in information in FIG. 3 from the plug-in usage information shown in FIG. The first line is extracted in step S1203. Thereafter, the determination unit 226 determines that the extracted first line matches the third line of the main body plug-in list information of FIG. Therefore, the determination unit 226 extracts the third line from the main body plug-in list information. Since the extracted line is “Disable”, the setting management unit 224 of the AdvancedSecurity plug-in 221C sets the valid / invalid flag to invalid.

このように、本実施の形態においては、プリンタドライバ110は、BorderLineプラグインの機能のみ利用可能となる。   Thus, in the present embodiment, the printer driver 110 can use only the function of the BorderLine plug-in.

本実施の形態にかかる各プラグインの画面表示部222による表示処理について説明する。図13は、本実施の形態にかかる各プラグインの画面表示部222における上述した処理の手順を示すフローチャートである。図13に示す処理手順では、すでにコアドライバ210の画面表示部211による画面表示処理が開始されており、当該画面表示部211から呼び出されたものとする。このコアドライバ210の画面表示部211からの呼び出しは、全てのプラグインの画面表示部211に対して行われるものとする。   A display process by the screen display unit 222 of each plug-in according to the present embodiment will be described. FIG. 13 is a flowchart showing the above-described processing procedure in the screen display unit 222 of each plug-in according to the present embodiment. In the processing procedure shown in FIG. 13, it is assumed that the screen display processing by the screen display unit 211 of the core driver 210 has already been started and has been called from the screen display unit 211. It is assumed that the call from the screen display unit 211 of the core driver 210 is made to the screen display units 211 of all plug-ins.

まず、各プラグインの画面表示部222は、コアドライバ210の画面表示部211から、表示命令を受け付ける(ステップS1301)。次に、画面表示部222は、設定管理部224を介して、レジストリに登録されていた有効/無効フラグを取得する(ステップS1302)。   First, the screen display unit 222 of each plug-in receives a display command from the screen display unit 211 of the core driver 210 (step S1301). Next, the screen display unit 222 acquires the valid / invalid flag registered in the registry via the setting management unit 224 (step S1302).

そして、画面表示部222は、取得した有効/無効フラグが“有効”か否か判別する(ステップS1303)。そして、画面表示部222が“有効”ではない(“無効”である)と判別した場合(ステップS1303:No)、表示は行わないものとして処理を終了する。   Then, the screen display unit 222 determines whether or not the acquired valid / invalid flag is “valid” (step S1303). Then, when it is determined that the screen display unit 222 is not “valid” (“invalid”) (step S1303: No), the process is terminated assuming that no display is performed.

一方、画面表示部222が有効/無効フラグが“有効”であると判別した場合(ステップS1303:Yes)、設定管理部224を介して、レジストリやDEVMODEに格納されている各種設定の状態を示す情報を取得する(ステップS1304)。   On the other hand, if the screen display unit 222 determines that the valid / invalid flag is “valid” (step S1303: Yes), the setting management unit 224 indicates the state of various settings stored in the registry or DEVMODE. Information is acquired (step S1304).

その後、画面表示部222が、取得した各種設定の状態に従って、自プラグインに対応する各項目の設定を表示する(ステップS1305)。なお、画面表示部222は、表示する項目が、禁則状態である場合は、半輝度固定値で表示する。   Thereafter, the screen display unit 222 displays the setting of each item corresponding to the own plug-in according to the acquired various setting states (step S1305). Note that the screen display unit 222 displays a fixed half-luminance value when the item to be displayed is in a prohibited state.

上述した処理手順により、プリンタドライバ110の設定画面で、各プラグインに対応する項目が表示される。   By the processing procedure described above, items corresponding to each plug-in are displayed on the setting screen of the printer driver 110.

図14は、コアドライバ210の画面表示部211及び各プラグインの画面表示部222により表示された設定画面の例を示した図である。図14に示す設定画面では、コアドライバ210の標準機能として、Layout、Paper Size、Booklet、Copies、及びUseridが表示される。そして、図14は、PC100において、BorderLineプラグイン221Aの判別部226のみが有効と判定された例とする。このため、設定画面では、標準機能以外の項目としてBorderLineのチェックボックス1401のみが表示されている。   FIG. 14 is a diagram illustrating an example of a setting screen displayed by the screen display unit 211 of the core driver 210 and the screen display unit 222 of each plug-in. In the setting screen illustrated in FIG. 14, Layout, Paper Size, Booklet, Copies, and Userid are displayed as standard functions of the core driver 210. 14 illustrates an example in which only the determination unit 226 of the BorderLine plug-in 221A is determined to be valid in the PC 100. Therefore, only the BorderLine check box 1401 is displayed as an item other than the standard function on the setting screen.

このように、第1の実施の形態にかかるPC100のプリンタドライバ110では、プリンタドライバ110に追加されているプラグインと、プリンタ150に追加されている本体プラグインとの間で整合性を検証し、整合性が取れないプラグインに関する項目は設定画面に表示されないようにしている。これにより、ユーザに利用できない項目を認識することを抑止し、当該項目に関する操作を抑止することができる。   As described above, in the printer driver 110 of the PC 100 according to the first embodiment, consistency is verified between the plug-in added to the printer driver 110 and the main body plug-in added to the printer 150. Items related to plug-ins that cannot be consistent are not displayed on the setting screen. Thereby, it is possible to suppress recognition of an item that cannot be used by the user, and it is possible to suppress an operation related to the item.

次に、本実施の形態にかかる各プラグインの描画部223による描画処理について説明する。図15は、本実施の形態にかかる各プラグインの描画部223における上述した処理の手順を示すフローチャートである。図15に示す処理手順では、すでにコアドライバ210の描画部212による描画処理が開始されており、当該描画部212から呼び出されたものとする。このコアドライバ210の描画部212からの呼び出しは、全てのプラグインの描画部223に対して行われるものとする。そして、呼び出される際に、描画データを含む印刷命令の受け渡しも行われる。   Next, drawing processing by the drawing unit 223 of each plug-in according to the present embodiment will be described. FIG. 15 is a flowchart showing the above-described processing procedure in the drawing unit 223 of each plug-in according to the present embodiment. In the processing procedure illustrated in FIG. 15, it is assumed that the drawing process by the drawing unit 212 of the core driver 210 has already been started and that the drawing unit 212 has been called. It is assumed that the call from the drawing unit 212 of the core driver 210 is made to the drawing units 223 of all plug-ins. When called, a print command including drawing data is also transferred.

まず、各プラグインの描画部223は、コアドライバ210の描画部212から、描画命令を受け付ける(ステップS1501)。次に、描画部223は、設定管理部224を介して、レジストリに登録されていた有効/無効フラグを取得する(ステップS1502)。   First, the drawing unit 223 of each plug-in receives a drawing command from the drawing unit 212 of the core driver 210 (step S1501). Next, the drawing unit 223 acquires the valid / invalid flag registered in the registry via the setting management unit 224 (step S1502).

そして、描画部223は、取得した有効/無効フラグが“有効”か否か判別する(ステップS1503)。そして、描画部223が“有効”ではない(“無効”である)と判別した場合(ステップS1503:No)、描画処理は行わず、受け取った印刷命令をコアドライバ210の描画部212に返して処理を終了する。   Then, the drawing unit 223 determines whether or not the acquired valid / invalid flag is “valid” (step S1503). If it is determined that the drawing unit 223 is not “valid” (“invalid”) (step S1503: No), the drawing process is not performed, and the received print command is returned to the drawing unit 212 of the core driver 210. End the process.

一方、描画部223が有効/無効フラグが“有効”であると判別した場合(ステップS1503:Yes)、設定管理部224を介して、レジストリやDEVMODEに格納されている各種設定の状態を示す情報を取得する(ステップS1504)。なお、各種設定の状態とは、設定値や選択肢の種類や禁則状態であるか等とする。   On the other hand, when the drawing unit 223 determines that the valid / invalid flag is “valid” (step S1503: Yes), information indicating the state of various settings stored in the registry or DEVMODE via the setting management unit 224. Is acquired (step S1504). The various setting states are set values, types of choices, prohibition states, and the like.

その後、描画部223が、取得した各種設定の状態に従って、自プラグインに対応する描画処理を行い、受け取った印刷命令に対して追加、変更等を行う(ステップS1505)。   Thereafter, the drawing unit 223 performs drawing processing corresponding to the plug-in according to the acquired various setting states, and adds or changes the received print command (step S1505).

本実施の形態においては、上述した処理手順により、有効なプラグインによる描画処理が行われる。このようにして、PC100のプリンタドライバ110では、プリンタ150が利用可能な本体プラグインに対応するプラグインのみ用いて、印刷命令を生成することができる。   In the present embodiment, drawing processing using an effective plug-in is performed according to the above-described processing procedure. In this way, the printer driver 110 of the PC 100 can generate a print command using only a plug-in corresponding to the main body plug-in that can be used by the printer 150.

なお、本実施の形態においては、各プラグインの判別部226は、プラグイン名とバージョンとが一致する他に、受け取ったプラグイン情報と、プラグイン利用先情報に含まれているプラットフォーム名と、が一致する場合に利用可能と判断した。しかしながら、プラグイン情報とプラットフォーム名と一致することを必要条件とするものではなく、判別部226が、(プラグイン名やバージョンなどの)プラグイン情報のみが一致しただけで、当該プラグインを利用可能と判断しても良い。   In the present embodiment, the plug-in determination unit 226 determines that the plug-in name and version match, the received plug-in information, and the platform name included in the plug-in usage information. , Is determined to be usable when they match. However, it does not require that the plug-in information and the platform name match, and the determination unit 226 uses the plug-in only by matching the plug-in information (such as the plug-in name and version). You may judge that it is possible.

このように、本実施の形態にかかる印刷制御システムでは、プリンタ150にインストールされた本体プラグインと、PC100のプラグインとの不整合を抑止することで、印刷時の信頼性を向上させることができる。   As described above, in the print control system according to the present embodiment, it is possible to improve the reliability during printing by suppressing inconsistency between the main body plug-in installed in the printer 150 and the plug-in of the PC 100. it can.

このように、本実施の形態にかかる印刷制御システムでは、上述した構成を備えることで、プリンタドライバのプラグインが利用できない場合に設定画面からの表示を抑止することで、ユーザに当該プラグインの機能を利用できないことを認識させることができる。さらに、当該プラグインの機能による描画処理を抑止することで、プリンタ150及び印刷結果に対する悪影響を抑止する。   As described above, the print control system according to the present embodiment has the above-described configuration, and suppresses the display from the setting screen when the plug-in of the printer driver cannot be used, thereby allowing the user to Recognize that the function cannot be used. Further, by suppressing the drawing process by the function of the plug-in, adverse effects on the printer 150 and the printing result are suppressed.

(第1の実施の形態の変形例)
上述した実施の形態では、コアドライバが複数種類のプリンタ間で共通する例について説明した。しかしながら、コアドライバが、複数種類のプリンタで共通する場合に制限するものではない。例えば、コアドライバが、プリンタの種類毎の作成されたものでも良い。そこで、第1の実施の形態の変形例では、プリンタドライバが、プリンタの種類毎に用意する例とする。本変形例では、プリンタドライバは、接続するプリンタの種類に応じてインストールされる。そして、プラグインは、当該プリンタドライバで利用可能なもの、つまりプリンタの種類に対応したもののみインストールされる。
(Modification of the first embodiment)
In the above-described embodiment, the example in which the core driver is common among a plurality of types of printers has been described. However, the present invention is not limited to the case where the core driver is common to a plurality of types of printers. For example, the core driver may be created for each type of printer. Therefore, in the modification of the first embodiment, a printer driver is prepared for each type of printer. In this modification, the printer driver is installed according to the type of printer to be connected. Only plug-ins that can be used by the printer driver, that is, plug-ins corresponding to the type of printer are installed.

このため、変形例では、プリンタドライバが、プリンタの種類毎に作成されたものなので、プラグインを利用する際に、プリンタのファームウェアの判別を行う必要はない。しかしながら、プラグインのバージョン等で不整合が生じる可能性はある。そこで、プリンタドライバのプラグインに含まれる判別部が、プリンタドライバのプラグインと、プリンタの本体プラグインと、の間のバージョンを確認して、利用可能であるか否かを判別する。この判別結果により、当該プラグインに関する項目の非表示や、当該プラグインを用いた描画処理を抑止できる。これにより、第1の実施の形態と同様の効果を得ることができる。   For this reason, in the modified example, since the printer driver is created for each type of printer, it is not necessary to determine the firmware of the printer when using the plug-in. However, there is a possibility that inconsistencies may occur in the version of the plug-in. Therefore, the determination unit included in the printer driver plug-in checks the version between the printer driver plug-in and the printer main unit plug-in to determine whether the printer driver is available. Based on the determination result, it is possible to suppress the display of items related to the plug-in and the drawing process using the plug-in. Thereby, the effect similar to 1st Embodiment can be acquired.

(第2の実施の形態)
第1の実施の形態では、プラグインが利用できない場合に、非表示とする例について説明した。しかしながら、非表示することに制限するものではなく、プラグインが利用できない場合に、当該プラグインについて利用できない設定を行った上で、禁則状態として対応しても良い。そこで、第2の実施の形態は、プラグインが利用できない場合に、禁則状態として対応する例について説明する。
(Second Embodiment)
In the first embodiment, the example in which the plug-in is not displayed when the plug-in cannot be used has been described. However, it is not limited to non-display, and when a plug-in cannot be used, a setting that cannot be used for the plug-in may be performed and the prohibited state may be handled. Therefore, in the second embodiment, an example will be described in which a plug-in cannot be used and is handled as a prohibited state.

図16は、第2の実施の形態のPC1600の構成を示したブロック図である。図16に示すようにPC1600は、第1の実施の形態のPC100と比べて、プリンタドライバ110が、プリンタドライバ1610に変更された点が異なる。なお、第1の実施の形態と同様の構成については、同一符号を付し説明を省略する。   FIG. 16 is a block diagram illustrating a configuration of the PC 1600 according to the second embodiment. As illustrated in FIG. 16, the PC 1600 is different from the PC 100 according to the first embodiment in that the printer driver 110 is changed to the printer driver 1610. In addition, about the structure similar to 1st Embodiment, the same code | symbol is attached | subjected and description is abbreviate | omitted.

プリンタドライバ1610は、第1の実施の形態のプリンタドライバ110と比べて、プラグイン群220が、プラグイン群1620に変更されたものとする。   In the printer driver 1610, the plug-in group 220 is changed to the plug-in group 1620 as compared with the printer driver 110 of the first embodiment.

このプラグイン群1620に含まれている各プラグイン1621A〜1621Cは、第1の実施の形態のプラグイン221A〜221Cと比べて、画面表示部1622と、描画部1623と、設定管理部1624の判別部1626とが、第1の実施の形態の画面表示部222と、描画部223と、設定管理部224の判別部226と、比べて処理が異なる。さらに、第2の実施の形態の処理では、第1の実施の形態と比べて、有効/無効フラグを用いない点が主な違いとなる。   The plug-ins 1621A to 1621C included in the plug-in group 1620 are different from the plug-ins 221A to 221C of the first embodiment in the screen display unit 1622, the drawing unit 1623, and the setting management unit 1624. The determination unit 1626 is different in processing from the screen display unit 222, the drawing unit 223, and the determination unit 226 of the setting management unit 224 according to the first embodiment. Furthermore, the processing of the second embodiment is mainly different from the first embodiment in that no valid / invalid flag is used.

つまり、第1の実施の形態にかかる設定管理部224の判別部226は自プラグインが利用できないと判別した場合に、有効/無効フラグを無効と設定していたが、第2の実施の形態の設定管理部1624の判別部1626は、自プラグインが利用できないと判別した場合に、当該プラグインを利用するための項目について無効値を設定し、禁則状態を設定する。   That is, when the determination unit 226 of the setting management unit 224 according to the first embodiment determines that the own plug-in cannot be used, the valid / invalid flag is set to invalid, but the second embodiment When the determination unit 1626 of the setting management unit 1624 determines that the plug-in cannot be used, it sets an invalid value for the item for using the plug-in and sets a prohibited state.

これにより、画面表示部1622は、判別部1626の設定に従って、利用できないプラグインの項目について、無効値を示した上で、禁則状態で表示する。さらに、描画部1623は、設定に従って描画処理を行う。その際、利用できない機能について無効値が設定されているため、何ら処理が行われない。   As a result, the screen display unit 1622 displays an invalid value and displays a plug-in item that cannot be used in a prohibited state according to the setting of the determination unit 1626. Furthermore, the drawing unit 1623 performs drawing processing according to the settings. At this time, since invalid values are set for functions that cannot be used, no processing is performed.

次に、第2の実施の形態にかかるPC1600の処理手順について説明する。第2の実施の形態においても、第1の実施の形態の図10と同様に、コアドライバ210の取得部215が、プリンタ150との双方向通信により、接続先プリンタのプラットフォーム情報と、本体プラグイン一覧情報と、を取得し、プラグインで、これらプラットフォーム情報と本体プラグイン一覧情報とによる利用可能であるか否かの設定が行われる。この利用可能であるか設定の詳細な手順が、第1の実施の形態と異なる。   Next, a processing procedure of the PC 1600 according to the second embodiment will be described. Also in the second embodiment, similarly to FIG. 10 of the first embodiment, the acquisition unit 215 of the core driver 210 performs platform communication of the connection destination printer and the main body plug by bidirectional communication with the printer 150. In-list information is acquired, and the plug-in sets whether or not the information can be used based on the platform information and the main body plug-in list information. The detailed procedure for setting whether it can be used is different from that of the first embodiment.

そこで、第2の実施の形態にかかる設定管理部1624による利用可能か否かの設定手順について説明する。図17は、本実施の形態にかかる各プラグインの設定管理部1624における上述した処理の手順を示すフローチャートである。なお、全てのプラグインで図17に示す処理を行い、プラグイン毎に、利用可能か否かの設定が行われるものとする。   Therefore, a setting procedure for determining whether or not the setting management unit 1624 according to the second embodiment can be used will be described. FIG. 17 is a flowchart showing the above-described processing procedure in the setting management unit 1624 of each plug-in according to this embodiment. It is assumed that the processing shown in FIG. 17 is performed for all plug-ins, and whether or not each plug-in can be used is set.

まず、第1の実施の形態のステップS1201〜S1206と同様の手順で、設定管理部1624の判別部1626による、抽出した行の利用可能フラグが“Enable”か否かの判別まで行われる(ステップS1701〜S1702、ステップS1704〜1707)。そして判別部1626が、抽出する行がないと判別した場合(ステップS1702:No、ステップS1705:No)、またはステップS1707で“Enable”ではない、つまり“Disable”と判別した場合(ステップS1707:No)、当該プラグインの利用有無に関する項目について、すべて無効値を設定し、禁則状態とする設定を行う(ステップS1703)。   First, in the same procedure as steps S1201 to S1206 of the first embodiment, the determination unit 1626 of the setting management unit 1624 performs the determination up to whether or not the availability flag of the extracted row is “Enable” (steps). S1701 to S1702, steps S1704 to 1707). When the determination unit 1626 determines that there is no row to be extracted (step S1702: No, step S1705: No), or when it is determined that it is not “Enable” in step S1707, that is, “Disable” (step S1707: No). ), An invalid value is set for all items relating to the presence / absence of use of the plug-in to set a prohibited state (step S1703).

一方、判別部1626が、抽出した行の利用可能フラグが“Enable”と判別した場合(ステップS1707:Yes)、特に処理を行わずに終了する。   On the other hand, when the determination unit 1626 determines that the availability flag of the extracted row is “Enable” (step S1707: Yes), the processing ends without performing any particular processing.

上述した処理手順により、利用できないプラグインの各項目について無効値が設定されてるとともに禁則状態にされる。   By the processing procedure described above, invalid values are set for each item of the plug-in that cannot be used, and a prohibited state is set.

本実施の形態にかかる各プラグインの画面表示部222による表示処理について説明する。図18は、本実施の形態にかかる各プラグインの画面表示部1622における上述した処理の手順を示すフローチャートである。   A display process by the screen display unit 222 of each plug-in according to the present embodiment will be described. FIG. 18 is a flowchart showing the above-described processing procedure in the screen display unit 1622 of each plug-in according to the present embodiment.

まず、各プラグインの画面表示部1622は、コアドライバ210の画面表示部211から、表示命令を受け付ける(ステップS1801)。次に、画面表示部1622は、設定管理部1624を介して、レジストリやDEVMODEに格納されている各種設定の状態を示す情報を取得する(ステップS1802)。この取得する各種設定の状態に中には、図17で設定された無効値や、禁則状態なども含まれている。   First, the screen display unit 1622 of each plug-in receives a display command from the screen display unit 211 of the core driver 210 (step S1801). Next, the screen display unit 1622 acquires information indicating the state of various settings stored in the registry or DEVMODE via the setting management unit 1624 (step S1802). The acquired various setting states include invalid values set in FIG. 17 and prohibited states.

その後、画面表示部1622が、取得した各種設定の状態に従って、自プラグインに対応する各項目の設定を表示する(ステップS1803)。なお、画面表示部1622は、表示する項目が、禁則状態である場合は、半輝度固定値で表示する。   Thereafter, the screen display unit 1622 displays the setting of each item corresponding to the own plug-in according to the acquired various setting states (step S1803). Note that the screen display unit 1622 displays a half-luminance fixed value when the item to be displayed is in a prohibited state.

上述した処理手順により、プリンタドライバ110の設定画面で、各プラグインに対応する項目が表示される。その際、図17の判別部1626で利用できないと判別されたプラグインについては、無効値が設定された上、禁則状態で表示される。   By the processing procedure described above, items corresponding to each plug-in are displayed on the setting screen of the printer driver 110. At that time, the plug-in determined to be unusable by the determination unit 1626 in FIG. 17 is displayed in a prohibited state after an invalid value is set.

図19は、コアドライバ210の画面表示部211及び各プラグインの画面表示部1622により表示された設定画面の例を示した図である。図19に示す設定画面では、コアドライバ210の標準機能として、Layout、Paper Size、Booklet、Copies、及びUseridが表示される。   FIG. 19 is a diagram illustrating an example of a setting screen displayed by the screen display unit 211 of the core driver 210 and the screen display unit 1622 of each plug-in. On the setting screen shown in FIG. 19, Layout, Paper Size, Booklet, Copies, and Userid are displayed as standard functions of the core driver 210.

そして、図19は、PC1600において、BorderLineプラグイン1621Aの判別部1626のみが利用可能と判別されているため、BorderLineプラグイン1621Aの画面表示部1622が、BorderLineのチェックボックス1901を設定可能な状態で表示する。   In FIG. 19, since it is determined that only the determination unit 1626 of the BorderLine plug-in 1621A can be used in the PC 1600, the screen display unit 1622 of the BorderLine plug-in 1621A can set the BorderLine check box 1901. indicate.

プラグインStampに関する設定として、Stampのチェックボックス1902と、Stamp Typeのリストボックスとがある。Stampのチェックボックスは、Stamp機能を利用するか否かを設定する。Stamp Typeのリストボックスは、Stamp機能の種類を設定する。また、AdvancedSecurityプラグインに関して、Advanced Securityのチェックボックス1903と、Advanced Passwordのエディットボックスとがある。Advanced Securityのチェックボックスは、Job認証機能を使用する否かを設定する。また、Advanced Passwordのエディットボックスは、Job認証機能を用いるときのPasswordである。   There are a Stamp check box 1902 and a Stamp Type list box as settings related to the plug-in Stamp. The Stamp checkbox sets whether or not to use the Stamp function. The Stamp Type list box sets the type of Stamp function. As for the Advanced Security plug-in, there are an Advanced Security check box 1903 and an Advanced Password edit box. The Advanced Security checkbox sets whether to use the Job authentication function. The Advanced Password edit box is a password for using the Job authentication function.

そして、各プラグインの判別部1626が、StampプラグインとAdvancedSecurityプラグインを利用しないと判別した。このため、各プラグインの画面表示部1622は、Stampプラグインのチェックボックス1902と、AdvancedSecurityプラグインのチェックボックス1903と、をチェックせず、禁則状態として半輝度状態で表示する。また、AdvancedSecurity のAdvanced Passwordは、空欄で、半輝度で表示される。   Then, the determination unit 1626 of each plug-in determines that the Stamp plug-in and the AdvancedSecurity plug-in are not used. For this reason, the screen display unit 1622 of each plug-in does not check the check box 1902 for the Stamp plug-in and the check box 1903 for the AdvancedSecurity plug-in, and displays them in a semi-bright state as a prohibited state. The Advanced Security Advanced Password is blank and displayed with half-brightness.

このように、第2の実施の形態にかかるPC1600のプリンタドライバ1610では、プリンタドライバ1610に追加されているプラグインと、プリンタ150に追加されている本体プラグインとの間で整合性を検証し、整合性が取れないプラグインに関する項目は設定画面で無効値が設定された上で半輝度状態で表示されることにより、ユーザに利用できない項目について設定できないことを認識させ、当該項目に関する操作を抑止することができる。   As described above, the printer driver 1610 of the PC 1600 according to the second embodiment verifies the consistency between the plug-in added to the printer driver 1610 and the main body plug-in added to the printer 150. , Items related to plug-ins that cannot be consistent are displayed in a semi-bright state after invalid values are set on the setting screen, so that users can recognize that items that cannot be used can be set, and operations related to those items can be performed Can be deterred.

次に、本実施の形態にかかる各プラグインの描画部1623による描画処理について説明する。図20は、本実施の形態にかかる各プラグインの描画部1623における上述した処理の手順を示すフローチャートである。図20に示す処理手順では、すでにコアドライバ210の描画部212による描画処理が開始されており、当該描画部212から呼び出されたものとする。   Next, drawing processing by the drawing unit 1623 of each plug-in according to the present embodiment will be described. FIG. 20 is a flowchart showing the above-described processing procedure in the drawing unit 1623 of each plug-in according to the present embodiment. In the processing procedure illustrated in FIG. 20, it is assumed that the drawing processing by the drawing unit 212 of the core driver 210 has already been started and that the drawing unit 212 has been called.

まず、各プラグインの描画部1623は、コアドライバ210の描画部212から、描画命令を受け付ける(ステップS2001)。   First, the drawing unit 1623 of each plug-in receives a drawing command from the drawing unit 212 of the core driver 210 (step S2001).

その後、描画部1623は、設定管理部1624を介して、レジストリやDEVMODEに格納されている各種設定の状態を示す情報を取得する(ステップS2002)。なお、各種設定の状態とは、設定値や選択肢の種類や禁則状態であるか等とする。   Thereafter, the drawing unit 1623 acquires information indicating the state of various settings stored in the registry or DEVMODE via the setting management unit 1624 (step S2002). The various setting states are set values, types of choices, prohibition states, and the like.

その後、描画部1623が、取得した各種設定の状態に従って、自プラグインに対応する描画処理を行い、受け取った印刷命令に対して追加、変更等を行う(ステップS2003)。この際、自プラグインが利用できない場合については、利用するか否かを示す項目に無効値が設定されているため、特に描画処理は行われないこととなる。   Thereafter, the drawing unit 1623 performs drawing processing corresponding to the plug-in in accordance with the acquired various setting states, and adds or changes the received print command (step S2003). At this time, when the own plug-in cannot be used, an invalid value is set in the item indicating whether or not to use the plug-in, and therefore no particular drawing process is performed.

上述したように第2の実施の形態にかかるPC1600は、プラグインの各機能が利用できない場合に、機能に関する設定について禁則情報を付加することとした。これにより、プラグインが利用できない場合に、禁則状態として半輝度で表示されるので、利用者の操作を抑止する。   As described above, the PC 1600 according to the second embodiment adds prohibition information regarding the setting related to the function when each function of the plug-in cannot be used. As a result, when the plug-in cannot be used, it is displayed in a half-brightness as a prohibited state, so that the user's operation is suppressed.

(変形例)
上述した実施の形態では、プリンタドライバの例について説明した。しかしながら、上述した処理は、プリンタドライバに適用することに制限するものではなく、他のドライバに対して適用しても良い。例えば、PCとネットワークを介して接続されているネットワークスキャナとで構成されたシステムに対して適用しても良い。つまり、PCにインストールされたドライバと、当該ドライバで制御される機器と、を用いたシステムであって、PCと機器との両方にドライバをインストールすることで機能を拡張できるシステムであれば、上述した実施の形態の構成及び処理を適用できる。
(Modification)
In the above-described embodiment, an example of a printer driver has been described. However, the processing described above is not limited to being applied to the printer driver, and may be applied to other drivers. For example, the present invention may be applied to a system configured with a PC and a network scanner connected via a network. In other words, if the system uses a driver installed on a PC and a device controlled by the driver and can expand the function by installing the driver on both the PC and the device, the system described above is used. The configuration and processing of the embodiment described above can be applied.

図21は、上述した実施の形態にかかるPC100、1600のハードウェア構成を示した図である。上述した実施の形態のPC100、1600は、CPU2101と、ROM(Read Only Memory)2102やRAM2103と、ディスプレイ装置などの表示装置2105と、通信I/F2104と、これらを接続するバス2106と、を備えており、通常のコンピュータを利用したハードウェア構成となっている。   FIG. 21 is a diagram illustrating a hardware configuration of the PCs 100 and 1600 according to the above-described embodiment. The PCs 100 and 1600 according to the above-described embodiments include a CPU 2101, a ROM (Read Only Memory) 2102 and a RAM 2103, a display device 2105 such as a display device, a communication I / F 2104, and a bus 2106 for connecting them. It has a hardware configuration using a normal computer.

上述した実施の形態にかかるPC100、1600で実行されるプリンタドライバ、及び当該プリンタドライバのプラグインは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、フレキシブルディスク(FD)、CD−R、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録されて提供される。   The printer driver executed on the PCs 100 and 1600 according to the above-described embodiments, and the plug-in of the printer driver are files in an installable format or an executable format, such as a CD-ROM, a flexible disk (FD), a CD- The program is recorded on a computer-readable recording medium such as R and DVD (Digital Versatile Disk).

また、上述した実施の形態にかかるPC100、1600で実行されるプリンタドライバ、及び当該プリンタドライバのプラグインを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、上述した実施の形態にかかるPC100、1600で実行されるプリンタドライバ、及び当該プリンタドライバのプラグインをインターネット等のネットワーク経由で提供または配布するように構成しても良い。   Also provided by storing the printer driver executed on the PCs 100 and 1600 according to the above-described embodiments and the plug-in of the printer driver on a computer connected to a network such as the Internet and downloading via the network. You may comprise so that it may do. Further, the printer driver executed on the PCs 100 and 1600 according to the above-described embodiments, and the plug-in of the printer driver may be provided or distributed via a network such as the Internet.

また、上述した実施の形態にかかるPC100、1600を、ROM等に予め組み込んで提供するように構成してもよい。   Further, the PCs 100 and 1600 according to the above-described embodiments may be configured to be provided by being incorporated in advance in a ROM or the like.

本実施の形態にかかるPC100、1600で実行されるプリンタドライバ、及び当該プリンタドライバのプラグインは、上述した各部(コアドライバ、プラグイン群)を含むモジュール構成となっており、実際のハードウェアとしてはCPU(プロセッサ)が上記記憶媒体からプリンタドライバ、及び当該プリンタドライバのプラグインを読み出して実行することにより上記各部が主記憶装置上にロードされ、コアドライバ、プラグイン群が主記憶装置上に生成されるようになっている。   The printer driver executed by the PCs 100 and 1600 according to the present embodiment and the plug-in of the printer driver have a module configuration including the above-described units (core driver and plug-in group), and as actual hardware The CPU (processor) reads the printer driver and the plug-in of the printer driver from the storage medium and executes them to load the above units onto the main storage device, and the core driver and plug-in group onto the main storage device. It is to be generated.

100、1600 PC
110、1610 プリンタドライバ
150 プリンタ
160 ネットワーク
201 通信インターフェイス
202 プラグインインストーラ
204 OS
205 アプリケーション
210 コアドライバ
211 画面表示部
212 描画部
213 設定管理部
214 通信部
215 取得部
220、1620 プラグイン群
221A〜221C、1621A〜1621C プラグイン
222、1622 画面表示部
223、1623 描画部
224、1624 設定管理部
225 プラグイン利用先情報記憶部
226、1626 判別部
801 通信インターフェイス
802 情報制御部
803 プラットフォーム
810 本体プラグイン群
811A〜811C 本体プラグイン
815 本体プラグイン情報
100, 1600 PC
110, 1610 Printer driver 150 Printer 160 Network 201 Communication interface 202 Plug-in installer 204 OS
205 Application 210 Core driver 211 Screen display unit 212 Drawing unit 213 Setting management unit 214 Communication unit 215 Acquisition unit 220, 1620 Plug-in group 221A-221C, 1621A-1621C Plug-in 222, 1622 Screen display unit 223, 1623 Drawing unit 224, 1624 Setting management unit 225 Plug-in usage information storage unit 226, 1626 Discrimination unit 801 Communication interface 802 Information control unit 803 Platform 810 Main unit plug-in group 811A to 811C Main unit plug-in 815 Main unit plug-in information

特開2005−173701号公報JP 2005-173701 A

Claims (12)

ネットワークを介して接続された機器にインストールされた機器側プラグインが提供する機能を、利用するためのプラグインと、
前記プラグインが利用可能な前記機器側プラグインを識別する第1識別情報を含む、プラグイン利用先情報を記憶する記憶手段と、
前記機器から、当該機器にインストールされた機器側プラグインを識別する第2識別情報と、前記機器側プラグインが利用可能であるか否かを示す利用可否情報と、を含む機器側プラグイン一覧情報を取得する取得手段と、
前記記憶手段に記憶された前記プラグイン利用先情報に含まれる前記第1識別情報と、前記取得手段により取得された前記機器側プラグイン一覧情報に含まれる前記第2識別情報とを比較することにより、前記第1識別情報で識別される前記機器側プラグインが前記機器にインストールされているか否かを判別し、インストールされている場合に、インストールされている前記機器側プラグインが利用可能か否かを前記利用可否情報に基づいて判別する判別手段と、
前記判別手段によって利用可能と判別された前記プラグインのみ利用して、前記機器を制御する印刷制御手段と、
を備えたことを特徴とする機器制御装置。
A plug-in for using the function provided by the device-side plug-in installed in the device connected via the network; and
Storage means for storing plug-in usage destination information including first identification information for identifying the device-side plug-in that can be used by the plug-in;
A device-side plug-in list including second identification information for identifying a device-side plug-in installed in the device from the device , and availability information indicating whether or not the device-side plug-in is available. An acquisition means for acquiring information;
Comparing the first identification information included in the plug-in usage information stored in the storage unit with the second identification information included in the device-side plug-in list information acquired by the acquisition unit; To determine whether the device-side plug-in identified by the first identification information is installed in the device, and if installed, can the installed device-side plug-in be used? Determining means for determining whether or not based on the availability information ;
Print control means for controlling the device by using only the plug-in determined to be usable by the determination means;
A device control apparatus comprising:
前記プラグイン利用先情報は、前記プラグインが利用可能な前記機器のプラットフォームを識別する情報を、さらに含み、
前記取得手段は、さらに、前記機器のプラットフォームを識別するプラットフォーム情報を取得し、
前記判別手段は、さらに、前記プラットフォーム情報と、前記プラグイン利用先情報と、に基づいて、前記プラグインが前記機器に対して利用可能か否かを判別すること、
を特徴とする請求項1に記載の機器制御装置。
The plug-in usage information further includes information for identifying a platform of the device that can be used by the plug-in,
The acquisition means further acquires platform information for identifying the platform of the device,
The determining means further determines whether or not the plug-in can be used for the device based on the platform information and the plug-in usage information;
The apparatus control apparatus according to claim 1.
前記印刷制御手段の設定を行う設定画面を表示する際、前記判別手段によって利用可能と判別された前記プラグインの項目を表示し、利用できないと判別された前記プラグインの項目を非表示又は半輝度で表示する表示手段を、
さらに備えることを特徴とする請求項1又は2に記載の機器制御装置。
When displaying a setting screen for setting the print control unit, the plug-in item determined to be usable by the determining unit is displayed, and the plug-in item determined to be unusable is hidden or half-displayed. Display means to display with brightness,
The device control apparatus according to claim 1, further comprising:
前記記憶手段が記憶する前記プラグイン利用先情報は、前記機器側プラグインのバージョン情報を含み、
前記取得手段が取得する前記機器側プラグイン一覧情報は、前記機器側プラグイン毎のバージョン情報を含み、
前記判別手段は、前記機器側プラグイン一覧情報に含まれる前記バージョン情報と、前記プラグイン利用先情報に含まれる前記バージョン情報と、が一致した場合に、当該バージョン情報が一致した前記機器側プラグインの機能を、前記プラグインが利用可能と判別すること、
を特徴とする請求項1乃至3のいずれか1つに記載の機器制御装置。
The plug-in usage information stored by the storage means includes version information of the device-side plug-in,
The device-side plug-in list information acquired by the acquisition means includes version information for each device-side plug-in,
When the version information included in the device-side plug-in list information matches the version information included in the plug-in usage destination information, the determination unit is configured to match the device-side plugs with the matching version information. Determining that the plug-in is available,
The device control device according to claim 1, wherein the device control device is a device.
前記判別手段は、前記プラグイン毎に備えていることを、特徴とする請求項1乃至4のいずれか1つに記載の機器制御装置。 It said discrimination means, the device control apparatus according to what is provided for each said plug, to any one of claims 1 to 4, characterized. ネットワークを介して接続された機器が有する機器側プラグインの機能を利用するためのプラグインをインストール可能な、コンピュータで実行される機器制御プログラムであって、
前記コンピュータが、前記プラグインが利用可能な前記機器側プラグインを識別する第1識別情報を含む、プラグイン利用先情報を記憶する記憶手段を備え、
前記機器から、当該機器にインストールされた機器側プラグインを識別する第2識別情報と、前記機器側プラグインが利用可能であるか否かを示す利用可否情報と、を含む機器側プラグイン一覧情報を取得する取得ステップと、
前記記憶手段に記憶された前記プラグイン利用先情報に含まれる前記第1識別情報と、前記取得ステップにより取得された前記機器側プラグイン一覧情報に含まれる前記第2識別情報とを比較することにより、前記第1識別情報で識別される前記機器側プラグインが前記機器にインストールされているか否かを判別し、インストールされている場合に、インストールされている前記機器側プラグインが利用可能か否かを前記利用可否情報に基づいて判別する判別ステップと、
前記判別ステップによって利用可能と判別された前記プラグインのみ利用して、前記機器を制御する制御ステップと、
前記コンピュータに実行させるための機器制御プログラム。
A computer-executable device control program capable of installing a plug-in for using a device-side plug-in function of a device connected via a network,
The computer includes storage means for storing plug-in usage information including first identification information for identifying the device-side plug-in that can be used by the plug-in;
A device-side plug-in list including second identification information for identifying a device-side plug-in installed in the device from the device , and availability information indicating whether or not the device-side plug-in is available. An acquisition step for acquiring information;
Comparing the first identification information included in the plug-in usage information stored in the storage means with the second identification information included in the device-side plug-in list information acquired in the acquisition step. To determine whether the device-side plug-in identified by the first identification information is installed in the device, and if installed, can the installed device-side plug-in be used? A determination step for determining whether or not based on the availability information ;
A control step of controlling the device using only the plug-in determined to be usable by the determination step;
A device control program for causing the computer to execute .
前記プラグイン利用先情報は、前記プラグインが利用可能な前記機器のプラットフォームを識別する情報を、さらに含み、
前記取得ステップは、さらに、前記機器のプラットフォームを識別するプラットフォーム情報を取得し、
前記判別ステップは、さらに、前記プラットフォーム情報と、前記プラグイン利用先情報に含まれる前記プラットフォームを識別する情報と、に基づいて、前記プラグインが前記機器に対して利用可能か否かを判別すること、
を特徴とする請求項6に記載の機器制御プログラム。
The plug-in usage information further includes information for identifying a platform of the device that can be used by the plug-in,
The obtaining step further obtains platform information for identifying the platform of the device,
The determining step further determines whether the plug-in is available to the device based on the platform information and information identifying the platform included in the plug-in usage information. about,
The apparatus control program according to claim 6 .
前記機器制御プログラムの設定を行う設定画面を表示する際、前記判別ステップによって利用可能と判別された前記プラグインの項目を表示し、利用できないと判別された前記プラグインの項目を非表示又は半輝度で表示する表示ステップを、
さらに備えることを特徴とする請求項6又は7に記載の機器制御プログラム。
When displaying the setting screen for setting the device control program, the plug-in item determined to be usable by the determining step is displayed, and the plug-in item determined to be unusable is hidden or half-displayed. Display step to display with brightness,
The device control program according to claim 6 or 7 , further comprising:
前記記憶手段が記憶する前記プラグイン利用先情報は、前記機器側プラグインのバージョン情報を含み、
前記取得ステップが取得する前記機器側プラグイン一覧情報は、前記機器側プラグイン毎のバージョン情報を含み、
前記判別ステップは、前記機器側プラグイン一覧情報に含まれる前記バージョン情報と、前記プラグイン利用先情報に含まれる前記バージョン情報と、が一致した場合に、当該バージョン情報が一致した前記機器側プラグインの機能を、前記プラグインが利用可能と判別すること、
を特徴とする請求項6乃至8のいずれか1つに記載の機器制御プログラム。
The plug-in usage information stored by the storage means includes version information of the device-side plug-in,
The device-side plug-in list information acquired by the acquiring step includes version information for each device-side plug-in,
In the determination step, when the version information included in the device-side plug-in list information matches the version information included in the plug-in usage destination information, the device-side plug in which the version information matches. Determining that the plug-in is available,
The device control program according to any one of claims 6 to 8 .
前記判別ステップは、前記プラグイン毎に備えていることを、特徴とする請求項6乃至9のいずれか1つに記載の機器制御プログラム。 10. The device control program according to claim 6 , wherein the determination step is provided for each plug-in. 請求項6乃至10のいずれか1つに記載の機器制御プログラムを記憶したコンピュータ読み取り可能な記憶媒体。 A computer-readable storage medium storing the device control program according to any one of claims 6 to 10 . 機器側プラグインのインストールで機能を追加することが可能な機器と、前記機器とネットワークを介して接続された機器制御装置と、で構成された機器制御システムであって、
前記機器は、
前記機器制御装置から利用可能なものとしてインストールされた前記機器側プラグインの一覧を示した機器側プラグイン一覧情報を、前記機器制御装置に対して出力する出力手段を備え、
前記機器制御装置は、
ネットワークを介して接続された機器にインストールされた機器側プラグインが提供する機能を、利用するためのプラグインと、
前記プラグインが利用可能な前記機器側プラグインを識別する第1識別情報を含む、プラグイン利用先情報を記憶する記憶手段と、
前記機器から、当該機器にインストールされた機器側プラグインを識別する第2識別情報と、前記機器側プラグインが利用可能であるか否かを示す利用可否情報と、を含む機器側プラグイン一覧情報を取得する取得手段と、
前記記憶手段に記憶された前記プラグイン利用先情報に含まれる前記第1識別情報と、前記取得手段により取得された前記機器側プラグイン一覧情報に含まれる前記第2識別情報とを比較することにより、前記第1識別情報で識別される前記機器側プラグインが前記機器にインストールされているか否かを判別し、インストールされている場合に、インストールされている前記機器側プラグインが利用可能か否かを前記利用可否情報に基づいて判別する判別手段と、
前記判別手段によって利用可能と判別された前記プラグインのみ利用して、前記機器を制御する印刷制御手段と、を備えたこと、
を特徴とする機器制御システム。
A device control system comprising a device capable of adding a function by installing a device-side plug-in, and a device control device connected to the device via a network,
The equipment is
Output means for outputting device-side plug-in list information indicating a list of the device-side plug-ins installed as available from the device control device to the device control device;
The device control device
A plug-in for using the function provided by the device-side plug-in installed in the device connected via the network; and
Storage means for storing plug-in usage destination information including first identification information for identifying the device-side plug-in that can be used by the plug-in;
A device-side plug-in list including second identification information for identifying a device-side plug-in installed in the device from the device , and availability information indicating whether or not the device-side plug-in is available. An acquisition means for acquiring information;
Comparing the first identification information included in the plug-in usage information stored in the storage unit with the second identification information included in the device-side plug-in list information acquired by the acquisition unit; To determine whether the device-side plug-in identified by the first identification information is installed in the device, and if installed, can the installed device-side plug-in be used? Determining means for determining whether or not based on the availability information ;
Printing control means for controlling the device by using only the plug-in determined to be usable by the determination means,
Equipment control system characterized by.
JP2010131430A 2010-06-08 2010-06-08 Device control apparatus, device control program, storage medium, and device control system Expired - Fee Related JP5589574B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010131430A JP5589574B2 (en) 2010-06-08 2010-06-08 Device control apparatus, device control program, storage medium, and device control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010131430A JP5589574B2 (en) 2010-06-08 2010-06-08 Device control apparatus, device control program, storage medium, and device control system

Publications (2)

Publication Number Publication Date
JP2011257957A JP2011257957A (en) 2011-12-22
JP5589574B2 true JP5589574B2 (en) 2014-09-17

Family

ID=45474074

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010131430A Expired - Fee Related JP5589574B2 (en) 2010-06-08 2010-06-08 Device control apparatus, device control program, storage medium, and device control system

Country Status (1)

Country Link
JP (1) JP5589574B2 (en)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5987785B2 (en) 2013-05-31 2016-09-07 富士ゼロックス株式会社 Processing instruction device, processing device, and program
JP6176020B2 (en) 2013-09-17 2017-08-09 株式会社リコー Apparatus, information processing system, information processing method, information processing program, and storage medium storing information processing program
JP6447215B2 (en) * 2014-03-10 2019-01-09 株式会社リコー Information distribution system, information processing apparatus, information distribution method, and program
JP6385265B2 (en) * 2014-12-09 2018-09-05 キヤノン株式会社 Information processing apparatus, control method, and program
JP6598946B2 (en) * 2018-08-08 2019-10-30 キヤノン株式会社 Information processing apparatus, control method, and program
JP6821761B2 (en) * 2019-10-02 2021-01-27 キヤノン株式会社 Information processing equipment, control methods and programs
JP7210621B2 (en) * 2021-02-01 2023-01-23 キヤノン株式会社 Information processing device, control method, and program

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7069553B2 (en) * 2003-03-03 2006-06-27 Computer Associates Think, Inc. Universal deployment tool
JP4640545B2 (en) * 2004-09-28 2011-03-02 株式会社沖データ Information processing device
JP4533780B2 (en) * 2005-03-18 2010-09-01 株式会社リコー Image forming system, image forming apparatus, terminal device, and driver updating method for terminal device
JP2007164521A (en) * 2005-12-14 2007-06-28 Canon Inc Network print system
JP5013890B2 (en) * 2006-03-17 2012-08-29 株式会社リコー Information processing apparatus capable of communicating with image forming apparatus
JP5258474B2 (en) * 2008-09-19 2013-08-07 京セラドキュメントソリューションズ株式会社 Electronic device and application execution method

Also Published As

Publication number Publication date
JP2011257957A (en) 2011-12-22

Similar Documents

Publication Publication Date Title
JP5589574B2 (en) Device control apparatus, device control program, storage medium, and device control system
JP4889776B2 (en) Printer control apparatus, printer control method, printing system, program, and recording medium
JP5496383B2 (en) Information processing apparatus, control method, and control program
JP5278185B2 (en) Information processing apparatus, installer program, and storage medium
CN102446078B (en) Information processing apparatus and control method of information processing apparatus
KR101650731B1 (en) Management apparatus and method for managing device driver of management apparatus
CN106462365B (en) Output system, terminal installation and output method
CN104583932B (en) Information processor and installation method
JP2009217331A (en) Information processor, control method for information processor, program and recording medium
US20200110559A1 (en) Information processing apparatus, control method, and storage medium
US20140300914A1 (en) Information processing apparatus, method for controlling the same, and recording medium
JP4590341B2 (en) Data processing apparatus, setting processing method, information processing apparatus, and control program
JP7102216B2 (en) program
JP6929144B2 (en) Information processing equipment, programs, installers and control methods
CN110825329B (en) Printing apparatus, control method, and storage medium
US8792107B2 (en) Information processing apparatus, method for uninstalling printer driver, and recording medium
US11625205B2 (en) Information processing apparatus, server apparatus, control method, and storage medium
WO2014136429A1 (en) Information processing apparatus and method for the same
JP4996272B2 (en) Information processing apparatus, control method therefor, and program for executing the method
JP2005173701A (en) Information processor, information processing method, and program therefor
US8368909B2 (en) Recording medium, information processing apparatus and function simulation method of image processing apparatus
US10346102B2 (en) Information processing apparatus that controls install of a device driver in accordance with capability of an operating system, installation method, and storage medium
JP6525084B2 (en) INFORMATION PROCESSING APPARATUS, PRINT CONTROL PROGRAM, AND PRINT SYSTEM
JP5154684B2 (en) Printer control apparatus, printer control method, printing system, program, and recording medium
JP2008139912A (en) Information processor, image forming device, method for controlling them, and computer program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131203

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140203

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140701

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140714

R151 Written notification of patent or utility model registration

Ref document number: 5589574

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees