JP2017134752A - Information processing apparatus, information processing system, information processing method, and information processing program - Google Patents

Information processing apparatus, information processing system, information processing method, and information processing program Download PDF

Info

Publication number
JP2017134752A
JP2017134752A JP2016015987A JP2016015987A JP2017134752A JP 2017134752 A JP2017134752 A JP 2017134752A JP 2016015987 A JP2016015987 A JP 2016015987A JP 2016015987 A JP2016015987 A JP 2016015987A JP 2017134752 A JP2017134752 A JP 2017134752A
Authority
JP
Japan
Prior art keywords
information
attribute information
pdl
program
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.)
Granted
Application number
JP2016015987A
Other languages
Japanese (ja)
Other versions
JP6613927B2 (en
Inventor
佳秀 安藤
Yoshihide Ando
佳秀 安藤
洋一 峰岸
Yoichi Minegishi
洋一 峰岸
麻理子 當摩
Mariko Toma
麻理子 當摩
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 JP2016015987A priority Critical patent/JP6613927B2/en
Priority to EP17151299.9A priority patent/EP3200064A1/en
Priority to US15/414,541 priority patent/US10564906B2/en
Priority to CN201710054337.4A priority patent/CN107025081B/en
Publication of JP2017134752A publication Critical patent/JP2017134752A/en
Application granted granted Critical
Publication of JP6613927B2 publication Critical patent/JP6613927B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1244Job translation or job parsing, e.g. page banding
    • G06F3/1248Job translation or job parsing, e.g. page banding by printer language recognition, e.g. PDL, PCL, PDF
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1225Software update, e.g. print driver, modules, plug-ins, fonts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • G06F3/1289Remote printer device, e.g. being remote from client or server in server-client-printer device configuration, e.g. the server does not see the printer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00206Transmitting or receiving computer data via an image communication device, e.g. a facsimile transceiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/00127Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture
    • H04N1/00204Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server
    • H04N1/00244Connection or combination of a still picture apparatus with another apparatus, e.g. for storage, processing or transmission of still picture signals or of information associated with a still picture with a digital computer or a digital computer system, e.g. an internet server with a server, e.g. an internet server

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

PROBLEM TO BE SOLVED: To enable a user to easily acquire a driver program suitable for a model.SOLUTION: An information processing apparatus comprises an identification information acquisition part, an attribute information acquisition part, and a selection part. The identification information acquisition part acquires identification information for identifying a model. The attribute information acquisition part acquires attribute information indicating the attribute of a program applicable to the model on the basis of the identification information acquired by the identification information acquisition part. The selection part selects a program on the basis of a priority predetermined for the attribute information acquired by the attribute information acquisition part.SELECTED DRAWING: Figure 7

Description

本発明は、情報処理装置、情報処理システム、情報処理方法および情報処理プログラムに関する。   The present invention relates to an information processing apparatus, an information processing system, an information processing method, and an information processing program.

プリンタの機種を特定してネットワーク上のサーバと通信を行い、その機種が対応しているPDL(Page Description Language)をキーとしてサーバからドライバプログラムを検索してダウンロードし、ダウンロードしたドライバプログラムをコンピュータにインストールするインストーラが知られている。プリンタを製造および販売するメーカは、製造および販売するプリンタに適したPDLに対応するドライバプログラムと、このドライバプログラムに対応するインストーラとをユーザに提供するのが一般的である。   Identifies the printer model, communicates with the server on the network, searches for and downloads the driver program from the server using the PDL (Page Description Language) supported by the model as a key, and downloads the downloaded driver program to the computer The installer to install is known. A manufacturer that manufactures and sells a printer generally provides a user with a driver program corresponding to a PDL suitable for the printer to be manufactured and sold, and an installer corresponding to the driver program.

また、特許文献1には、サーバに管理者がドライバプログラムをアップロードしてそのドライバプログラムをユーザに通知し、そのドライバプログラムのダウンロード数に基づき画面を自動生成するようにした技術が記載されている。特許文献1によれば、ユーザは、利用頻度が高いドライバプログラムを容易に取得可能となる。   Patent Document 1 describes a technique in which an administrator uploads a driver program to a server, notifies the user of the driver program, and automatically generates a screen based on the number of downloaded driver programs. . According to Patent Literature 1, a user can easily obtain a driver program that is frequently used.

ところで、同じ機種に対して、それぞれ異なるPDLに対応する複数のドライバプログラムが存在するのが一般的である。このとき、機種毎の複数のドライバプログラムそれぞれが対応しているPDLが、機種によって異なる場合がある。そのため、従来では、複数の機種に共通して推奨できる1つのPDLを決定することが困難であった。一例として、メーカが、OEM(Original Equipment Manufacturer)のような、他メーカから調達したプリンタを販売する場合が挙げられる。   Incidentally, there are generally a plurality of driver programs corresponding to different PDLs for the same model. At this time, the PDL supported by each of the plurality of driver programs for each model may differ depending on the model. Therefore, conventionally, it has been difficult to determine one PDL that can be recommended in common for a plurality of models. As an example, there is a case where a manufacturer sells a printer procured from another manufacturer such as an OEM (Original Equipment Manufacturer).

OEM製のプリンタは、適したPDLが自メーカ開発のプリンタに適したPDLとは異なる場合が有り得る。従来のインストーラは、ドライバプログラムを取得する際に、複数のPDLから適切なPDLを自動的に選択することができず、自メーカ製からOEM製までのプリンタを対応可能とすることが困難であった。   In an OEM printer, a suitable PDL may be different from a PDL suitable for a printer developed by the manufacturer. Conventional installers cannot automatically select an appropriate PDL from a plurality of PDLs when acquiring a driver program, and it is difficult to support printers from the manufacturer to the OEM. It was.

したがって、ユーザは、必要なPDLを明示的に選択してドライバプログラムを取得する必要があるという問題点があった。また、上述した特許文献1においても、ユーザがドライバプログラムを明示的に選択する必要がある点は、解消できていない。   Therefore, there is a problem that the user needs to explicitly select the necessary PDL and acquire the driver program. Further, even in the above-described Patent Document 1, the point that the user needs to explicitly select a driver program cannot be solved.

本発明は、上記に鑑みてなされたものであって、機種に対して適切なドライバプログラムを容易に取得可能とすることを目的とする。   The present invention has been made in view of the above, and an object of the present invention is to make it possible to easily obtain an appropriate driver program for a model.

上述した課題を解決し、目的を達成するために、本発明は、機種を識別する識別情報を取得する識別情報取得部と、識別情報に基づき機種に適用可能な複数のプログラムそれぞれの属性を示す属性情報を取得する属性情報取得部と、属性情報に対して予め定められた優先順位に基づき複数のプログラムからインストール対象とするプログラムを選択する選択部とを備える。   In order to solve the above-described problems and achieve the object, the present invention shows an identification information acquisition unit for acquiring identification information for identifying a model, and attributes of a plurality of programs applicable to the model based on the identification information An attribute information acquisition unit that acquires attribute information, and a selection unit that selects a program to be installed from a plurality of programs based on a predetermined priority order for the attribute information.

本発明によれば、機種に対して適切なドライバプログラムを容易に取得可能となるという効果を奏する。   According to the present invention, it is possible to easily obtain an appropriate driver program for a model.

図1は、各実施形態に適用可能な情報処理システムの一例の構成を示す図である。FIG. 1 is a diagram illustrating a configuration of an example of an information processing system applicable to each embodiment. 図2は、各実施形態に適用可能な、PCによるドライバプログラムの取得処理を概略的に示す図である。FIG. 2 is a diagram schematically showing a driver program acquisition process by a PC, which can be applied to each embodiment. 図3は、各実施形態に適用可能なPCのハードウェア構成の例を示すブロック図である。FIG. 3 is a block diagram illustrating an example of a hardware configuration of a PC applicable to each embodiment. 図4は、各実施形態に適用可能なサーバのハードウェア構成の例を示すブロック図である。FIG. 4 is a block diagram illustrating an example of a hardware configuration of a server applicable to each embodiment. 図5は、各実施形態に適用可能なプリンタのハードウェア構成の例を示すブロック図である。FIG. 5 is a block diagram illustrating an example of a hardware configuration of a printer applicable to each embodiment. 図6は、第1の実施形態に係るPCの機能を説明するための一例の機能ブロック図である。FIG. 6 is an exemplary functional block diagram for explaining functions of the PC according to the first embodiment. 図7は、第1の実施形態に係るインストーラの機能を説明するための一例の機能ブロック図である。FIG. 7 is a functional block diagram illustrating an example of functions of the installer according to the first embodiment. 図8は、第1の実施形態に適用可能なプリンタの機能を説明するための一例の機能ブロック図である。FIG. 8 is a functional block diagram of an example for explaining the functions of the printer applicable to the first embodiment. 図9は、第1の実施形態に適用可能なサーバの機能を説明するための一例の機能ブロック図である。FIG. 9 is a functional block diagram illustrating an example of server functions applicable to the first embodiment. 図10は、第1の実施形態に係るドライバプログラムのPCへの導入処理の流れを示す一例のシーケンス図である。FIG. 10 is a sequence diagram illustrating an example of a process flow for introducing the driver program to the PC according to the first embodiment. 図11は、第1の実施形態に適用可能な、制御部からサーバに送信される検索要求の例を示す図である。FIG. 11 is a diagram illustrating an example of a search request transmitted from the control unit to the server, applicable to the first embodiment. 図12は、第1の実施形態に適用可能な、サーバから送信される検索結果の例を示す図である。FIG. 12 is a diagram illustrating an example of a search result transmitted from the server, applicable to the first embodiment. 図13は、第1の実施形態に係る、アーキテクチャ判定部による判定処理の例を示すフローチャートである。FIG. 13 is a flowchart illustrating an example of determination processing by the architecture determination unit according to the first embodiment. 図14は、第1の実施形態に係る、表示言語判定部による判定処理の例を示すフローチャートである。FIG. 14 is a flowchart illustrating an example of determination processing by the display language determination unit according to the first embodiment. 図15は、第1の実施形態に係る、PDL判定部による判定処理の例を示すフローチャートである。FIG. 15 is a flowchart illustrating an example of determination processing by the PDL determination unit according to the first embodiment. 図16は、第2の実施形態に係るインストーラの機能を説明するための一例の機能ブロック図である。FIG. 16 is a functional block diagram illustrating an example of functions of the installer according to the second embodiment. 図17は、第2の実施形態に係るドライバプログラムのPCへの導入処理の流れを示す一例のシーケンス図である。FIG. 17 is a sequence diagram illustrating an example of a process flow for introducing the driver program to the PC according to the second embodiment. 図18は、第2の実施形態に係る、PDL判定部による判定処理の例を示すフローチャートである。FIG. 18 is a flowchart illustrating an example of determination processing by the PDL determination unit according to the second embodiment. 図19は、第1の実施形態に係る選択肢一覧画面の例を示す図である。FIG. 19 is a diagram illustrating an example of an option list screen according to the first embodiment.

以下に添付図面を参照して、情報処理装置、情報処理システム、情報処理方法および情報処理プログラムの実施形態を詳細に説明する。   Hereinafter, embodiments of an information processing device, an information processing system, an information processing method, and an information processing program will be described in detail with reference to the accompanying drawings.

(各実施形態に適用可能な構成)
図1は、各実施形態に適用可能な情報処理システムの一例の構成を示す。図1において、情報処理システムは、パーソナルコンピュータ(PC)10と、プリンタ20aおよび20bと、サーバ30とを含む。なお、図1において、プリンタ20aおよび20bは、プリンタ#Aおよびプリンタ#Bとも示している。図1の例では、PC10、プリンタ20aおよびサーバ30がLAN(Local Area Network)などによるネットワーク40に、互いに通信可能に接続されている。また、図1の例では、プリンタ20bは、PC10に対して例えばUSB(Universal Serial Bus)などにより直接的に接続されている。
(Configuration applicable to each embodiment)
FIG. 1 shows an example of the configuration of an information processing system applicable to each embodiment. In FIG. 1, the information processing system includes a personal computer (PC) 10, printers 20 a and 20 b, and a server 30. In FIG. 1, the printers 20a and 20b are also shown as printer #A and printer #B. In the example of FIG. 1, a PC 10, a printer 20a, and a server 30 are connected to a network 40 such as a LAN (Local Area Network) so that they can communicate with each other. In the example of FIG. 1, the printer 20b is directly connected to the PC 10 by, for example, a USB (Universal Serial Bus).

このような構成において、PC10は、例えばプリンタ20aやプリンタ20bに対応するドライバプログラムをインストールすることで、プリンタ20aやプリンタ20bに対して印刷処理を実行させることができる。ここで、PC10は、プリンタ20aやプリンタ20bに対応するドライバプログラムを、ネットワーク40を介して、例えばサーバ30から取得することができる。   In such a configuration, the PC 10 can cause the printer 20a and the printer 20b to execute print processing by installing a driver program corresponding to the printer 20a and the printer 20b, for example. Here, the PC 10 can acquire a driver program corresponding to the printer 20 a or the printer 20 b from the server 30 via the network 40, for example.

なお、上述では、PC10と、プリンタ20aと、サーバ30とがLANであるネットワーク40を介して接続されているように説明したが、これはこの例に限定されない。例えば、PC10、プリンタ20aおよびサーバ30のうち1以上を、インターネットを介して接続するようにしてもよい。また、ネットワーク40は、有線通信および無線通信の何れを用いてもよいし、有線通信および無線通信を混在させてもよい。   In the above description, the PC 10, the printer 20a, and the server 30 are connected via the network 40 that is a LAN, but this is not limited to this example. For example, one or more of the PC 10, the printer 20a, and the server 30 may be connected via the Internet. The network 40 may use any of wired communication and wireless communication, and may mix wired communication and wireless communication.

さらに、図1の例では、PC10が利用可能な機器がプリンタ20aおよび20bであるように示されているが、これはこの例に限定されない。PC10が利用可能な機器は、スキャナであってもよいし、プリンタ機能、スキャナ機能、複写機能など複数の機能を1の筐体で実現させたMFP(Multi Function Printer)であってもよい。   Furthermore, in the example of FIG. 1, the devices that can be used by the PC 10 are shown as printers 20 a and 20 b, but this is not limited to this example. The device that can be used by the PC 10 may be a scanner, or an MFP (Multi Function Printer) that realizes a plurality of functions such as a printer function, a scanner function, and a copying function in a single casing.

なお、プリンタ20aおよび20bは、PC10に対する接続方法が異なる以外は、同等に扱うことができるため、以下では、特に記載の無い限り、プリンタ20aおよび20bを、プリンタ20aで代表させて説明を行う。   Since the printers 20a and 20b can be handled in the same manner except that the connection method to the PC 10 is different, the printers 20a and 20b will be described below by using the printer 20a as a representative unless otherwise specified.

図2は、各実施形態に適用可能な、PC10によるドライバプログラムの取得処理を、概略的に示す。PC10は、プリンタ20aを利用するためのドライバプログラムを取得する場合、先ず、プリンタ20aから、当該プリンタ20aを識別するための識別情報を取得する(ステップS1、ステップS2)。プリンタ20aを識別するための識別情報としては、例えばPnP(プラグアンドプレイ)デバイスIDを適用することができる。   FIG. 2 schematically shows a driver program acquisition process by the PC 10 applicable to each embodiment. When acquiring a driver program for using the printer 20a, the PC 10 first acquires identification information for identifying the printer 20a from the printer 20a (steps S1 and S2). As identification information for identifying the printer 20a, for example, a PnP (plug and play) device ID can be applied.

PC10は、プリンタ20aの識別情報を取得すると、サーバ30に対して、取得した識別情報と、プリンタ20aに対応するドライバプログラムの要求とを送信する(ステップS3)。ここで、サーバ30は、プリンタのドライバプログラムの属性情報を、プリンタの複数の機種に関連付けてそれぞれ記憶する。ドライバプログラムの属性情報は、少なくとも、対応するドライバプログラムを取得するための取得情報を含む。取得情報は、例えば、ドライバプログラムのネットワーク40上、または、ネットワーク40を介して接続されるインターネット上での位置を示すURL(Uniform Resource Locator)を含む。サーバ30がドライバプログラムを記憶している場合は、取得情報は、サーバ30におけるドライバプログラムの記憶領域の、ネットワーク40上での位置を示すURLを用いることができる。   When acquiring the identification information of the printer 20a, the PC 10 transmits the acquired identification information and a request for a driver program corresponding to the printer 20a to the server 30 (step S3). Here, the server 30 stores the attribute information of the printer driver program in association with a plurality of printer models. The attribute information of the driver program includes at least acquisition information for acquiring the corresponding driver program. The acquired information includes, for example, a URL (Uniform Resource Locator) indicating the location of the driver program on the network 40 or the Internet connected via the network 40. When the server 30 stores the driver program, the acquisition information can be a URL indicating the location on the network 40 of the storage area of the driver program in the server 30.

サーバ30は、PC10から送信された要求および識別情報に従い、識別情報に対応するドライバプログラムの属性情報を、記憶している属性情報から検索し、検索された1以上の属性情報をPC10に送信する(ステップS4)。PC10は、サーバ30から送信された1以上の属性情報に基づき、インストールを行いたいドライバプログラムを選択する(ステップS5)。PC10は、選択されたドライバプログラムに対応する属性情報に含まれる取得情報に従い、ドライバプログラムのダウンロード(DL)を要求する(ステップS6)。   The server 30 searches the stored attribute information for attribute information of the driver program corresponding to the identification information in accordance with the request and identification information transmitted from the PC 10, and transmits the retrieved one or more attribute information to the PC 10. (Step S4). The PC 10 selects a driver program to be installed based on the one or more attribute information transmitted from the server 30 (step S5). The PC 10 requests download (DL) of the driver program according to the acquired information included in the attribute information corresponding to the selected driver program (step S6).

図2の例では、説明のため、サーバ30がドライバプログラムを記憶しているように示しているが、これはこの例に限定されない。例えば、ドライバプログラムは、ネットワーク40上の他のサーバや、ネットワーク40を介して接続されるインターネット上のサーバが記憶していてもよい。   In the example of FIG. 2, for the sake of explanation, the server 30 is shown as storing a driver program, but this is not limited to this example. For example, the driver program may be stored in another server on the network 40 or a server on the Internet connected via the network 40.

PC10は、ステップS6のダウンロード要求に応じてダウンロードされたドライバプログラムを取得する(ステップS7)。PC10は、取得したドライバプログラムを自身にインストールする(ステップS8)。これにより、PC10からのプリンタ20aの利用が可能になる。   The PC 10 acquires the downloaded driver program in response to the download request in step S6 (step S7). The PC 10 installs the acquired driver program in itself (step S8). As a result, the printer 20a can be used from the PC 10.

図3は、各実施形態に適用可能なPC10のハードウェア構成の例を示す。図3において、PC10は、CPU(Central Processing Unit)1000と、ROM(Read Only Memory)1001と、RAM(Random Access Memory)1002と、ストレージ1005と、グラフィクスI/F1003と、入出力I/F1006と、通信I/F1008とがバス1010を介して互いに通信可能に接続されている。   FIG. 3 shows an example of the hardware configuration of the PC 10 applicable to each embodiment. In FIG. 3, a PC 10 includes a CPU (Central Processing Unit) 1000, a ROM (Read Only Memory) 1001, a RAM (Random Access Memory) 1002, a storage 1005, a graphics I / F 1003, and an input / output I / F 1006. The communication I / F 1008 is connected to be communicable with each other via a bus 1010.

CPU1000は、ROM1001やストレージ1005に予め記憶されるプログラムに従い、RAM1002をワークメモリとして用いて、このPC10の全体の動作を制御する。ストレージ1005は、ハードディスクドライブや不揮発性の半導体メモリ(フラッシュメモリ)からなり、CPU1000が動作するためのプログラムや、各種データが格納される。   The CPU 1000 controls the overall operation of the PC 10 using the RAM 1002 as a work memory in accordance with a program stored in the ROM 1001 or the storage 1005 in advance. The storage 1005 includes a hard disk drive and a non-volatile semiconductor memory (flash memory), and stores a program for operating the CPU 1000 and various data.

グラフィクスI/F1003は、CPU1000によりプログラムに従い生成された表示制御信号を、ディスプレイ1004で表示可能な表示信号に変換してディスプレイ1004に供給する。ディスプレイ1004は、例えばLCD(Liquid Crystal Display)を表示デバイスとして用い、グラフィクスI/F1003から供給された表示信号に従った画面を表示デバイスに表示させる。   The graphics I / F 1003 converts the display control signal generated according to the program by the CPU 1000 into a display signal that can be displayed on the display 1004, and supplies the display signal to the display 1004. The display 1004 uses, for example, an LCD (Liquid Crystal Display) as a display device, and displays a screen according to a display signal supplied from the graphics I / F 1003 on the display device.

入出力I/F1006は、外部機器との間で通信を行うインタフェースである。図3の例では、入出力I/F1006に対して、外部機器としてキーボードやポインティングデバイス(マウスなど)を含む操作部1007が接続されている。入出力I/F1006は、これに限らず、CD(Compact Disk)やDVD(Digital Versatile Disk)といったディスク記憶媒体からのデータの読み出しなどを行うドライブ装置や、不揮発性の半導体メモリなどのストレージを接続してもよい。入出力I/F1006としては、例えばUSBを用いることができる。   The input / output I / F 1006 is an interface that performs communication with an external device. In the example of FIG. 3, an operation unit 1007 including a keyboard and a pointing device (such as a mouse) is connected to the input / output I / F 1006 as an external device. The input / output I / F 1006 is not limited to this, and connects a drive device that reads data from a disk storage medium such as a CD (Compact Disk) or a DVD (Digital Versatile Disk), or a storage such as a nonvolatile semiconductor memory. May be. As the input / output I / F 1006, for example, a USB can be used.

通信I/F1008は、CPU1000の制御に従い、TCP/IP(Transmission Control Protocol/Internet Protocol)など所定のプロトコルを用いて、ネットワーク40を介した通信を行う。   The communication I / F 1008 performs communication via the network 40 using a predetermined protocol such as TCP / IP (Transmission Control Protocol / Internet Protocol) under the control of the CPU 1000.

図4は、各実施形態に適用可能なサーバ30のハードウェア構成の例を示す。図4において、サーバ30は、CPU3000と、ROM3001と、RAM3002と、ストレージ3003と、通信I/F3004とを含み、これら各部がバス3010により互いに通信可能に接続されている。   FIG. 4 shows an example of the hardware configuration of the server 30 applicable to each embodiment. In FIG. 4, the server 30 includes a CPU 3000, a ROM 3001, a RAM 3002, a storage 3003, and a communication I / F 3004, and these units are communicably connected to each other via a bus 3010.

ストレージ3003は、例えばハードディスクドライブや、フラッシュメモリといった不揮発性の半導体メモリであって、CPU3000上で動作するプログラムや各種データが格納されると共に、後述する、ドライバプログラムの属性情報が格納される。なお、ストレージ3003は、サーバ30に内蔵されている構成に限らず、サーバ30に対して外部接続されるものであってもよい。   The storage 3003 is a non-volatile semiconductor memory such as a hard disk drive or a flash memory, for example. The storage 3003 stores a program operating on the CPU 3000 and various data, and stores attribute information of a driver program, which will be described later. The storage 3003 is not limited to the configuration built in the server 30 and may be externally connected to the server 30.

CPU3000は、ROM3001やストレージ3003から読み出したプログラムに従い、RAM3002をワークメモリとして用いて、サーバ30の全体の動作を制御する。通信I/F3004は、CPU3000の制御に従い、例えばTCP/IPをプロトコルとして用いて、ネットワーク40を介した通信を行う。   The CPU 3000 controls the overall operation of the server 30 using the RAM 3002 as a work memory in accordance with a program read from the ROM 3001 or the storage 3003. The communication I / F 3004 performs communication via the network 40 using, for example, TCP / IP as a protocol under the control of the CPU 3000.

サーバ30の構成は、図4の例に限られず、例えば一般的なコンピュータと同様に、CPU3000により生成された画面情報に従った画面をディスプレイに表示させる表示制御部や、外部機器との間でのデータの入出力を行うデータI/F、ユーザ入力を受け付ける入力デバイスをさらに含んでいてもよい。   The configuration of the server 30 is not limited to the example shown in FIG. 4. For example, as with a general computer, the server 30 is configured between a display control unit that displays a screen according to the screen information generated by the CPU 3000 and an external device. It may further include a data I / F that inputs and outputs the data and an input device that accepts user input.

図5は、各実施形態に適用可能なプリンタ20aのハードウェア構成の例を示す。図5において、プリンタ20aは、CPU2000と、ROM2001と、RAM2002と、NVRAM(不揮発性RAM)2003と、ストレージ2006と、データI/F2007と、通信I/F2008と、機能部I/F2004とを含み、これら各部がバス2010により互いに通信可能に接続される。   FIG. 5 shows an example of the hardware configuration of the printer 20a applicable to each embodiment. In FIG. 5, the printer 20a includes a CPU 2000, a ROM 2001, a RAM 2002, an NVRAM (nonvolatile RAM) 2003, a storage 2006, a data I / F 2007, a communication I / F 2008, and a functional unit I / F 2004. These units are communicably connected to each other via a bus 2010.

ストレージ2006は、ハードディスクドライブや、フラッシュメモリといった不揮発性メモリであって、CPU2000を動作させるためのプログラムや、各種のデータが記憶される。ROM2001は、例えばプリンタ20aを起動させるために用いるプログラムおよびデータや、このプリンタ20aの機種を識別する識別情報(例えばPnPデバイスID)が予め記憶される。NVRAM2003は、プリンタ20aに対して設定された設定値などが記憶される。CPU2000は、ストレージ2006およびROM2001に記憶されるプログラムと、ストレージ2006およびNVRAM2003に記憶される各データとに従い、RAM2002をワークメモリとして用いて、このプリンタ20aの全体の動作を制御する。   A storage 2006 is a non-volatile memory such as a hard disk drive or a flash memory, and stores a program for operating the CPU 2000 and various data. In the ROM 2001, for example, programs and data used for starting the printer 20a and identification information (for example, PnP device ID) for identifying the model of the printer 20a are stored in advance. The NVRAM 2003 stores setting values set for the printer 20a. The CPU 2000 controls the overall operation of the printer 20a using the RAM 2002 as a work memory in accordance with the programs stored in the storage 2006 and the ROM 2001 and the data stored in the storage 2006 and the NVRAM 2003.

データI/F2007は、外部機器に対するインタフェースであって、例えばUSBを適用できる。通信I/F2008は、CPU2000の制御に従い、例えばTCP/IPをプロトコルとして用いて、ネットワーク40を介した通信を行う。   The data I / F 2007 is an interface to an external device, and for example, USB can be applied. A communication I / F 2008 performs communication via the network 40 using, for example, TCP / IP as a protocol under the control of the CPU 2000.

機能部I/F2004は、プリンタ20aにおけるプリンタ機能を実現するためのプリンタエンジン2005に対するインタフェースである。機能部I/F2004は、プリンタエンジン2005とCPU2000との間のデータの調停処理や、制御情報の送受信などを行う。   A functional unit I / F 2004 is an interface to the printer engine 2005 for realizing a printer function in the printer 20a. A functional unit I / F 2004 performs data arbitration processing between the printer engine 2005 and the CPU 2000, transmission / reception of control information, and the like.

なお、スキャナの場合、プリンタエンジン2005の代わりに、スキャナ機能を実現するためのスキャナエンジンが接続される。また、MFPの場合、MFPが実行可能な複数の機能、例えばスキャナ機能、プリンタ機能およびFAX機能をそれぞれ実現するためのスキャナエンジン、プリンタエンジンおよびFAXユニットが機能部I/F2004に接続される。   In the case of a scanner, a scanner engine for realizing the scanner function is connected instead of the printer engine 2005. In the case of an MFP, a scanner engine, a printer engine, and a FAX unit for realizing a plurality of functions that can be executed by the MFP, for example, a scanner function, a printer function, and a FAX function, are connected to the function unit I / F 2004.

(第1の実施形態)
次に、第1の実施形態について説明する。第1の実施形態では、サーバ30が記憶する各ドライバプログラムについて、同一機種に適用可能な複数のドライバプログラムそれぞれの属性情報に対して、予め優先順位を定める。そして、上述した図2におけるステップS5の、ドライバプログラムの選択処理において、この優先順位に従いPC10に適合したドライバプログラムが選択されるようにした。
(First embodiment)
Next, a first embodiment will be described. In the first embodiment, for each driver program stored in the server 30, a priority order is determined in advance for attribute information of each of a plurality of driver programs applicable to the same model. In the driver program selection process in step S5 in FIG. 2 described above, a driver program suitable for the PC 10 is selected according to this priority order.

図6は、第1の実施形態に係るPC10の機能を説明するための一例の機能ブロック図である。PC10は、制御部100と、通信部101と、インストーラ102と、表示部103と、入力部104とを含む。これら制御部100、通信部101、インストーラ102、表示部103および入力部104は、CPU1000上で動作するプログラムにより実現される。これに限らず、これら制御部100、通信部101、インストーラ102、表示部103および入力部104の一部または全部を、互いに協働して動作するハードウェア回路により構成してもよい。   FIG. 6 is an exemplary functional block diagram for explaining functions of the PC 10 according to the first embodiment. The PC 10 includes a control unit 100, a communication unit 101, an installer 102, a display unit 103, and an input unit 104. The control unit 100, the communication unit 101, the installer 102, the display unit 103, and the input unit 104 are realized by a program that operates on the CPU 1000. Not limited to this, some or all of the control unit 100, the communication unit 101, the installer 102, the display unit 103, and the input unit 104 may be configured by hardware circuits that operate in cooperation with each other.

制御部100は、プログラムに従い各種の判定処理などを行い、このPC10の全体の動作を制御する。通信部101は、入出力I/F1006や通信I/F1008による通信を制御する。インストーラ102は、PC10に対するドライバプログラムのインストール処理を実行する。表示部103は、グラフィクスI/F1003を制御してディスプレイ1004に対して画像を表示させる。入力部104は、操作部1007に対してなされた入力を受け付ける。   The control unit 100 performs various determination processes according to the program and controls the overall operation of the PC 10. The communication unit 101 controls communication by the input / output I / F 1006 and the communication I / F 1008. The installer 102 executes a driver program installation process for the PC 10. The display unit 103 controls the graphics I / F 1003 to display an image on the display 1004. The input unit 104 receives an input made on the operation unit 1007.

図7は、第1の実施形態に係るインストーラ102の機能を説明するための一例の機能ブロック図である。インストーラ102は、インストール部120と、選択部121とを含み、選択部121は、PDL判定部1210と、表示言語判定部1211と、アーキテクチャ判定部1212とを含む。   FIG. 7 is a functional block diagram illustrating an example of functions of the installer 102 according to the first embodiment. The installer 102 includes an installation unit 120 and a selection unit 121, and the selection unit 121 includes a PDL determination unit 1210, a display language determination unit 1211, and an architecture determination unit 1212.

インストール部120は、ドライバプログラムのPC10へのインストール処理を実行する。選択部121は、各属性情報に対して予め定められた優先順位に基づき、サーバ30から取得した属性情報の順位を判定し、判定結果に従いインストールすべきドライバプログラムを選択する。   The installation unit 120 executes installation processing of the driver program on the PC 10. The selection unit 121 determines the order of the attribute information acquired from the server 30 based on the priority order determined in advance for each attribute information, and selects a driver program to be installed according to the determination result.

より具体的には、選択部121は、PDL判定部1210と、表示言語判定部1211と、アーキテクチャ判定部1212とを含む。PDL判定部1210は、PDL(Page Description Language)の種類に対して予め定められた優先順位を示す情報を有し、この優先順位に基づいた判定処理を行う。優先順位を示す情報は、例えば、PDL判定部1210が含まれるインストーラ102を実現するプログラム中に埋め込んでおいてもよいし、独立したデータとしてインストーラ102と共に提供され、ストレージ1005などに記憶しておいてもよい。   More specifically, the selection unit 121 includes a PDL determination unit 1210, a display language determination unit 1211, and an architecture determination unit 1212. The PDL determination unit 1210 has information indicating a predetermined priority order for a PDL (Page Description Language) type, and performs a determination process based on the priority order. The information indicating the priority order may be embedded in, for example, a program that implements the installer 102 including the PDL determination unit 1210, or provided as independent data together with the installer 102 and stored in the storage 1005 or the like. May be.

表示言語判定部1211は、PC10のOS(Operating System)が現在表示している表示言語に従い、インストールすべきドライバプログラムの表示言語を判定する。アーキテクチャ判定部1212は、PC10のOSの情報に基づき、インストールすべきドライバプログラムのアーキテクチャを判定する。   The display language determination unit 1211 determines the display language of the driver program to be installed according to the display language currently displayed by the OS (Operating System) of the PC 10. The architecture determination unit 1212 determines the architecture of the driver program to be installed based on the OS information of the PC 10.

PC10において第1の実施形態に係る各機能を実現するための情報処理プログラムは、インストール可能な形式また実行可能な形式のファイルでCD(Compact Disk)、フレキシブルディスク(FD)、DVD(Digital Versatile Disk)などのコンピュータで読み取り可能な記録媒体に記録して提供される。これに限らず、情報処理プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、当該ネットワークを介してダウンロードさせることにより提供してもよい。また、情報処理プログラムをインターネットなどのネットワークを経由して提供または配布するように構成してもよい。   An information processing program for realizing each function according to the first embodiment in the PC 10 is a file in an installable format or an executable format, which is a CD (Compact Disk), a flexible disk (FD), a DVD (Digital Versatile Disk). ) And the like are provided by being recorded on a computer-readable recording medium. However, the present invention is not limited thereto, and the information processing program may be provided by being stored on a computer connected to a network such as the Internet and downloaded via the network. The information processing program may be provided or distributed via a network such as the Internet.

情報処理プログラムは、上述した各部(制御部100、通信部101、インストーラ102、表示部103および入力部104)を含むモジュール構成となっている。実際のハードウェアとしては、CPU1000がストレージ1005などの記憶媒体から当該情報処理プログラムを読み出して実行することにより、上述した各部がRAM1002などの主記憶装置上にロードされ、制御部100、通信部101、インストーラ102、表示部103および入力部104が主記憶装置上に生成されるようになっている。   The information processing program has a module configuration including the above-described units (the control unit 100, the communication unit 101, the installer 102, the display unit 103, and the input unit 104). As actual hardware, the CPU 1000 reads the information processing program from a storage medium such as the storage 1005 and executes the information processing program, whereby the above-described units are loaded on a main storage device such as the RAM 1002, and the control unit 100 and the communication unit 101. The installer 102, the display unit 103, and the input unit 104 are generated on the main storage device.

図8は、第1の実施形態に適用可能なプリンタ20aの機能を説明するための一例の機能ブロック図である。プリンタ20aは、通信部200と、機器情報記憶部201と、プリンタ機能部202とを含む。これら通信部200、機器情報記憶部201およびプリンタ機能部202は、CPU2000で動作するプログラムにより実現される。これに限らず、これら通信部200、機器情報記憶部201およびプリンタ機能部202の一部または全部を、互いに協働して動作するハードウェア回路により構成してもよい。   FIG. 8 is a functional block diagram illustrating an example of the functions of the printer 20a applicable to the first embodiment. The printer 20 a includes a communication unit 200, a device information storage unit 201, and a printer function unit 202. The communication unit 200, the device information storage unit 201, and the printer function unit 202 are realized by a program operating on the CPU 2000. Not limited to this, some or all of the communication unit 200, the device information storage unit 201, and the printer function unit 202 may be configured by hardware circuits that operate in cooperation with each other.

通信部200は、データI/F2007や通信I/F2008による通信を制御する。機器情報記憶部201は、通信I/F2008が備えるレジスタやROM2001などに予め記憶された、プリンタ20aの識別情報(例えばPnPデバイスID)や、プリンタ20aの仕向け先を示す情報の読み出しを制御する。なお、仕向け先は、当該プリンタ20aの出荷先に設定された地域であり、例えば「国内」および「海外」である。仕向け先は、当該プリンタ20aで用いられるデフォルトの言語に関連する。プリンタ機能部202は、プリンタ20aにおける印刷機能を制御する。   The communication unit 200 controls communication by the data I / F 2007 and the communication I / F 2008. The device information storage unit 201 controls reading of identification information (for example, a PnP device ID) of the printer 20a and information indicating a destination of the printer 20a, which are stored in advance in a register provided in the communication I / F 2008, the ROM 2001, or the like. The destination is an area set as the shipping destination of the printer 20a, for example, “domestic” and “overseas”. The destination is related to the default language used in the printer 20a. The printer function unit 202 controls the printing function in the printer 20a.

図9は、第1の実施形態に適用可能なサーバ30の機能を説明するための一例の機能ブロック図である。サーバ30は、通信部300と、配信部301と、ドライバ属性情報記憶部302とを含む。これら通信部300、配信部301およびドライバ属性情報記憶部302は、CPU3000上で動作するプログラムにより実現される。これに限らず、これら通信部300、配信部301およびドライバ属性情報記憶部302の一部または全部を、互いに協働して動作するハードウェア回路により構成してもよい。   FIG. 9 is a functional block diagram of an example for explaining the functions of the server 30 applicable to the first embodiment. The server 30 includes a communication unit 300, a distribution unit 301, and a driver attribute information storage unit 302. The communication unit 300, the distribution unit 301, and the driver attribute information storage unit 302 are realized by a program that operates on the CPU 3000. Not limited to this, some or all of the communication unit 300, the distribution unit 301, and the driver attribute information storage unit 302 may be configured by hardware circuits that operate in cooperation with each other.

通信部300は、通信I/F3004による通信を制御する。ドライバ属性情報記憶部302は、例えばストレージ3003に記憶される複数のドライバプログラムの属性情報の読み出しなどを制御する。配信部301は、通信部300により受信された要求に従い、ドライバ属性情報記憶部302に対してドライバプログラムの属性情報を要求し、ドライバ属性情報記憶部302から渡された属性情報を通信部300から送信する。また、ストレージ3003にドライバプログラムの本体が記憶されている場合、配信部301は、通信部300により受信された要求に従いドライバ属性情報記憶部302に対してドライバプログラムを要求し、ドライバ属性情報記憶部302から渡されたドライバプログラムを通信部300から送信する。   The communication unit 300 controls communication by the communication I / F 3004. The driver attribute information storage unit 302 controls reading of attribute information of a plurality of driver programs stored in the storage 3003, for example. The distribution unit 301 requests attribute information of the driver program from the driver attribute information storage unit 302 in accordance with the request received by the communication unit 300, and receives the attribute information passed from the driver attribute information storage unit 302 from the communication unit 300. Send. If the main body of the driver program is stored in the storage 3003, the distribution unit 301 requests the driver attribute information storage unit 302 for the driver program in accordance with the request received by the communication unit 300, and the driver attribute information storage unit The driver program passed from 302 is transmitted from the communication unit 300.

表1は、サーバ30の例えばストレージ3003に記憶される、ドライバプログラムの属性情報の例を示す。表1において、1行に、1つのドライバプログラムの属性情報が記述されている。属性情報は、「識別情報」、「ドライバアーキテクチャ」、「PDL」、「表示言語」、「バージョン」および「取得情報」の各項目を含む。各属性情報は、これら各項目の組み合わせにより区別される。すなわち、各項目について同一の内容の複数の属性情報が存在する。   Table 1 shows an example of driver program attribute information stored in, for example, the storage 3003 of the server 30. In Table 1, one driver program attribute information is described in one line. The attribute information includes items of “identification information”, “driver architecture”, “PDL”, “display language”, “version”, and “acquisition information”. Each attribute information is distinguished by a combination of these items. That is, a plurality of attribute information having the same content exists for each item.

Figure 2017134752
Figure 2017134752

表1において、項目「識別情報」は、その行の属性情報のドライバプログラムが対応する機器の機種を識別するための識別情報であって、例えばPnPデバイスIDが用いられる。表1の例では、項目「識別情報」の値として、プリンタの機種「プリンタ#A」、「プリンタ#B」および「プリンタ#C」が例示されている。   In Table 1, the item “identification information” is identification information for identifying the model of the device to which the driver program of the attribute information in the row corresponds, and for example, a PnP device ID is used. In the example of Table 1, printer types “printer #A”, “printer #B”, and “printer #C” are illustrated as values of the item “identification information”.

項目「ドライバアーキテクチャ」は、当該ドライバプログラムに適用されているアーキテクチャを示す。ドライバプログラムのアーキテクチャは、そのドライバプログラムの仕組みを示す。表1の例では、項目「ドライバアーキテクチャ」は、ドライバアーキテクチャとして、そのドライバプログラムが32ビットOSおよび64ビットOSの何れで動作可能であるかを示す値と、ドライバアーキテクチャの機能を示す値(高機能、中機能)とを含んでいる。   The item “driver architecture” indicates an architecture applied to the driver program. The driver program architecture indicates the mechanism of the driver program. In the example of Table 1, the item “driver architecture” includes a value indicating whether the driver program can operate on a 32-bit OS or a 64-bit OS as a driver architecture, and a value indicating a function of the driver architecture (high Function, medium function).

これら高機能および中機能のドライバアーキテクチャによるドライバプログラム(それぞれ高機能ドライバ、中機能ドライバと呼ぶ)をPC10に適用可能か否かは、例えば、当該PC10のOSのバージョンに依存する。一例として、高機能のドライバアーキテクチャによるドライバプログラムは、所定以上のバージョンのOSが対応可能である。   Whether or not a driver program based on these high-function and medium-function driver architectures (referred to as a high-function driver and a medium-function driver, respectively) can be applied to the PC 10 depends on, for example, the OS version of the PC 10. As an example, a driver program based on a high-performance driver architecture can be used by an OS of a predetermined version or higher.

機能を示す値は、例えば、ドライバアーキテクチャ自身のバージョン情報を用いることができる。ドライバプログラムが対応するOSがWindows(登録商標)であれば、例えば、ドライバアーキテクチャのVersion 4(V4)、Version 3(V3)を適用することができる。V4は、V3に対して、より高機能のドライバプログラムを提供可能である。この例では、V4は、Windows8(登録商標)以降のバージョンのOSが対応可能であり、V3は、Windows2000(登録商標)以降のバージョンのOSが対応可能である。   As the value indicating the function, for example, version information of the driver architecture itself can be used. If the OS corresponding to the driver program is Windows (registered trademark), for example, version 4 (V4) and version 3 (V3) of the driver architecture can be applied. V4 can provide a higher-function driver program than V3. In this example, V4 is compatible with Windows 8 (registered trademark) or later OS, and V3 is compatible with Windows 2000 (registered trademark) or later OS.

項目「PDL」は、そのドライバプログラムが対応するPDLの種類を示す。表1の例では、項目「PDL」の値として、PDLの種類「PDL#1」、「PDL#2」および「PDL#3」が例示されている。   The item “PDL” indicates the type of PDL corresponding to the driver program. In the example of Table 1, as the value of the item “PDL”, the types of PDL “PDL # 1”, “PDL # 2”, and “PDL # 3” are exemplified.

PDLは、ページ記述言語であって、例えば、コンピュータなどで作成された画像情報や文字情報などを、プリンタが印刷可能に解釈できる形式に変換した言語である。換言すれば、PDLは、プリンタに対する命令種類、命令形式、あるいは、命令セットであるといえる。このPDLの概念は、コンピュータが制御する、プリンタ以外の外部機器に対する命令言語、命令種類、命令形式、命令セットなどにも拡張可能である。代表的なPDLの種類の例としては、RPCS(Refined Printing Command Stream)、PCL6(Printer Command Language 6)、PS(PostScript(登録商標))が挙げられる。   PDL is a page description language, for example, a language in which image information or character information created by a computer or the like is converted into a format that can be interpreted by a printer. In other words, the PDL can be said to be a command type, a command format, or a command set for the printer. The concept of PDL can be extended to a command language, a command type, a command format, a command set, etc. for an external device other than a printer controlled by a computer. Examples of typical types of PDL include RPCS (Refined Printing Command Stream), PCL6 (Printer Command Language 6), and PS (PostScript (registered trademark)).

ここで、機種「プリンタ#A」のプリンタは、PDL種類「PDL#1」、「PDL#2」および「PDL#3」のうちPDL種類「PDL#1」に対応するプリンタドライバを用いた場合に、最も高い機能あるいは多くの機能を実現でき、PDL種類「PDL#2」、「PDL#3」の順に機能が制限されるものとする。同様に、機種「プリンタ#B」のプリンタは、PDL種類「PDL#2」に対応するプリンタドライバを用いた場合に最も高い機能あるいは多くの機能を実現でき、PDL種類「PDL#3」では機能が制限され、PDL種類「PDL#1」には対応していないものとする。また、機種「プリンタ#C」のプリンタは、PDL種類「PDL#1」、「PDL#2」および「PDL#3」のうちPDL種類「PDL#1」に対応し、他のPDL種類には対応していないものとする。   Here, the printer of the model “printer #A” uses a printer driver corresponding to the PDL type “PDL # 1” among the PDL types “PDL # 1”, “PDL # 2”, and “PDL # 3”. In addition, the highest function or many functions can be realized, and the functions are limited in the order of PDL types “PDL # 2” and “PDL # 3”. Similarly, the printer of the model “printer #B” can realize the highest function or many functions when the printer driver corresponding to the PDL type “PDL # 2” is used, and the PDL type “PDL # 3” has a function. Are restricted, and the PDL type “PDL # 1” is not supported. Further, the printer of the model “printer #C” corresponds to the PDL type “PDL # 1” among the PDL types “PDL # 1”, “PDL # 2”, and “PDL # 3”, and other PDL types include It is not supported.

項目「表示言語」は、そのドライバプログラムが対応する、OSの表示言語を示す。表1の例では、項目「表示言語」の値として「日本語」および「英語」が含まれている。項目「バージョン」は、そのドライバプログラムのバージョン情報を示す値が含まれる。   The item “display language” indicates a display language of the OS corresponding to the driver program. In the example of Table 1, “Japanese” and “English” are included as the value of the item “display language”. The item “version” includes a value indicating version information of the driver program.

項目「取得情報」は、そのドライバプログラムを取得するための情報を示す。項目「取得情報」は、ドライバプログラムを取得するための情報として、例えば、上述した、そのドライバプログラムが置かれるインターネット上、ネットワーク40上、ネットワーク40に接続されるサーバ30上の位置を示すURLを用いることができる。   The item “acquisition information” indicates information for acquiring the driver program. The item “acquisition information” includes, for example, the above-described URL indicating the location on the Internet, the network 40, and the server 30 connected to the network 40 as the information for acquiring the driver program. Can be used.

次に、第1の実施形態に係るドライバプログラムのPC10に対する導入処理について、より具体的に説明する。図10は、第1の実施形態に係るドライバプログラムのPC10への導入処理の流れを示す一例のシーケンス図である。なお、図10において、上述した図6〜図9と対応する部分には同一の符号を付して、詳細な説明を省略する。   Next, the installation process of the driver program for the PC 10 according to the first embodiment will be described more specifically. FIG. 10 is a sequence diagram illustrating an example of a process flow for introducing the driver program according to the first embodiment into the PC 10. 10, parts corresponding to those in FIGS. 6 to 9 described above are denoted by the same reference numerals, and detailed description thereof is omitted.

例えば、PC10に対するユーザ操作によりドライバプログラムのインストールが指示される(ステップS100)。ユーザ操作は、PC10において入力部104に受け付けられ、制御部100に渡される。制御部100は、渡された指示に従い、通信部101を介して、プリンタ20aに対して識別情報と、プリンタ20aの仕向け先を示す仕向け情報とを要求する問い合わせを行う(ステップS101、ステップS102)。この問い合わせは、プリンタ20aにおいて通信部200に受信され、機器情報記憶部201に渡される(ステップS103)。   For example, installation of a driver program is instructed by a user operation on the PC 10 (step S100). The user operation is accepted by the input unit 104 in the PC 10 and passed to the control unit 100. The control unit 100 makes an inquiry for requesting identification information and destination information indicating the destination of the printer 20a to the printer 20a via the communication unit 101 in accordance with the received instruction (steps S101 and S102). . This inquiry is received by the communication unit 200 in the printer 20a and passed to the device information storage unit 201 (step S103).

なお、プリンタ20aに対する識別情報の問い合わせは、ネットワーク40経由の場合、SNMP(Simple Network Management Protocol)におけるMIB(Management Information Base)のOID(Object IDentifier)から取得することができる。また、プリンタ20bのように、PC10にUSBにより接続される場合には、PJL(Printer Job Language)コマンドをPC10からプリンタ20aに送信し、その応答に基づき識別情報を取得する技術が知られている。   The inquiry about the identification information to the printer 20a can be acquired from the OID (Object IDentifier) of MIB (Management Information Base) in SNMP (Simple Network Management Protocol) when the network 40 is used. In addition, when connected to the PC 10 by USB like the printer 20b, a technique for transmitting a PJL (Printer Job Language) command from the PC 10 to the printer 20a and acquiring identification information based on the response is known. .

機器情報記憶部201は、例えば通信I/F2008のレジスタやROM2001から、予め記憶される識別情報および仕向け情報を読み出す。機器情報記憶部201に読み出された識別情報および仕向け情報は、通信部200を介してPC10に送信される(ステップS104、ステップS105)。プリンタ20aから送信された識別情報および仕向け情報は、PC10において通信部101に受信され、制御部100に渡される(ステップS106)。すなわち、制御部100は、プリンタ20aの機種を識別する識別情報を取得する識別情報取得部としても機能する。   The device information storage unit 201 reads identification information and destination information stored in advance from, for example, a register of the communication I / F 2008 or the ROM 2001. The identification information and the destination information read to the device information storage unit 201 are transmitted to the PC 10 via the communication unit 200 (steps S104 and S105). The identification information and the destination information transmitted from the printer 20a are received by the communication unit 101 in the PC 10 and passed to the control unit 100 (step S106). That is, the control unit 100 also functions as an identification information acquisition unit that acquires identification information for identifying the model of the printer 20a.

制御部100は、ステップS107で、PC10のOSの情報(以下、OS情報)を取得する。ここで取得されるOS情報は、少なくとも、OSのバージョンを示すOSバージョン情報と、OSが32ビットOSおよび64ビットOSの何れであるかといったアーキテクチャを示す情報とを含む。   In step S107, the control unit 100 acquires OS information of the PC 10 (hereinafter referred to as OS information). The OS information acquired here includes at least OS version information indicating the version of the OS and information indicating the architecture such as whether the OS is a 32-bit OS or a 64-bit OS.

次に、制御部100は、ステップS106で取得したプリンタ20aの識別情報と、ステップS107で取得したOS情報とに基づき、識別情報およびOS情報に対応するドライバプログラムの属性情報の検索を要求する検索要求を、通信部101を介してサーバ30に送信する(ステップS108、ステップS109)。   Next, based on the identification information of the printer 20a acquired in step S106 and the OS information acquired in step S107, the control unit 100 performs a search requesting a search for the identification information and attribute information of the driver program corresponding to the OS information. The request is transmitted to the server 30 via the communication unit 101 (step S108, step S109).

図11は、第1の実施形態に適用可能な、ステップS108、ステップS109で制御部100からサーバ30に送信される検索要求の例を示す。図11に例示されるように、検索要求は、例えば、サーバ30の検索先のURLおよび検索要求コマンド("https://1.example.com/Sreach/Web?Query")に対して、検索コマンドにおける検索条件である識別情報("PrinterA")とOS情報("32bit")とが引数として付加されて構成される。なお、OS情報は、OSバージョン情報やOS名を明示的に示していてもよい。また、適用可能なOSが予め制限されている場合は、図11の例のように、OSのアーキテクチャを示す情報("32bit")のみを指定することで、OSを特定することが可能である。   FIG. 11 shows an example of a search request that is applicable to the first embodiment and is transmitted from the control unit 100 to the server 30 in step S108 and step S109. As illustrated in FIG. 11, for example, the search request is a search with respect to a search destination URL of the server 30 and a search request command (“https://1.example.com/Sreach/Web?Query”). The identification information ("PrinterA") and the OS information ("32bit") that are search conditions in the command are added as arguments. The OS information may explicitly indicate OS version information or an OS name. If the applicable OS is limited in advance, it is possible to specify the OS by specifying only the information (“32 bit”) indicating the OS architecture, as in the example of FIG. .

ステップS109でPC10から送信された検索要求は、サーバ30において通信部300により受信される。通信部300は、例えば、受信した検索要求を配信部301に渡す。配信部301は、通信部300から渡された検索要求に含まれる検索コマンドに従い、検索条件をドライバ属性情報記憶部302に渡し、ドライバ属性情報記憶部302に対して検索条件に適合するドライバプログラムの属性情報の検索を要求する。ドライバ属性情報記憶部302は、この要求に応じて、配信部301から渡された検索条件(この例では、識別情報およびOS情報)に適合するドライバプログラムの属性情報を記憶している属性情報から検索し、検索結果として得られた属性情報を一覧として配信部301に渡す。   The search request transmitted from the PC 10 in step S109 is received by the communication unit 300 in the server 30. For example, the communication unit 300 passes the received search request to the distribution unit 301. The distribution unit 301 passes the search condition to the driver attribute information storage unit 302 in accordance with the search command included in the search request passed from the communication unit 300, and the driver attribute information storage unit 302 stores the driver program that matches the search condition. Requests retrieval of attribute information. In response to this request, the driver attribute information storage unit 302 uses attribute information stored in the driver program attribute information that matches the search conditions (identification information and OS information in this example) passed from the distribution unit 301. The search is performed, and attribute information obtained as a search result is passed to the distribution unit 301 as a list.

配信部301は、ドライバ属性情報記憶部302から渡された属性情報一覧を、検索要求に応じた検索結果として、通信部300を介してPC10に送信する(ステップS110)。サーバ30から送信された検索結果は、PC10において、通信部101に受信されて制御部100に渡される(ステップS111)。すなわち、制御部100は、プリンタ20aの機種およびPC10のOS情報に対応するドライバプログラムの属性情報を取得する属性情報取得部としても機能する。   The distribution unit 301 transmits the attribute information list passed from the driver attribute information storage unit 302 to the PC 10 via the communication unit 300 as a search result corresponding to the search request (step S110). The search result transmitted from the server 30 is received by the communication unit 101 and passed to the control unit 100 in the PC 10 (step S111). That is, the control unit 100 also functions as an attribute information acquisition unit that acquires the attribute information of the driver program corresponding to the model of the printer 20a and the OS information of the PC 10.

図12は、第1の実施形態に適用可能な、サーバ30から送信される検索結果の例を示す。なお、図12において、特に記載の無い限り、各行の先頭の数字は説明のための行番号を示し、続くコロン(:)でデータ本体を示すコードと区別されている。また、図12に例示されるコードは、タグを用いてデータの意味や構造を定義して記述するマークアップ言語の一種であるXML(Extensible Markup Language)を用いて記述される。これは一例であって、検索結果の記述方式は、特に限定されない。例えば、検索結果は、JSON(JavaScript(登録商標) Object Notation)により記述してもよいし、バイナリ形式で記述してもよい。   FIG. 12 shows an example of a search result transmitted from the server 30 applicable to the first embodiment. In FIG. 12, unless otherwise specified, the numbers at the beginning of each line indicate line numbers for explanation, and are distinguished from codes that indicate the data body by the following colon (:). The code illustrated in FIG. 12 is described using XML (Extensible Markup Language), which is a kind of markup language described by defining the meaning and structure of data using tags. This is merely an example, and the search result description method is not particularly limited. For example, the search result may be described in JSON (JavaScript (registered trademark) Object Notation) or in a binary format.

図12において、第1行目でこのデータが記述されるXMLのバージョンと、エンコード方式とが定義され、第2行目の開始タグ「<Software>」と、4行目の終了タグ「</Software>」との間(第3行目)に、検索結果が記述される。検索結果は、1つのドライバプログラムに対応する属性情報が、1対の文字「<」および文字「>」により挟んで記述される。図12の例では、第3行目において、表1で説明した属性情報の各項目「識別情報」、「ドライバアーキテクチャ」、「PDL」、「表示言語」、「バージョン」および「取得情報」にそれぞれ対応する各値が、文字「<」に続けて「Driver name」、「DriverArchitecture」、「PDL」、「language」、「version」および「DownloadURL」として記述され、文字「>」で終了されている。   In FIG. 12, the XML version in which this data is described in the first line and the encoding method are defined. The start tag “<Software>” in the second line and the end tag “</ The search result is described between “Software>” (third line). The search result is described with attribute information corresponding to one driver program sandwiched between a pair of characters “<” and character “>”. In the example of FIG. 12, in the third line, the items “identification information”, “driver architecture”, “PDL”, “display language”, “version”, and “acquisition information” of the attribute information described in Table 1 are displayed. Each corresponding value is described as “Driver name”, “DriverArchitecture”, “PDL”, “language”, “version” and “DownloadURL” following the character “<”, and ends with the character “>”. Yes.

この1対の文字「<」および文字「>」で挟んだ属性情報の記述を、開始タグ「<Software>」および終了タグ「</Software>」の間に複数記述することで、複数の属性情報を含む検索結果を構成できる。   By describing multiple attribute information between the pair of character “<” and character “>” between start tag “<Software>” and end tag “</ Software>”, multiple attributes Search results including information can be constructed.

制御部100は、ステップS111で通信部101から渡された検索結果(属性情報一覧)に基づき、以下のステップS112〜ステップS118の処理により、PC10にインストールすべきドライバプログラムを特定する。   Based on the search result (list of attribute information) passed from the communication unit 101 in step S111, the control unit 100 identifies a driver program to be installed in the PC 10 by the processing in the following steps S112 to S118.

先ず、制御部100は、ステップS112およびステップS113で、ドライバプログラムのアーキテクチャによる絞り込みを行う。制御部100は、ステップS112で、ステップS111で取得した検索結果をインストーラ102に渡し、アーキテクチャによる絞り込みを行うよう、インストーラ102に指示する。インストーラ102において、アーキテクチャ判定部1212は、この指示に従い、渡された検索結果における項目「ドライバアーキテクチャ」に示される情報と、ステップS107で制御部100が取得したPC10のOS情報とに基づき、検索結果に含まれる各属性情報から、インストール候補のドライバプログラムに対応する属性情報を抽出する。   First, in step S112 and step S113, the control unit 100 narrows down by the driver program architecture. In step S112, the control unit 100 passes the search result acquired in step S111 to the installer 102, and instructs the installer 102 to narrow down by architecture. In the installer 102, the architecture determination unit 1212 follows the instruction, based on the information indicated in the item “driver architecture” in the passed search result and the OS information of the PC 10 acquired by the control unit 100 in step S 107. The attribute information corresponding to the installation candidate driver program is extracted from each attribute information included in.

図13は、第1の実施形態に係る、アーキテクチャ判定部1212による判定処理の例を示すフローチャートである。ステップS10で、アーキテクチャ判定部1212は、OS情報に基づき、PC10のOSが高機能ドライバに対応しているか否かを判定する。一例として、高機能ドライバは、特定のバージョンのOS(例えば高機能ドライバが開発された時点での最新のバージョンのOS)が対応しているものとし、アーキテクチャ判定部1212は、OS情報に示されるOSバージョン情報が、この特定のバージョンを示しているか否かを判定する。アーキテクチャ判定部1212は、対応していると判定した場合(ステップS10、「Yes」)、処理をステップS11に移行させる。   FIG. 13 is a flowchart illustrating an example of determination processing by the architecture determination unit 1212 according to the first embodiment. In step S10, the architecture determination unit 1212 determines whether the OS of the PC 10 corresponds to a high function driver based on the OS information. As an example, it is assumed that the high function driver corresponds to a specific version of the OS (for example, the latest version of the OS when the high function driver is developed), and the architecture determination unit 1212 is indicated in the OS information. It is determined whether or not the OS version information indicates this specific version. If it is determined that the architecture determination unit 1212 is compatible (step S10, “Yes”), the process proceeds to step S11.

ステップS11で、アーキテクチャ判定部1212は、検索結果である属性情報一覧における各属性情報の項目「ドライバアーキテクチャ」に、高機能ドライバを示す値が含まれるか否かを判定する。アーキテクチャ判定部1212は、含まれると判定した場合(ステップS11、「Yes」)、処理をステップS12に移行させる。   In step S11, the architecture determination unit 1212 determines whether or not the value “high-function driver” is included in the item “driver architecture” of each attribute information in the attribute information list that is the search result. If the architecture determination unit 1212 determines that it is included (step S11, “Yes”), the process proceeds to step S12.

ステップS12で、アーキテクチャ判定部1212は、インストール対象のドライバプログラムを、高機能ドライバに絞り込む。より具体的には、アーキテクチャ判定部1212は、ステップS112で取得した属性情報一覧に含まれる各属性情報のうち、項目「ドライバアーキテクチャ」の値が「高機能」である各属性情報を抽出する。アーキテクチャ判定部1212は、抽出した各属性情報を検索結果として制御部100に渡し(図10のステップS113)、図13のフローチャートによる一連の処理を終了させる。   In step S12, the architecture determination unit 1212 narrows down the driver programs to be installed to high-function drivers. More specifically, the architecture determination unit 1212 extracts attribute information whose item “driver architecture” is “high function” from among the attribute information included in the attribute information list acquired in step S112. The architecture determination unit 1212 passes the extracted attribute information to the control unit 100 as a search result (step S113 in FIG. 10), and ends a series of processes according to the flowchart in FIG.

アーキテクチャ判定部1212は、上述したステップS10においてPC10のOSが高機能ドライバに対応していないと判定した場合(ステップS10、「No」)、または、ステップS11で検索結果が高機能ドライバを含まないと判定した場合(ステップS11、「No」)、処理をステップS13に移行させる。ステップS13で、アーキテクチャ判定部1212は、ステップS112で取得した属性情報一覧に含まれる各属性情報のうち、項目「ドライバアーキテクチャ」の値が「中機能」である各属性情報を抽出する。   The architecture determination unit 1212 determines that the OS of the PC 10 does not support the high function driver in step S10 described above (step S10, “No”), or the search result does not include the high function driver in step S11. (Step S11, “No”), the process proceeds to step S13. In step S13, the architecture determination unit 1212 extracts each piece of attribute information whose item “driver architecture” is “medium function” from the pieces of attribute information included in the list of attribute information acquired in step S112.

アーキテクチャ判定部1212は、抽出した各属性情報を検索結果として制御部100に渡し(図10のステップS113)、図13のフローチャートによる一連の処理を終了させる。   The architecture determination unit 1212 passes the extracted attribute information to the control unit 100 as a search result (step S113 in FIG. 10), and ends a series of processes according to the flowchart in FIG.

なお、アーキテクチャ判定部1212は、図13のフローチャートの処理において、OS情報に基づき、OSが32ビットOSおよび64ビットOSの何れであるかを示す情報をさらに用いて各判定を行うことができる。一例として、高機能ドライバが64ビットOSに対応し、32ビットOSに対応しておらず、OS情報が32ビットOSを示している場合、ステップS10の判定において、高機能ドライバが対応していないOSであると判定される(ステップS10、「No」)。また、ステップS13において、インストール対象のドライバを中機能ドライバに絞り込む際に、この32ビットOSおよび64ビットOSを示すOS情報に基づき、中機能ドライバに対してさらに絞りこみを行う。   The architecture determination unit 1212 can make each determination using the information indicating whether the OS is a 32-bit OS or a 64-bit OS based on the OS information in the process of the flowchart of FIG. As an example, if the high-function driver corresponds to a 64-bit OS, does not support a 32-bit OS, and the OS information indicates a 32-bit OS, the high-function driver does not support the determination in step S10. The OS is determined (step S10, “No”). In step S13, when narrowing down the installation target driver to the medium function driver, the medium function driver is further narrowed down based on the OS information indicating the 32-bit OS and the 64-bit OS.

図10の説明に戻り、次に、制御部100は、ステップS114〜ステップS116で、表示言語による絞り込みを行う。制御部100は、ステップS114で、上述した図13のフローチャートの処理に従いステップS113で渡された検索結果と、ステップS106で取得した仕向け情報とをインストーラ102に渡し、表示言語による絞り込みを行うよう、インストーラ102に指示する。インストーラ102において、表示言語判定部1211は、この指示に応じて、PC10のOSから、現在設定されている表示言語(日本語、英語、など)を取得する(ステップS115)。表示言語判定部1211は、渡された検索結果における項目「表示言語」に示される情報と、ステップS115で制御部100が取得した表示言語とに基づき、検索結果に含まれる各属性情報から、インストール候補のドライバプログラムに対応する属性情報を抽出する。   Returning to the description of FIG. 10, next, the control unit 100 narrows down the display language in steps S <b> 114 to S <b> 116. In step S114, the control unit 100 passes the search result passed in step S113 and the destination information acquired in step S106 to the installer 102 in accordance with the process of the flowchart of FIG. The installer 102 is instructed. In the installer 102, the display language determination unit 1211 acquires the currently set display language (Japanese, English, etc.) from the OS of the PC 10 in response to this instruction (step S115). The display language determination unit 1211 installs from each attribute information included in the search result based on the information indicated in the item “display language” in the passed search result and the display language acquired by the control unit 100 in step S115. Attribute information corresponding to the candidate driver program is extracted.

図14は、第1の実施形態に係る、表示言語判定部1211による判定処理の例を示すフローチャートである。ステップS20で、表示言語判定部1211は、PC10のOSにおいて現在設定されている表示言語を取得する(図10のステップS115)。例えば、OSがWindows(登録商標)であれば、OSの表示言語は、Windows(登録商標) API(Application Programming Interface)に装備される関数「GetUserDefaultUILanguage()」を用いて取得することができる。   FIG. 14 is a flowchart illustrating an example of determination processing by the display language determination unit 1211 according to the first embodiment. In step S20, the display language determination unit 1211 acquires the display language currently set in the OS of the PC 10 (step S115 in FIG. 10). For example, if the OS is Windows (registered trademark), the display language of the OS can be acquired by using a function “GetUserDefaultUILanguage ()” provided in the Windows (registered trademark) API (Application Programming Interface).

次のステップS21で、表示言語判定部1211は、制御部100から渡された検索結果に含まれる各属性情報から、項目「表示言語」の値が、ステップS20で取得した表示言語と一致する属性情報を検索する。次のステップS22で、表示言語判定部1211は、検索の結果、該当する属性情報が見つかったか否かを判定する。表示言語判定部1211は、該当する属性情報が見つかったと判定した場合(ステップS22、「Yes」)、処理をステップS23に移行させる。   In the next step S21, the display language determination unit 1211 determines from the attribute information included in the search result passed from the control unit 100 that the value of the item “display language” matches the display language acquired in step S20. Search for information. In the next step S22, the display language determination unit 1211 determines whether or not the corresponding attribute information has been found as a result of the search. If the display language determination unit 1211 determines that the corresponding attribute information has been found (step S22, “Yes”), the display language determination unit 1211 shifts the processing to step S23.

ステップS23で、表示言語判定部1211は、ステップS21の検索結果に基づきインストール対象のドライバプログラムを絞り込む。より具体的には、表示言語判定部1211は、ステップS114で取得した検索結果としての属性情報一覧に含まれる各属性情報のうち、項目「表示言語」の値として、ステップS20で取得された表示言語が含まれる各属性情報を検索結果として制御部100に渡し(図10のステップS116)、図14のフローチャートによる一連の処理を終了させる。   In step S23, the display language determination unit 1211 narrows down the driver programs to be installed based on the search result in step S21. More specifically, the display language determination unit 1211 displays the display acquired in step S20 as the value of the item “display language” among the attribute information included in the attribute information list as the search result acquired in step S114. Each attribute information including the language is passed to the control unit 100 as a search result (step S116 in FIG. 10), and a series of processes according to the flowchart in FIG. 14 is terminated.

表示言語判定部1211は、上述したステップS22において、該当する属性情報が見つからなかったと判定した場合(ステップS22、「No」)、処理をステップS24に移行させる。ステップS24で、表示言語判定部1211は、インストーラ102から、図10のステップS106において制御部100に取得された仕向け情報を取得する。そして、表示言語判定部1211は、ステップS114で取得した検索結果に含まれる各属性情報のうち、項目「表示言語」の値が仕向け情報に対応する各属性情報を、検索結果として制御部100に渡し(図10のステップS116)、図14のフローチャートによる一連の処理を終了させる。   If the display language determination unit 1211 determines in step S22 described above that the corresponding attribute information has not been found (step S22, “No”), the process proceeds to step S24. In step S24, the display language determination unit 1211 acquires the destination information acquired by the control unit 100 in step S106 of FIG. Then, the display language determination unit 1211 transmits, to the control unit 100, each attribute information whose item “display language” value corresponds to the destination information among the attribute information included in the search result acquired in step S114 as a search result. Passing (step S116 in FIG. 10), the series of processes according to the flowchart in FIG. 14 is terminated.

なお、上述したように、仕向け情報は、プリンタ20aの出荷先に設定された、「国内」および「海外」といった地域を示す情報である。例えば、表示言語判定部1211は、仕向け情報に示される地域を示す情報と、当該地域に対して設定されるプリンタ20aのデフォルト言語との対応関係を示すテーブルを予め持っているものとする。このテーブルにおいて、デフォルト言語を示す値として、例えば仕向け情報の値「国内」には日本語を示す値「ja」が対応付けられ、仕向け情報の値「海外」には英語を示す値「en」が対応付けられる。   As described above, the destination information is information indicating a region such as “domestic” and “overseas” set as a shipping destination of the printer 20a. For example, it is assumed that the display language determination unit 1211 has in advance a table indicating a correspondence relationship between information indicating an area indicated in the destination information and a default language of the printer 20a set for the area. In this table, as a value indicating the default language, for example, the value “ja” indicating Japanese is associated with the value “domestic” of the destination information, and the value “en” indicating English is associated with the value “foreign” of the destination information. Are associated.

表示言語判定部1211は、検索結果に含まれる各属性情報のうち、項目「表示言語」の値が、プリンタ20aの仕向け情報を示す値に対応付けられるデフォルト言語を示す値に示される言語と一致または対応する各属性情報を、検索結果として制御部100に渡す。   The display language determination unit 1211 matches the language indicated by the value indicating the default language associated with the value indicating the destination information of the printer 20a in the attribute information included in the search result. Or each corresponding attribute information is passed to the control part 100 as a search result.

図10の説明に戻り、次に、制御部100は、ステップS117およびステップS118で、PDLによる絞り込みを行う。制御部100は、ステップS117で、図14のフローチャートの処理に従いステップS116で渡された検索結果をインストーラ102に渡し、PDLによる絞り込みを行うよう、インストーラ102に指示する。インストーラ102において、PDL判定部1210は、この指示に応じて、検索結果に含まれる各属性情報における項目「PDL」の値に対して、優先順位に従った判定を行う。   Returning to the description of FIG. 10, the control unit 100 performs narrowing down by PDL in steps S117 and S118. In step S117, the control unit 100 passes the search result passed in step S116 to the installer 102 in accordance with the process of the flowchart of FIG. 14, and instructs the installer 102 to narrow down by PDL. In the installer 102, in response to this instruction, the PDL determination unit 1210 performs determination according to the priority order for the value of the item “PDL” in each attribute information included in the search result.

上述したように、PDL判定部1210は、PDLの種類に対して予め定められた優先順位を示す情報を有している。ここでは、上述した表1に示した項目「PDL」に示される各PDL種類「PDL#1」、「PDL#2」および「PDL#3」に対し、優先順位が「PDL#1」>「PDL#2」>「PDL#3」とされ、PDL種類「PDL#1」が最も優先順位が高く、PDL種類「PDL#3」が最も優先順位が低く設定されているものとする。   As described above, the PDL determination unit 1210 has information indicating a priority order predetermined for the type of PDL. Here, for each PDL type “PDL # 1,” “PDL # 2,” and “PDL # 3” indicated in the item “PDL” shown in Table 1, the priority is “PDL # 1”> “ It is assumed that the PDL type “PDL # 1” has the highest priority, and the PDL type “PDL # 3” has the lowest priority.

なお、各PDL種類に対して設定される優先順位は、例えば、第1の実施形態に係る情報処理プログラムの提供元が策定した最も高機能なPDL種類を、最も高い優先順位に設定する。一例として、プリンタ20aの製造元であるメーカが提供する当該情報処理プログラムにおいて、プリンタ20aにおいて最も高機能、多機能を実現可能なPDL種類の優先順位を、最も高く設定する。例えば、プリンタ20aは、当該プリンタ20aの製造元により開発されたPDLを適用することで、最も高機能、多機能を実現可能である。   Note that the priority set for each PDL type is, for example, the highest function PDL type established by the information processing program provider according to the first embodiment is set to the highest priority. As an example, in the information processing program provided by the manufacturer that is the manufacturer of the printer 20a, the highest priority is set for the PDL type that can realize the most advanced and multifunctional functions in the printer 20a. For example, the printer 20a can realize the most advanced and multifunctional functions by applying a PDL developed by the manufacturer of the printer 20a.

他のPDL種類については、例えばプリンタ20aに適用した場合にこの最高優先順位のPDL種類に対して機能が低くなる順に、順次低い優先順位を設定する。この、他のPDL種類については、例えば、当該プリンタ20aと、当該プリンタ20aの製造元とは異なる、他メーカにより提供されるプリンタとに共通して対応可能な、標準的なPDL種類であってもよい。   For other PDL types, for example, when applied to the printer 20a, lower priority levels are set in order of decreasing functions with respect to the highest priority PDL type. The other PDL types may be, for example, standard PDL types that can be commonly handled by the printer 20a and a printer provided by another manufacturer that is different from the manufacturer of the printer 20a. Good.

一例として、上述したRPCS、PCL6およびPSの各PDL種類において、プリンタ20aがPDL種類「RPCS」に対応したドライバプログラムを適用した場合に最も高機能、多機能を実現可能である場合について考える。この場合、プリンタ20aの機種に対して、PDL種類「PRCS」の優先順位を最も高く設定し、他のPDL種類「PCL6」、「PS」の優先順位をPDL種類「PRCS」の優先順位よりも低く設定することが考えられる。   As an example, let us consider a case where, in each of the above-described PDL types of RPCS, PCL6, and PS, when the printer 20a applies a driver program corresponding to the PDL type “RPCS”, the highest function and multi-function can be realized. In this case, the priority of the PDL type “PRCS” is set highest for the model of the printer 20a, and the priorities of the other PDL types “PCL6” and “PS” are set higher than the priority of the PDL type “PRCS”. It is possible to set it low.

なお、各PDL種類に対する優先順位の設定ルールは、この例に限定されない。   Note that the priority setting rule for each PDL type is not limited to this example.

図15は、第1の実施形態に係る、PDL判定部1210による判定処理の例を示すフローチャートである。なお、以下では、上述したPDL種類「PDL#1」、「PDL#2」および「PDL#3」を、適宜、優先順位の高い方からそれぞれPDL種類「第1のPDL」、「第2のPDL」および「第3のPDL」として説明する。   FIG. 15 is a flowchart illustrating an example of determination processing by the PDL determination unit 1210 according to the first embodiment. In the following description, the PDL types “PDL # 1”, “PDL # 2”, and “PDL # 3” described above are appropriately assigned to the PDL types “first PDL”, “second PDL” from the higher priority order, respectively. This will be described as “PDL” and “third PDL”.

図15において、ステップS30で、PDL判定部1210は、検索結果の各属性情報のうち少なくとも1つが、最も優先順位が高く設定されたPDL種類「第1のPDL」に対応しているか否かを判定する。より具体的には、PDL判定部1210は、検索結果の各属性情報のうち、項目「PDL」の値がPDL種類「第1のPDL」を示す属性情報が存在するか否かを判定する。   In FIG. 15, in step S30, the PDL determination unit 1210 determines whether at least one of the attribute information of the search result corresponds to the PDL type “first PDL” set with the highest priority. judge. More specifically, the PDL determination unit 1210 determines whether there is attribute information in which the value of the item “PDL” indicates the PDL type “first PDL” among the attribute information of the search results.

PDL判定部1210は、PDL種類「第1のPDL」に対応する属性情報が存在すると判定した場合(ステップS30、「Yes」)、処理をステップS31に移行させる。ステップS31で、PDL判定部1210は、ステップS30の判定結果に従い、検索結果の各属性情報のうち、PDL種類「第1のPDL」に対応する属性情報に対応するドライバプログラムを、インストール対象として選択する。PDL判定部1210は、選択したドライバプログラムの属性情報を、検索結果として制御部100に渡す(図10のステップS118)。そして、図15のフローチャートによる一連の処理を終了させる。   If the PDL determination unit 1210 determines that there is attribute information corresponding to the PDL type “first PDL” (step S30, “Yes”), the PDL determination unit 1210 shifts the process to step S31. In step S31, according to the determination result in step S30, the PDL determination unit 1210 selects a driver program corresponding to the attribute information corresponding to the PDL type “first PDL” among the attribute information of the search result as an installation target. To do. The PDL determination unit 1210 passes the attribute information of the selected driver program to the control unit 100 as a search result (step S118 in FIG. 10). Then, a series of processes according to the flowchart of FIG.

なお、この段階では、上述した図13および図14のフローチャートの各処理により、識別情報に対応する各属性情報が、項目「ドライバアーキテクチャ」および「表示言語」の値で絞り込まれているので、1つのドライバプログラムがインストール対象として選択されることになる。   At this stage, the attribute information corresponding to the identification information is narrowed down by the values of the items “driver architecture” and “display language” by the processes of the flowcharts of FIGS. 13 and 14 described above. One driver program is selected for installation.

PDL判定部1210は、ステップS30において、PDL種類「第1のPDL」に対応する属性情報が存在しないと判定した場合(ステップS30、「No」)、処理をステップS32に移行させる。ステップS32で、PDL判定部1210は、検索結果の各属性情報のうち少なくとも1つが、PDL種類「第1のPDL」の次に優先順位が高く設定されたPDL種類「第2のPDL」に対応しているか否かを判定する。   If the PDL determination unit 1210 determines in step S30 that there is no attribute information corresponding to the PDL type “first PDL” (step S30, “No”), the process proceeds to step S32. In step S <b> 32, the PDL determination unit 1210 corresponds to at least one of the pieces of attribute information of the search result corresponding to the PDL type “second PDL” that has the next highest priority after the PDL type “first PDL”. It is determined whether or not.

PDL判定部1210は、PDL種類「第2のPDL」に対応する属性情報が存在すると判定した場合(ステップS32、「Yes」)、処理をステップS33に移行する。ステップS33で、PDL判定部1210は、ステップS32の判定結果に従い、検索結果の各属性情報のうち、PDL種類「第2のPDL」に対応する属性情報に対応するドライバプログラムを、インストール対象として選択する。PDL判定部1210は、選択したドライバプログラムの属性情報を、検索結果として制御部100に渡す(図10のステップS118)。そして、図15のフローチャートによる一連の処理を終了させる。   If the PDL determination unit 1210 determines that there is attribute information corresponding to the PDL type “second PDL” (step S32, “Yes”), the process proceeds to step S33. In step S33, according to the determination result in step S32, the PDL determination unit 1210 selects a driver program corresponding to the attribute information corresponding to the PDL type “second PDL” among the attribute information of the search result as an installation target. To do. The PDL determination unit 1210 passes the attribute information of the selected driver program to the control unit 100 as a search result (step S118 in FIG. 10). Then, a series of processes according to the flowchart of FIG.

PDL判定部1210は、ステップS32において、PDL種類「第2のPDL」に対応する属性情報が存在しないと判定した場合(ステップS32、「No」)、処理をステップS34に移行させる。ステップS34で、PDL判定部1210は、検索結果の各属性情報のうち少なくとも1つが、PDL種類「第2のPDL」の次に優先順位が高く設定されたPDL種類「第3のPDL」に対応しているか否かを判定する。   If the PDL determination unit 1210 determines in step S32 that there is no attribute information corresponding to the PDL type “second PDL” (step S32, “No”), the process proceeds to step S34. In step S <b> 34, the PDL determination unit 1210 corresponds to at least one of the pieces of attribute information of the search result corresponding to the PDL type “third PDL” set with the second highest priority after the PDL type “second PDL”. It is determined whether or not.

PDL判定部1210は、PDL種類「第3のPDL」に対応する属性情報が存在すると判定した場合(ステップS34、「Yes」)、処理をステップS35に移行する。ステップS35で、PDL判定部1210は、ステップS34の判定結果に従い、検索結果の各属性情報のうち、PDL種類「第3のPDL」に対応する属性情報に対応するドライバプログラムを、インストール対象として選択する。PDL判定部1210は、選択したドライバプログラムの属性情報を、検索結果として制御部100に渡す(図10のステップS118)。そして、図15のフローチャートによる一連の処理を終了させる。   If the PDL determination unit 1210 determines that attribute information corresponding to the PDL type “third PDL” exists (step S34, “Yes”), the process proceeds to step S35. In step S35, according to the determination result in step S34, the PDL determination unit 1210 selects a driver program corresponding to the attribute information corresponding to the PDL type “third PDL” from among the attribute information of the search result as an installation target. To do. The PDL determination unit 1210 passes the attribute information of the selected driver program to the control unit 100 as a search result (step S118 in FIG. 10). Then, a series of processes according to the flowchart of FIG.

PDL判定部1210は、ステップS34において、PDL種類「第3のPDL」に対応する属性情報が存在しないと判定した場合(ステップS34、「No」)、処理をステップS36に移行させる。ステップS36で、PDL判定部1210は、図10のステップS105、ステップS106で取得した識別情報に対応するドライバプログラムが存在しないと判定し、図15のフローチャートによる一連の処理を終了させる。この場合、PDL判定部1210は、例えば制御部100に対して、対応するドライバプログラムが存在しない旨を通知することができる。   If the PDL determination unit 1210 determines in step S34 that there is no attribute information corresponding to the PDL type “third PDL” (step S34, “No”), the process proceeds to step S36. In step S36, the PDL determination unit 1210 determines that there is no driver program corresponding to the identification information acquired in steps S105 and S106 of FIG. 10, and ends a series of processes according to the flowchart of FIG. In this case, the PDL determination unit 1210 can notify the control unit 100 that there is no corresponding driver program, for example.

なお、図15では、判定対象のPDL種類を3種類とし、ステップS30、ステップS32およびステップS34の3段階でPDLの判定を行っているが、これはこの例に限定されない。すなわち、図15のフローチャートにおいて、属性情報が優先順位に応じたPDL種類に対応するか否かの判定処理(例えばステップS30)と、PDL種類に対応する属性情報に対応するドライバプログラムをインストール対象として選択する処理(例えばステップS31)との組を、判定対象のPDL種類の数に応じて繰り返すことができる。これにより、4種類以上のPDL種類、あるいは、2種類以下のPDL種類についても、同様に判定処理を実行できる。   In FIG. 15, the PDL types to be determined are three types, and PDL determination is performed in three stages of step S30, step S32, and step S34. However, this is not limited to this example. That is, in the flowchart of FIG. 15, a determination process (for example, step S30) as to whether or not the attribute information corresponds to the PDL type corresponding to the priority order, and a driver program corresponding to the attribute information corresponding to the PDL type are set as installation targets. The combination with the process to select (for example, step S31) can be repeated according to the number of PDL types to be determined. As a result, the determination process can be similarly executed for four or more types of PDL types or two or less types of PDL types.

説明は、図10に戻り、制御部100は、ステップS118でPDL判定部1210から取得した検索結果に基づき、インストール対象のドライバプログラムを特定する(ステップS119)。制御部100は、PDL判定部1210から取得した検索結果である属性情報から、項目「取得情報」の値(URL)を抽出し、抽出したURLを宛先として、ドライバプログラムのダウンロード(DL)を要求する(ステップS120、ステップS121)。図10の例では、サーバ30がドライバプログラムを記憶し、当該URLがサーバ30内にドライバプログラムが記憶される位置を示しているものとする。   Returning to FIG. 10, the control unit 100 identifies a driver program to be installed based on the search result acquired from the PDL determination unit 1210 in step S118 (step S119). The control unit 100 extracts the value (URL) of the item “acquired information” from the attribute information that is the search result acquired from the PDL determination unit 1210, and requests the driver program download (DL) using the extracted URL as a destination. (Step S120, Step S121). In the example of FIG. 10, the server 30 stores the driver program, and the URL indicates a position where the driver program is stored in the server 30.

サーバ30は、PC10からの、制御部100によるダウンロード要求に応じて、当該URLに記憶されるドライバプログラムをPC10に送信する(ステップS122)。PC10において、通信部101は、サーバ30から送信されダウンロードされたドライバプログラムを受信し、受信したドライバプログラムを制御部100に渡す(ステップS123)。すなわち、制御部100は、取得情報に基づきドライバプログラムを取得するプログラム取得部としても機能する。   In response to the download request from the PC 10 by the control unit 100, the server 30 transmits the driver program stored in the URL to the PC 10 (step S122). In the PC 10, the communication unit 101 receives the downloaded driver program transmitted from the server 30, and passes the received driver program to the control unit 100 (step S123). That is, the control unit 100 also functions as a program acquisition unit that acquires a driver program based on the acquisition information.

制御部100は、インストール部120に対して、ダウンロードされたドライバプログラムのPC10へのインストール処理を指示する(ステップS124)。インストール部120は、この指示に従い、ドライバプログラムをPC10にインストールする(ステップS125)。   The control unit 100 instructs the installation unit 120 to install the downloaded driver program on the PC 10 (step S124). The installation unit 120 installs the driver program in the PC 10 according to this instruction (step S125).

ここで、上述したステップS112〜ステップS118によるドライバプログラムの絞り込み処理について、表1を参照して、より具体的に説明する。なお、ここでは、プリンタ20aに対応するドライバプログラムをインストールする場合において、ステップS106で制御部100が取得した識別情報が機種「プリンタ#A」を示し、且つ、プリンタ20aの仕向け先が「日本」であるものとする。また、PC10において、OSは、表示言語が「日本語」とされ、32ビットOSであり、且つ、バージョンが、高機能ドライバに対応する特定バージョンとは異なるバージョンであるものとする。   Here, the driver program narrowing-down process in steps S112 to S118 described above will be described more specifically with reference to Table 1. Here, when installing a driver program corresponding to the printer 20a, the identification information acquired by the control unit 100 in step S106 indicates the model “printer #A”, and the destination of the printer 20a is “Japan”. Suppose that In the PC 10, it is assumed that the display language is “Japanese”, the OS is a 32-bit OS, and the version is different from the specific version corresponding to the high function driver.

先ず、ステップS101〜ステップS111により、制御部100は、プリンタ20aから識別情報および仕向け情報を取得し、識別情報に基づき、サーバ30から識別情報が対応する属性情報を取得する。表1の例では、項目「識別情報」の値が「プリンタ#A」である、第1行目〜第7行目(項目名行を除く。以下同様)の7の属性情報が取得される。   First, in steps S101 to S111, the control unit 100 acquires identification information and destination information from the printer 20a, and acquires attribute information corresponding to the identification information from the server 30 based on the identification information. In the example of Table 1, seven attribute information items of the first to seventh lines (excluding the item name line; the same applies below) in which the value of the item “identification information” is “printer #A” are acquired. .

制御部100は、ステップS112〜ステップS113において、アーキテクチャ判定部1212により、図13のフローチャートによる処理に従い、取得した各属性情報に対してドライバアーキテクチャによる絞り込みを行う。この例では、PC10のOSが、高機能ドライバには対応しておらず、且つ、アーキテクチャが32ビットOSであるため、表1において第3行目、第5行目および第7行目の属性情報が検索結果として取得される。   In step S112 to step S113, the control unit 100 causes the architecture determination unit 1212 to narrow down the acquired attribute information using the driver architecture in accordance with the processing shown in the flowchart of FIG. In this example, since the OS of the PC 10 does not support a high-function driver and the architecture is a 32-bit OS, the attributes of the third row, the fifth row, and the seventh row in Table 1 Information is acquired as a search result.

次に、制御部100は、ステップS114〜ステップS116において、表示言語判定部1211により、図14のフローチャートによる処理に従い、ステップS112〜ステップS113の検索結果として取得された各属性情報に対して、OSの表示言語による絞り込みを行う。この例では、OSの現在の表示言語が「日本語」であるため、上述のステップS112〜ステップS113で絞り込まれた各属性情報、すなわち、表1の第3行目、第5行目および第7行目の属性情報がそのまま、検索結果として取得される。   Next, in step S114 to step S116, the control unit 100 performs an OS on each attribute information acquired as a search result in step S112 to step S113 by the display language determination unit 1211 according to the process of the flowchart in FIG. Filter by display language. In this example, since the current display language of the OS is “Japanese”, the attribute information narrowed down in steps S112 to S113 described above, that is, the third, fifth and fifth rows in Table 1. The attribute information on the seventh line is acquired as it is as a search result.

次に、制御部100は、ステップS117〜ステップS118において、PDL判定部1210により、図15のフローチャートによる処理に従い、ステップS114〜ステップS116の検索結果として取得された各属性情報に対して、項目「PDL」に対する優先順位判定を行う。この例では、優先順位がPDL情報「PDL#1」>「PDL#2」>「PDL#3」となっている。そのため、上述のステップS114〜ステップS116で絞り込まれた各属性情報、すなわち、表1の第3行目、第5行目および第7行目の属性情報のうち、項目「PDL」の値が最も高い優先順位を示す値「PDL#1」である、第3行目の属性情報が検索結果として取得される。   Next, in step S117 to step S118, the control unit 100 performs an item “for each attribute information acquired as a search result in step S114 to step S116 by the PDL determination unit 1210 according to the process of the flowchart of FIG. Priority determination for “PDL” is performed. In this example, the priority order is PDL information “PDL # 1”> “PDL # 2”> “PDL # 3”. Therefore, the value of the item “PDL” is the highest among the attribute information narrowed down in the above-described steps S114 to S116, that is, the attribute information of the third row, the fifth row, and the seventh row in Table 1. The attribute information on the third row, which is the value “PDL # 1” indicating the high priority, is acquired as the search result.

制御部100は、この、検索結果として取得された、表1における第3行目の属性情報の項目「取得情報」に示されるURLに従い、ドライバプログラムのダウンロードを行う。   The control unit 100 downloads the driver program in accordance with the URL indicated in the item “acquired information” of the attribute information on the third line in Table 1 acquired as the search result.

このように、第1の実施形態では、例えばプリンタ20aをPC10から利用するためのドライバプログラムを、プリンタ20aから取得した情報と、PC10のOS情報とに基づき選択している。そのため、ユーザがドライバプログラムを明示的に指定すること無く、プリンタ20aおよびPC10に適合したドライバプログラムを自動的に取得することができる。   Thus, in the first embodiment, for example, a driver program for using the printer 20a from the PC 10 is selected based on the information acquired from the printer 20a and the OS information of the PC 10. Therefore, the driver program suitable for the printer 20a and the PC 10 can be automatically acquired without the user explicitly specifying the driver program.

また、このとき、PDL種類に予め優先順位を設定し、ドライバプログラムを、優先順位が高く設定されたPDL種類から順に選択するようにしている。そのため、ユーザがドライバプログラムを明示的に指定すること無く、プリンタ20aの機能を適切に利用可能なドライバプログラムを自動的に取得することができる。   At this time, a priority order is set in advance for the PDL type, and the driver program is selected in order from the PDL type having a higher priority order. Therefore, it is possible to automatically acquire a driver program that can appropriately use the functions of the printer 20a without the user explicitly specifying the driver program.

さらに、ドライバプログラムの提供側においては、各機種に対応する複数のドライバプログラムそれぞれが機種毎に異なるPDLに対応する場合であっても、優先的にインストールさせたいPDLを機種毎に指定する必要が無い。すなわち、各機種に対して適切なPDLに対応するドライバプログラムを、共通のインストーラによりインストールさせることが可能である。   Further, on the driver program provider side, it is necessary to specify the PDL to be preferentially installed for each model even when a plurality of driver programs corresponding to each model correspond to different PDLs for each model. No. That is, it is possible to install a driver program corresponding to PDL appropriate for each model using a common installer.

なお、上述において、第1の実施形態では、図10のステップS112〜ステップS118に示したように、ドライバアーキテクチャによる絞り込みを行い(ステップS112〜ステップS113)、次にOSの表示現語による絞り込みを行い(ステップS114〜ステップS116)、最後にPDL種類による絞り込みを行っている(ステップS117〜ステップS118)が、これはこの例に限定されない。例えば、ステップS112〜ステップS113におけるドライバアーキテクチャによる絞り込みと、ステップS114〜ステップS116におけるOSの表示現語による絞り込みとのうち、何れか一方または両方を省略してもよい。   In the above description, in the first embodiment, as shown in step S112 to step S118 of FIG. 10, the narrowing by the driver architecture is performed (step S112 to step S113), and then the narrowing by the display current word of the OS is performed. (Step S114 to step S116), and finally narrowing down by PDL type (step S117 to step S118) is performed, but this is not limited to this example. For example, any one or both of the narrowing by the driver architecture in steps S112 to S113 and the narrowing by the display current word of the OS in steps S114 to S116 may be omitted.

なお、上述では、ドライバプログラムがプリンタを制御するためのプリンタドライバプログラムであるとして説明したが、これはこの例に限定されない。例えば、第1の実施形態に対して、スキャナを制御するためのスキャナドライバプログラムを適用することも可能である。例えば、Windows(登録商標)がOSである場合、適用可能なスキャナドライバプログラムとして代表的なものに、TWAINおよびWIA(Windows(登録商標) Image Acquisition)がある。これらのドライバプログラムの属性情報において共通する項目の情報に優先順位を設定することで、上述したような、プリンタドライバと同様にして、適切なドライバプログラムを選択してインストールすることが可能である。   In the above description, the driver program is a printer driver program for controlling the printer, but this is not limited to this example. For example, a scanner driver program for controlling the scanner can be applied to the first embodiment. For example, when Windows (registered trademark) is an OS, TWAIN and WIA (Windows (registered trademark) Image Acquisition) are representative examples of applicable scanner driver programs. By setting priorities to information of common items in the attribute information of these driver programs, it is possible to select and install an appropriate driver program in the same manner as the printer driver as described above.

(第2の実施形態)
次に、第2の実施形態について説明する。上述した第1の実施形態では、図10のステップS100によるドライバプログラムのインストール指示後の処理が、制御部100により全て自動で進行するようにしていた。これに対して、第2の実施形態は、インストールするドライバプログラムをユーザ操作により選択するためのUI(User Interface)を設けている。
(Second Embodiment)
Next, a second embodiment will be described. In the first embodiment described above, the processing after the driver program installation instruction in step S100 of FIG. In contrast, the second embodiment is provided with a UI (User Interface) for selecting a driver program to be installed by a user operation.

図16は、第2の実施形態に係るインストーラ102’の機能を説明するための一例の機能ブロック図である。なお、図16において、上述した図7と共通する部分には同一の符号を付して、詳細な説明を省略する。図16において、インストーラ102’は、図7に示したインストーラ102に対してUI部122が追加されている。UI部122は、制御部100の指示に従いユーザに情報を提示し、ユーザ操作を促すための表示画面を生成し、表示部103により表示させる。また、UI部122は、生成した表示画面に応じてなされたユーザ操作を、入力部104を介して受け取り、制御部100に渡す。   FIG. 16 is a functional block diagram illustrating an example of functions of the installer 102 ′ according to the second embodiment. In FIG. 16, the same reference numerals are given to the portions common to FIG. 7 described above, and detailed description thereof is omitted. In FIG. 16, an installer 102 'has a UI unit 122 added to the installer 102 shown in FIG. The UI unit 122 presents information to the user in accordance with an instruction from the control unit 100, generates a display screen for prompting a user operation, and causes the display unit 103 to display the display screen. Also, the UI unit 122 receives a user operation performed according to the generated display screen via the input unit 104 and passes it to the control unit 100.

また、インストーラ102’において、PDL判定部1210’は、検索結果に含まれる各属性情報における項目「PDL」の値に対して、優先順位に従った判定を行い、インストール対象の候補のドライバプログラムを抽出する。   In the installer 102 ′, the PDL determination unit 1210 ′ performs determination according to the priority order for the value of the item “PDL” in each attribute information included in the search result, and selects a candidate driver program to be installed. Extract.

第2の実施形態において、プリンタ20aおよびサーバ30の機能は、図8および図9を用いて説明した機能と同一であるので、ここでの説明を省略する。   In the second embodiment, the functions of the printer 20a and the server 30 are the same as the functions described with reference to FIGS. 8 and 9, and a description thereof is omitted here.

次に、第2の実施形態に係るドライバプログラムのPC10に対する導入処理について、より具体的に説明する。図17は、第2の実施形態に係るドライバプログラムのPC10への導入処理の流れを示す一例のシーケンス図である。なお、図17において、上述した図10および図16と対応する部分には同一の符号を付して、詳細な説明を省略する。   Next, the installation process for the PC 10 of the driver program according to the second embodiment will be described more specifically. FIG. 17 is a sequence diagram of an example showing a flow of introduction processing of the driver program according to the second embodiment into the PC 10. In FIG. 17, the same reference numerals are given to the portions corresponding to those in FIGS. 10 and 16 described above, and detailed description thereof will be omitted.

図17において、ステップS100〜ステップS116の処理は、上述した図10におけるステップS100〜ステップS116の処理と同一であるので、ここでの説明を省略する。   In FIG. 17, the processing from step S100 to step S116 is the same as the processing from step S100 to step S116 in FIG. 10 described above, and a description thereof will be omitted here.

制御部100は、ステップS116までの処理によりドライバアーキテクチャおよびOSの表示言語により絞り込まれた検索結果に対して、ステップS200およびステップS201で、PDL種類に基づきインストール対象の候補のドライバプログラムの一覧を作成する。制御部100は、ステップS200で、図14のフローチャートの処理に従いステップS116で渡された検索結果をインストーラ102’に渡し、PDLによる判定を行ってインストール対象の候補となる属性情報を抽出するよう、インストーラ102’に指示する。   In step S200 and step S201, the control unit 100 creates a list of candidate driver programs to be installed based on the PDL type for the search results narrowed down by the driver architecture and the OS display language through the processing up to step S116. To do. In step S200, the control unit 100 passes the search result passed in step S116 to the installer 102 ′ according to the process of the flowchart of FIG. 14, and performs determination by PDL to extract attribute information that is a candidate for installation. The installer 102 'is instructed.

図18は、第2の実施形態に係る、PDL判定部1210’による判定処理の例を示すフローチャートである。各PDL情報の優先順位は、図15で説明した優先順位と同一であるものとする。図18において、ステップS40で、PDL判定部1210’は、検索結果の各属性情報のうち少なくとも1つが、最も優先順位が高く設定されたPDL種類「第1のPDL」に対応しているか否かを判定する。   FIG. 18 is a flowchart illustrating an example of determination processing by the PDL determination unit 1210 ′ according to the second embodiment. The priority order of each PDL information is assumed to be the same as the priority order described in FIG. In FIG. 18, in step S40, the PDL determination unit 1210 ′ determines whether at least one of the attribute information of the search results corresponds to the PDL type “first PDL” set with the highest priority. Determine.

PDL判定部1210’は、PDL種類「第1のPDL」に対応する属性情報が存在すると判定した場合(ステップS40、「Yes」)、処理をステップS41に移行させる。ステップS41で、PDL判定部1210’は、ステップS40の判定結果に従い、検索結果の各属性情報のうち、PDL種類「第1のPDL」に対応する属性情報に対応するドライバプログラムを、インストール対象として選択し、選択したドライバプログラムを、インストール候補のドライバプログラム一覧に追加する。そして、PDL判定部1210’は、処理をステップS42に移行させる。   If the PDL determination unit 1210 'determines that attribute information corresponding to the PDL type "first PDL" exists (step S40, "Yes"), the process proceeds to step S41. In step S41, according to the determination result of step S40, the PDL determination unit 1210 ′ sets the driver program corresponding to the attribute information corresponding to the PDL type “first PDL” among the attribute information of the search result as an installation target. Select the selected driver program and add it to the list of candidate drivers for installation. Then, the PDL determination unit 1210 'shifts the processing to step S42.

一方、PDL判定部1210’は、ステップS40において、PDL種類「第1のPDL」に対応する属性情報が存在しないと判定した場合(ステップS40、「No」)、処理をステップS42に移行させる。   On the other hand, if the PDL determination unit 1210 'determines in step S40 that there is no attribute information corresponding to the PDL type "first PDL" (step S40, "No"), the process proceeds to step S42.

ステップS42で、PDL判定部1210’は、検索結果の各属性情報のうち少なくとも1つがPDL種類「第2のPDL」に対応しているか否かを判定する。   In step S <b> 42, the PDL determination unit 1210 ′ determines whether at least one of the attribute information of the search result corresponds to the PDL type “second PDL”.

PDL判定部1210’は、PDL種類「第2のPDL」に対応する属性情報が存在すると判定した場合(ステップS42、「Yes」)、処理をステップS43に移行する。ステップS43で、PDL判定部1210’は、ステップS42の判定結果に従い、検索結果の各属性情報のうち、PDL種類「第2のPDL」に対応する属性情報に対応するドライバプログラムを、インストール対象として選択し、上述した、インストール候補のドライバプログラム一覧に追加する。そして、PDL判定部1210’は、処理をステップS44に移行させる。   If the PDL determination unit 1210 'determines that there is attribute information corresponding to the PDL type "second PDL" (step S42, "Yes"), the process proceeds to step S43. In step S43, according to the determination result of step S42, the PDL determination unit 1210 ′ sets the driver program corresponding to the attribute information corresponding to the PDL type “second PDL” among the attribute information of the search result as an installation target. Select and add to the driver program list of installation candidates described above. Then, the PDL determination unit 1210 'shifts the process to step S44.

一方、PDL判定部1210’は、ステップS42において、PDL種類「第2のPDL」に対応する属性情報が存在しないと判定した場合(ステップS42、「No」)、処理をステップS44に移行させる。   On the other hand, if the PDL determination unit 1210 'determines in step S42 that there is no attribute information corresponding to the PDL type "second PDL" (step S42, "No"), the process proceeds to step S44.

ステップS44で、PDL判定部1210’は、検索結果の各属性情報のうち少なくとも1つがPDL種類「第3のPDL」に対応しているか否かを判定する。   In step S44, the PDL determination unit 1210 'determines whether at least one of the attribute information of the search result corresponds to the PDL type "third PDL".

PDL判定部1210’は、PDL種類「第3のPDL」に対応する属性情報が存在すると判定した場合(ステップS44、「Yes」)、処理をステップS45に移行する。ステップS45で、PDL判定部1210’は、ステップS44の判定結果に従い、検索結果の各属性情報のうち、PDL種類「第3のPDL」に対応する属性情報に対応するドライバプログラムを、インストール対象として選択し、上述した、インストール候補のドライバプログラム一覧に追加する。そして、PDL判定部1210’は、処理をステップS46に移行させる。   If the PDL determination unit 1210 'determines that attribute information corresponding to the PDL type "third PDL" exists (step S44, "Yes"), the process proceeds to step S45. In step S45, according to the determination result in step S44, the PDL determination unit 1210 ′ sets the driver program corresponding to the attribute information corresponding to the PDL type “third PDL” among the attribute information of the search result as an installation target. Select and add to the driver program list of installation candidates described above. Then, the PDL determination unit 1210 'shifts the process to step S46.

一方、PDL判定部1210’は、ステップS44において、PDL種類「第3のPDL」に対応する属性情報が存在しないと判定した場合(ステップS44、「No」)、処理をステップS46に移行させる。   On the other hand, when the PDL determination unit 1210 'determines in step S44 that there is no attribute information corresponding to the PDL type "third PDL" (step S44, "No"), the process proceeds to step S46.

ステップS46で、PDL判定部1210’は、ステップS41、ステップS43およびステップS45においてインストール候補のドライバプログラムが追加されたドライバプログラム一覧を出力し、制御部100に渡す(図17のステップS201)。   In step S46, the PDL determination unit 1210 'outputs a list of driver programs to which installation candidate driver programs have been added in step S41, step S43, and step S45, and passes them to the control unit 100 (step S201 in FIG. 17).

制御部100は、PDL判定部1210’から渡されたインストール候補のドライバプログラム一覧に基づき、インストールを行うドライバプログラムを選択するための選択肢一覧を作成する。表2は、表1の各属性情報に基づき作成された選択肢一覧の例を、プリンタの識別情報毎に示す。   The control unit 100 creates an option list for selecting a driver program to be installed based on the installation candidate driver program list passed from the PDL determination unit 1210 '. Table 2 shows an example of a list of options created based on the attribute information of Table 1 for each printer identification information.

Figure 2017134752
Figure 2017134752

表2に例示されるように、例えば、PC10から利用するために選択されたプリンタが、識別情報「プリンタ#A」の機種である場合、インストール候補のドライバプログラムは、PDL種類「PDL#1」、「PDL#2」および「PDL#3」にそれぞれ対応するドライバプログラムとなる。制御部100は、これらPDL種類「PDL#1」、「PDL#2」および「PDL#3」にそれぞれ対応するドライバプログラムを含めて選択肢一覧を作成する。   As exemplified in Table 2, for example, when the printer selected for use from the PC 10 is the model of the identification information “printer #A”, the installation candidate driver program is the PDL type “PDL # 1”. , Driver programs corresponding to “PDL # 2” and “PDL # 3”, respectively. The control unit 100 creates a list of options including driver programs respectively corresponding to these PDL types “PDL # 1”, “PDL # 2”, and “PDL # 3”.

このとき、制御部100は、PDL種類「PDL#1」、「PDL#2」および「PDL#3」にそれぞれ対応するドライバプログラムを示すドライバ名「PDL#1ドライバ」、「PDL#2ドライバ」および「PDL#3ドライバ」を、それぞれ対応するPDL種類「PDL#1」、「PDL#2」および「PDL#3」の優先順位に従った順番で並べて、選択肢一覧を作成する。表2の例では、最も優先順位の高いPDL種類「PDL#1」に対応するドライバプログラムのドライバ名「PDL#1ドライバ」が選択肢一覧の先頭に配置される。また、最も優先順位の低いPDL種類「PDL#3」に対応するドライバプログラムのドライバ名「PDL#3ドライバ」が選択肢一覧の末尾に配置される。   At this time, the control unit 100 displays driver names “PDL # 1 driver” and “PDL # 2 driver” indicating driver programs respectively corresponding to the PDL types “PDL # 1”, “PDL # 2”, and “PDL # 3”. And “PDL # 3 driver” are arranged in the order according to the priority of the corresponding PDL types “PDL # 1”, “PDL # 2”, and “PDL # 3”, respectively, to create a list of options. In the example of Table 2, the driver name “PDL # 1 driver” of the driver program corresponding to the PDL type “PDL # 1” having the highest priority is arranged at the top of the option list. In addition, the driver name “PDL # 3 driver” of the driver program corresponding to the PDL type “PDL # 3” having the lowest priority is arranged at the end of the option list.

選択されたプリンタが識別情報「プリンタ#B」や「プリンタ#C」の場合も、同様にして、各ドライバプログラムが、対応するPDL種類の優先順位に従った順番で並べられて、選択肢一覧が作成される。   Similarly, when the selected printer is the identification information “printer #B” or “printer #C”, the driver programs are similarly arranged in the order according to the priority order of the corresponding PDL type, and the option list is displayed. Created.

図17の説明に戻り、制御部100は、作成した選択肢一覧をUI部122に渡し、選択肢一覧からインストールを行うドライバプログラムを選択するための選択肢一覧画面を作成するようにUI部122に指示する(ステップS202)。UI部122は、制御部100から渡された選択肢一覧に基づき選択肢一覧画面を作成し、表示部103によりPC10のディスプレイ1004に表示させる。   Returning to the description of FIG. 17, the control unit 100 passes the created option list to the UI unit 122, and instructs the UI unit 122 to create an option list screen for selecting a driver program to be installed from the option list. (Step S202). The UI unit 122 creates an option list screen based on the option list delivered from the control unit 100 and causes the display unit 103 to display the option list screen on the display 1004 of the PC 10.

図19は、第1の実施形態に係る、UI部122により作成された選択肢一覧画面400の例を示す。図19において、選択肢一覧画面400は、メッセージ表示部401と、選択部402と、拡張ボタン403と、「OK」ボタン404と、「キャンセル」ボタン405とを含む。メッセージ表示部401は、例えばドライバプログラムの選択を促すメッセージが表示される。選択部402は、選択肢一覧における各ドライバプログラムのドライバ名「PDL#1ドライバ」、「PDL#2ドライバ」および「PDL#3ドライバ」が、対応するPDL種類の優先順位に従った順番で表示される。   FIG. 19 shows an example of an option list screen 400 created by the UI unit 122 according to the first embodiment. In FIG. 19, the option list screen 400 includes a message display unit 401, a selection unit 402, an expansion button 403, an “OK” button 404, and a “cancel” button 405. The message display unit 401 displays, for example, a message prompting selection of a driver program. The selection unit 402 displays the driver names “PDL # 1 driver”, “PDL # 2 driver”, and “PDL # 3 driver” of each driver program in the option list in the order according to the priority order of the corresponding PDL types. The

拡張ボタン403は、選択部402の表示領域を拡張する。例えば、選択部402は、デフォルトの状態では、選択肢一覧に含まれる各ドライバプログラムのうち、対応するPDL種類の優先順位が最も高いドライバプログラムのみが表示される。この状態で拡張ボタン403を操作することで、選択部402に対して、選択肢一覧に含まれる全てのドライバプログラムの情報が表示されるようになる。図19の例は、拡張ボタン403が操作され選択肢一覧に含まれる全てのドライバプログラムの情報が表示されている状態を示している。   An expansion button 403 expands the display area of the selection unit 402. For example, in the default state, the selection unit 402 displays only the driver program having the highest priority of the corresponding PDL type among the driver programs included in the option list. By operating the expansion button 403 in this state, information on all the driver programs included in the option list is displayed on the selection unit 402. The example of FIG. 19 illustrates a state in which information on all driver programs included in the option list is displayed by operating the expansion button 403.

「OK」ボタン404は、操作することで、選択部402で指定されたドライバプログラムがインストール対象として選択される。図19の例では、選択部402に表示されるドライバ名「PDL#1ドライバ」、「PDL#2ドライバ」および「PDL#3ドライバ」のうちドライバ名「PDL#2ドライバ」が指定されている。この状態で「OK」ボタン404を操作することで、指定されたドライバ名「PDL#2ドライバ」のドライバプログラムが、インストールを行うドライバプログラムとして選択される。   By operating the “OK” button 404, the driver program specified by the selection unit 402 is selected as an installation target. In the example of FIG. 19, the driver name “PDL # 2 driver” among the driver names “PDL # 1 driver”, “PDL # 2 driver”, and “PDL # 3 driver” displayed on the selection unit 402 is designated. . By operating the “OK” button 404 in this state, the driver program with the designated driver name “PDL # 2 driver” is selected as the driver program to be installed.

「キャンセル」ボタン405は、この選択肢一覧画面400に係る処理をキャンセルする。例えば、「キャンセル」ボタン405を操作することで、例えばPC10に対するドライバプログラムのインストール処理が中止される。   A “cancel” button 405 cancels the processing related to the option list screen 400. For example, by operating a “cancel” button 405, for example, the driver program installation process for the PC 10 is canceled.

説明は図17に戻り、UI部122は、選択肢一覧画面400に対して、選択部402でドライバプログラムが指定され、「OK」ボタン404が操作されるユーザ入力がなされると(ステップS203)、ドライバプログラムの選択結果を制御部100に渡す(ステップS204)。   Returning to FIG. 17, when the UI unit 122 inputs a driver program to the option list screen 400 by the selection unit 402 and the user inputs an operation on the “OK” button 404 (step S <b> 203). The driver program selection result is passed to the control unit 100 (step S204).

制御部100は、ステップS204でUI部122から渡されたドライバプログラムの選択結果に基づき、インストール対象のドライバプログラムを特定する(ステップS119)。以降、ステップS120〜ステップS125の処理は、図10で説明した処理と同様であるので、ここでの説明を省略する。   The control unit 100 specifies a driver program to be installed based on the driver program selection result passed from the UI unit 122 in step S204 (step S119). Henceforth, since the process of step S120-step S125 is the same as the process demonstrated in FIG. 10, description here is abbreviate | omitted.

このように、第2の実施形態においては、インストールを行うドライバプログラムを、選択肢一覧画面400に表示されたインストール候補の各ドライバプログラムから、ユーザ操作に応じて選択することができる。そのため、ユーザは、例えば最も高機能ではなくても用途に適したドライバプログラムをインストールすることが可能である。また、選択肢一覧画面400は、各ドライバプログラムが優先順位に従った順序で表示されるため、より高機能なドライバプログラムを選択することも容易である。   As described above, in the second embodiment, a driver program to be installed can be selected from each of the installation candidate driver programs displayed on the option list screen 400 according to a user operation. Therefore, the user can install a driver program suitable for the application even if it is not the most advanced function. In addition, the option list screen 400 displays each driver program in an order according to the priority order, so that it is easy to select a driver program with higher functionality.

なお、上述の実施形態は、本発明の好適な実施の例ではあるがこれに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変形による実施が可能である。   The above-described embodiment is a preferred embodiment of the present invention, but is not limited thereto, and various modifications can be made without departing from the scope of the present invention.

10 PC
20a,20b プリンタ
30 サーバ
40 ネットワーク
100 制御部
101,200,300 通信部
102,102’ インストーラ
103 表示部
104 入力部
120 インストール部
121 選択部
122 UI部
201 機器情報記憶部
301 配信部
302 ドライバ属性情報記憶部
400 選択肢一覧画面
402 選択部
1210,1210’ PDL判定部
1211 表示言語判定部
1212 アーキテクチャ判定部
10 PC
20a, 20b Printer 30 Server 40 Network 100 Control unit 101, 200, 300 Communication unit 102, 102 'Installer 103 Display unit 104 Input unit 120 Installation unit 121 Selection unit 122 UI unit 201 Device information storage unit 301 Distribution unit 302 Driver attribute information Storage unit 400 Choice list screen 402 Selection unit 1210, 1210 ′ PDL determination unit 1211 Display language determination unit 1212 Architecture determination unit

特開2012−252526号公報JP2012-252526A

Claims (11)

機種を識別する識別情報を取得する識別情報取得部と、
前記識別情報に基づき前記機種に適用可能な複数のプログラムそれぞれの属性を示す属性情報を取得する属性情報取得部と、
前記属性情報に対して予め定められた優先順位に基づき前記複数のプログラムからインストール対象とするプログラムを選択する選択部と
を備える情報処理装置。
An identification information acquisition unit for acquiring identification information for identifying the model;
An attribute information acquisition unit that acquires attribute information indicating attributes of each of a plurality of programs applicable to the model based on the identification information;
An information processing apparatus comprising: a selection unit that selects a program to be installed from the plurality of programs based on a priority order predetermined for the attribute information.
前記選択部は、
前記識別情報に対応する前記複数のプログラムのうち前記優先順位が最も高い前記属性情報に対応するプログラムを選択する
請求項1に記載に情報処理装置。
The selection unit includes:
The information processing apparatus according to claim 1, wherein a program corresponding to the attribute information having the highest priority among the plurality of programs corresponding to the identification information is selected.
前記属性情報取得部により取得された前記属性情報を、前記優先順位に従い一覧で表示する表示部をさらに備え、
前記選択部は、
前記複数のプログラムのうち前記一覧の表示に応じて指定された前記属性情報に対応するプログラムを選択する
請求項1に記載の情報処理装置。
A display unit that displays the attribute information acquired by the attribute information acquisition unit in a list according to the priority;
The selection unit includes:
The information processing apparatus according to claim 1, wherein a program corresponding to the attribute information designated in accordance with display of the list is selected from the plurality of programs.
前記属性情報は、少なくとも、該属性情報が対応するプログラムの前記機種に対する命令の種類を示す命令種類情報を含み、
前記選択部は、
前記複数のプログラムから前記命令種類情報に対して予め定められた前記優先順位に基づきプログラムを選択する
請求項1乃至請求項3の何れか1項に記載の情報処理装置。
The attribute information includes at least instruction type information indicating a type of instruction for the model of the program corresponding to the attribute information,
The selection unit includes:
The information processing apparatus according to any one of claims 1 to 3, wherein a program is selected from the plurality of programs based on the predetermined priority order with respect to the instruction type information.
前記属性情報は、該属性情報が対応するプログラムが対応するオペレーティングシステムを示すシステム情報をさらに含み、
前記選択部は、
前記複数のプログラムから、前記システム情報に基づきプログラムを選択し、選択されたプログラムのうち、前記命令種類情報に対して予め定められた前記優先順位に基づきプログラムをさらに選択する
請求項4に記載の情報処理装置。
The attribute information further includes system information indicating an operating system corresponding to a program corresponding to the attribute information,
The selection unit includes:
5. The program according to claim 4, further comprising: selecting a program from the plurality of programs based on the system information, and further selecting a program based on the priority order predetermined for the instruction type information among the selected programs. Information processing device.
前記属性情報は、該属性情報が対応するプログラムが対応する表示言語を示す言語情報をさらに含み、
前記選択部は、
前記複数のプログラムのうち、前記属性情報に含まれる言語情報が示す表示言語と、当該情報処理装置に搭載されるオペレーティングシステムにおいて選択されている表示言語とが一致するプログラムを選択し、選択されたプログラムのうち、前記命令種類情報に対して予め定められた前記優先順位に基づきプログラムをさらに選択する
請求項4または請求項5に記載の情報処理装置。
The attribute information further includes language information indicating a display language corresponding to a program corresponding to the attribute information,
The selection unit includes:
Of the plurality of programs, a program in which the display language indicated by the language information included in the attribute information matches the display language selected in the operating system installed in the information processing apparatus is selected and selected. 6. The information processing apparatus according to claim 4, wherein a program is further selected based on the priority order predetermined for the instruction type information.
前記属性情報は、該属性情報に対応するプログラムの取得方法を示す取得情報をさらに含み、
前記複数のプログラムのうち前記選択部で選択されたプログラムを前記取得情報に基づき取得するプログラム取得部をさらに備える
請求項4乃至請求項6の何れか1項に記載の情報処理装置。
The attribute information further includes acquisition information indicating an acquisition method of a program corresponding to the attribute information,
The information processing apparatus according to claim 4, further comprising a program acquisition unit that acquires a program selected by the selection unit among the plurality of programs based on the acquisition information.
前記プログラム取得部により取得されたプログラムを当該情報処理装置にインストールするインストール部をさらに備える
請求項7に記載の情報処理装置。
The information processing apparatus according to claim 7, further comprising an installation unit that installs the program acquired by the program acquisition unit in the information processing apparatus.
機種を識別する識別情報と該機種に適用可能な複数のプログラムそれぞれの属性を示す属性情報とを関連付けて記憶する記憶部と、
機器から該機器の機種を識別する識別情報を取得する識別情報取得部と、
前記記憶部から、前記識別情報取得部により取得された前記識別情報に関連付けられた前記属性情報を取得する属性情報取得部と、
前記属性情報に対して予め定められた優先順位に基づき、前記識別情報に対応する前記複数のプログラムのうち該優先順位が最も高い前記属性情報に対応するプログラムを選択する選択部と
を備える情報処理システム。
A storage unit that associates and stores identification information for identifying a model and attribute information indicating attributes of a plurality of programs applicable to the model;
An identification information acquisition unit for acquiring identification information for identifying the model of the device from the device;
An attribute information acquisition unit that acquires the attribute information associated with the identification information acquired by the identification information acquisition unit from the storage unit;
An information processing comprising: a selection unit that selects a program corresponding to the attribute information having the highest priority among the plurality of programs corresponding to the identification information based on a priority order predetermined for the attribute information system.
機種を識別する識別情報を取得する識別情報取得ステップと、
前記識別情報に基づき前記機種に適用可能な複数のプログラムそれぞれの属性を示す属性情報を取得する属性情報取得ステップと、
前記属性情報に対して予め定められた優先順位に基づき、前記識別情報に対応する前記複数のプログラムのうち該優先順位が最も高い前記属性情報に対応するプログラムを選択する選択ステップと
を有する情報処理方法。
An identification information acquisition step of acquiring identification information for identifying the model;
An attribute information acquisition step for acquiring attribute information indicating attributes of a plurality of programs applicable to the model based on the identification information;
And a selection step of selecting a program corresponding to the attribute information having the highest priority among the plurality of programs corresponding to the identification information based on a priority order predetermined for the attribute information. Method.
機種を識別する識別情報を取得する識別情報取得ステップと、
前記識別情報に基づき前記機種に適用可能な複数のプログラムそれぞれの属性を示す属性情報を取得する属性情報取得ステップと、
前記属性情報に対して予め定められた優先順位に基づき、前記識別情報に対応する前記複数のプログラムのうち該優先順位が最も高い前記属性情報に対応するプログラムを選択する選択ステップと
をコンピュータに実行させるための情報処理プログラム。
An identification information acquisition step of acquiring identification information for identifying the model;
An attribute information acquisition step for acquiring attribute information indicating attributes of a plurality of programs applicable to the model based on the identification information;
A selection step of selecting a program corresponding to the attribute information having the highest priority among the plurality of programs corresponding to the identification information based on a predetermined priority order for the attribute information. Information processing program to let you.
JP2016015987A 2016-01-29 2016-01-29 Information processing apparatus, information processing system, information processing method, and information processing program Active JP6613927B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2016015987A JP6613927B2 (en) 2016-01-29 2016-01-29 Information processing apparatus, information processing system, information processing method, and information processing program
EP17151299.9A EP3200064A1 (en) 2016-01-29 2017-01-13 Information processing device, information processing system, and information processing method
US15/414,541 US10564906B2 (en) 2016-01-29 2017-01-24 Information processing device, information processing system, and information processing method for prioritizing an installation of print drivers on information processing device
CN201710054337.4A CN107025081B (en) 2016-01-29 2017-01-24 Information processing apparatus, information processing system, and information processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016015987A JP6613927B2 (en) 2016-01-29 2016-01-29 Information processing apparatus, information processing system, information processing method, and information processing program

Publications (2)

Publication Number Publication Date
JP2017134752A true JP2017134752A (en) 2017-08-03
JP6613927B2 JP6613927B2 (en) 2019-12-04

Family

ID=57850899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016015987A Active JP6613927B2 (en) 2016-01-29 2016-01-29 Information processing apparatus, information processing system, information processing method, and information processing program

Country Status (4)

Country Link
US (1) US10564906B2 (en)
EP (1) EP3200064A1 (en)
JP (1) JP6613927B2 (en)
CN (1) CN107025081B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019106101A (en) * 2017-12-14 2019-06-27 コニカミノルタ株式会社 System, device, method and program
JP2019175100A (en) * 2018-03-28 2019-10-10 ブラザー工業株式会社 Setup method of application program and download server
JP2020004125A (en) * 2018-06-28 2020-01-09 キヤノン株式会社 Program, method, and information processor for installing printer driver

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7013862B2 (en) * 2017-12-27 2022-02-01 株式会社リコー Information processing equipment
CN111200534B (en) * 2018-11-16 2022-01-18 中国电信股份有限公司 Terminal information determining method and device
KR20210098343A (en) * 2020-01-31 2021-08-10 캐논 가부시끼가이샤 Information processing apparatus, control method and program therefor, and server system capable of communicating with the information processing apparatus
CN113934473B (en) * 2021-12-17 2022-03-11 机科发展科技股份有限公司 Industrial electric vehicle driver application program downloading system and method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050200889A1 (en) * 2004-03-10 2005-09-15 Canon Kabushiki Kaisha Information processing apparatus, image forming apparatus, method therefor, and system
JP2007086969A (en) * 2005-09-21 2007-04-05 Oki Data Corp Printer
JP2007114900A (en) * 2005-10-18 2007-05-10 Canon Inc Information processing system executing function information provision device on network
JP2008059373A (en) * 2006-08-31 2008-03-13 Canon Inc Information processing method, information processor, program, and storage medium
JP2015026215A (en) * 2013-07-25 2015-02-05 キヤノン株式会社 Printing system and control method thereof, information processor and control method thereof, printer and control method thereof, and program

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3926060B2 (en) 1999-05-20 2007-06-06 株式会社リコー Network printer system
JP3728655B2 (en) 2000-09-11 2005-12-21 シャープ株式会社 Portable terminal device and printer / scanner system
JP2004038686A (en) * 2002-07-04 2004-02-05 Seiko Epson Corp Device for notifying storage place of device control software
US8488143B2 (en) * 2002-08-07 2013-07-16 Hewlett-Packard Development Company, L.P. Method and apparatus for detecting printer internet protocol addresses
JP4863450B2 (en) * 2005-03-29 2012-01-25 キヤノン株式会社 Information processing apparatus for customizing device driver program and device driver program customization method
KR101352851B1 (en) * 2007-08-01 2014-01-20 삼성전자주식회사 Method and apparatus for installing printer driver of image forming apparatus in printing environment which used Universal Printer Driver
US8726370B2 (en) 2007-08-02 2014-05-13 Ricoh Company, Ltd. Controlling image forming function
JP4945479B2 (en) 2008-02-25 2012-06-06 株式会社リコー Print processing apparatus, print processing method, print processing program, and recording medium
JP2010232737A (en) * 2009-03-25 2010-10-14 Fuji Xerox Co Ltd Image-processing device, image-forming device, and program
JP2011186969A (en) * 2010-03-11 2011-09-22 Canon Inc Information processing apparatus, method for controlling the same, installation method, and computer program
JP5528196B2 (en) * 2010-05-06 2014-06-25 キヤノン株式会社 Print control apparatus, print control method, and program
JP2012252526A (en) 2011-06-03 2012-12-20 Canon Inc Image processor management system, information processing device and method thereof
JP6080593B2 (en) * 2013-02-19 2017-02-15 キヤノン株式会社 Information processing apparatus and method
CN106716358B (en) * 2014-09-01 2020-01-14 株式会社理光 Information processing system and information processing method
US9880792B2 (en) 2015-03-20 2018-01-30 Ricoh Company, Ltd. Management system, information processing device, and management method
US9891878B2 (en) 2015-03-20 2018-02-13 Ricoh Company, Ltd. Information processing system, information processing apparatus, and computer-readable recording medium
JP2016177704A (en) 2015-03-20 2016-10-06 株式会社リコー Information processing apparatus, information processing program, information processing system, and image processing apparatus

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050200889A1 (en) * 2004-03-10 2005-09-15 Canon Kabushiki Kaisha Information processing apparatus, image forming apparatus, method therefor, and system
JP2005258661A (en) * 2004-03-10 2005-09-22 Canon Inc Information processor, image forming apparatus, method and system in the same apparatus
JP2007086969A (en) * 2005-09-21 2007-04-05 Oki Data Corp Printer
JP2007114900A (en) * 2005-10-18 2007-05-10 Canon Inc Information processing system executing function information provision device on network
JP2008059373A (en) * 2006-08-31 2008-03-13 Canon Inc Information processing method, information processor, program, and storage medium
JP2015026215A (en) * 2013-07-25 2015-02-05 キヤノン株式会社 Printing system and control method thereof, information processor and control method thereof, printer and control method thereof, and program

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019106101A (en) * 2017-12-14 2019-06-27 コニカミノルタ株式会社 System, device, method and program
JP2019175100A (en) * 2018-03-28 2019-10-10 ブラザー工業株式会社 Setup method of application program and download server
JP7056310B2 (en) 2018-03-28 2022-04-19 ブラザー工業株式会社 How to set up the application program and download server
JP2020004125A (en) * 2018-06-28 2020-01-09 キヤノン株式会社 Program, method, and information processor for installing printer driver
JP7286273B2 (en) 2018-06-28 2023-06-05 キヤノン株式会社 Program, method, and information processing apparatus for installing printer driver

Also Published As

Publication number Publication date
CN107025081B (en) 2020-04-10
US20170220304A1 (en) 2017-08-03
EP3200064A1 (en) 2017-08-02
US10564906B2 (en) 2020-02-18
CN107025081A (en) 2017-08-08
JP6613927B2 (en) 2019-12-04

Similar Documents

Publication Publication Date Title
JP6613927B2 (en) Information processing apparatus, information processing system, information processing method, and information processing program
US10630857B2 (en) Electronic apparatus and method to update firmware of the electronic apparatus when adding a web application to the electronic apparatus
US10223042B2 (en) System, information processing method, and storage medium
US9395976B2 (en) Information processing apparatus, firmware renewing method, and computer program
JP2008009967A (en) Information processor, information processing system, program and storage medium thereof
JP2011081741A (en) Information processing apparatus, printing system, printing method, and program
US10430130B2 (en) Information processing system, information processing method
US9967426B2 (en) Information distribution system, information processing device, and information distribution method
JP2013088992A (en) Printing system
US11647102B2 (en) Information processing apparatus, control method, and recording medium
JP2011076171A (en) Terminal device connected to internet
JP7275760B2 (en) Image processing system
JP2016177704A (en) Information processing apparatus, information processing program, information processing system, and image processing apparatus
EP3716033A2 (en) Information processing apparatus, control method, and non-transitory computer-readable storage medium
JP6759897B2 (en) Information processing equipment, information processing programs, information processing systems and information processing methods
US20130159837A1 (en) Information processing apparatus, method therefor, and computer-readable storage medium
US11625205B2 (en) Information processing apparatus, server apparatus, control method, and storage medium
JP2005301608A (en) Installation program, installation device, and installation method of peripheral equipment driver
JP6455478B2 (en) Information processing apparatus, program, and software module
CN111258510B (en) Information processing apparatus, control method, and storage medium
US10747482B2 (en) Computer-readable medium, information processing device, and method for installing appropriate program
JP5353997B2 (en) Information processing apparatus, information processing system, program, and recording medium thereof
US20240069830A1 (en) Information processing apparatus, method, and storage medium for storing program
JP6958171B2 (en) Image forming systems, information processing equipment, and programs
JP2021068012A (en) Installation program, information processing apparatus, and communication system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190917

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: 20191008

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191021

R151 Written notification of patent or utility model registration

Ref document number: 6613927

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151