JP2015006751A - 印刷装置、配信方法及びプログラム - Google Patents

印刷装置、配信方法及びプログラム Download PDF

Info

Publication number
JP2015006751A
JP2015006751A JP2013132355A JP2013132355A JP2015006751A JP 2015006751 A JP2015006751 A JP 2015006751A JP 2013132355 A JP2013132355 A JP 2013132355A JP 2013132355 A JP2013132355 A JP 2013132355A JP 2015006751 A JP2015006751 A JP 2015006751A
Authority
JP
Japan
Prior art keywords
printer driver
unit
driver
printing apparatus
distribution
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2013132355A
Other languages
English (en)
Inventor
雅弘 崎山
Masahiro Sakiyama
雅弘 崎山
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.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2013132355A priority Critical patent/JP2015006751A/ja
Publication of JP2015006751A publication Critical patent/JP2015006751A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Abstract

【課題】プリンタドライバのインストールを効率よく支援する。【解決手段】MFP10には、I/F部140に所望の追加オプションを接続可能である。受信部1310は未だプリンタドライバをインストールしていない他の装置からのプリンタドライバ配信要求を受信する。状態取得部1110は、I/F部140に接続された追加オプションの検知結果や、内部構成、設定パラメータを含む機器状態を取得する。生成部1130は機器状態に応じたプリンタドライバを生成する。そして、送信部1320を用いて、生成したプリンタドライバを要求を送信した装置に配信する。【選択図】図3

Description

本発明は、印刷装置、配信方法及びプログラムに関する。
複数の機器状態を持つ印刷装置が知られている。このような印刷装置では、ユーザは必要に応じてオプション機器を接続したり、設定内容を変更することにより、使用する機器の状態をニーズに合わせて選択することができる。一方、このような印刷装置を他の装置(パーソナルコンピュータ等)から使用するためには、現在の機器状態に合致したプリンタドライバを他の装置にインストールをする必要があった。このインストール作業の煩雑さを軽減するため、プリンタドライバのインストールを支援する技術が知られている(例えば、特許文献1)。
特許文献1は、端末装置にプリンタドライバをインストールした後に、インストールしたプリンタドライバを印刷装置の機能と整合させるシステムを開示している。特許文献1が開示するシステムを用いてインストールを支援する場合、プリンタドライバを端末装置にインストールする処理と、インストールしたドライバと機器状態の整合性を確認する処理と、現在の機器状態に合致したドライバに更新する処理と、をそれぞれ実行する。
特開2006−260356号公報
特許文献1が開示する技術では、現在の機器状態に合致したプリンタドライバをインストールする処理は、プリンタドライバを端末装置にインストールする処理と、インストールしたドライバと機器状態の整合性を確認する処理と、現在の機器状態に合致したドライバに更新する処理と、を含む。そのため、冗長な処理が必要となり、プリンタドライバのインストールを支援するにあたって効率が低かった。
本発明は上記のような事情に鑑みてなされたもので、プリンタドライバのインストールを効率よく支援する印刷装置、配信方法及びプログラムを提供することを目的とする。
上記目的を達成するため、本発明の第1の観点に係る印刷装置は、複数の機器状態を持つ印刷装置であって、現在の機器状態を示す情報である状態情報を取得する取得手段と、前記取得手段が取得した状態情報が示す機器状態に応じたプリンタドライバを配信データとして設定する設定手段と、前記設定手段が設定した配信データを他の装置に配信する配信手段と、を備えることを特徴とする。
前記印刷装置は、前記印刷装置を用いるためのプリンタドライバを既にインストールした他の装置が送信する、該プリンタドライバの更新要求を受信する受信手段を更に備え、前記設定手段は、前記受信手段が受信した更新要求に応じて、前記取得手段が取得した状態情報が示す機器状態に対応するか、最新バージョンであるか、の少なくとも一方を満たすプリンタドライバの少なくとも一部を、前記配信データとして設定する、としてもよい。
前記印刷装置において、前記設定手段は、前記更新要求を送信した他の装置にインストールされたプリンタドライバが前記取得手段が取得した機器状態に対応し、かつ最新バージョンである場合には、前記更新要求に応じた配信を中止する、としてもよい。
前記印刷装置において、前記設定手段は、前記更新要求を送信した他の装置にインストールされたプリンタドライバが最新バージョンと異なる場合には、前記取得手段が取得した機器状態に対応するか否かに関わらず、該インストールされたプリンタドライバを最新バージョンに更新するためのデータを前記配信データとして設定する、としてもよい。
前記印刷装置において、前記設定手段は、前記更新要求を送信した他の装置にインストールされたプリンタドライバが前記取得手段が取得した機器状態に対応しない場合には、該プリンタドライバが最新バージョンであるか否かに関わらず、該インストールされたプリンタドライバを該機器状態に対応させるためのデータを前記配信データとして設定する、としてもよい。
前記印刷装置は、前記機器状態に応じて、前記プリンタドライバの少なくとも一部を生成するための生成規則を記憶する記憶手段を更に備え、前記設定手段は、前記記憶手段が記憶する生成規則を用いて、前記取得手段が取得した状態情報が示す機器状態に応じたプリンタドライバを生成する生成手段を含むとともに、該生成手段が生成したプリンタドライバを前記配信データとして設定する、としてもよい。
前記印刷装置は、オプション機器を接続可能な接続手段を更に備え、前記取得手段は、前記接続手段に接続されたオプション機器の検知結果を含む状態情報を取得し、前記記憶手段は、前記生成規則として、前記オプション機器に対応するプリンタドライバを生成する生成規則を記憶し、前記生成手段は、前記状態情報に含まれる検知結果に基づいて、前記生成規則を用いて前記接続されたオプション機器に対応するプリンタドライバを生成する、としてもよい。
前記印刷装置において、前記取得手段は、前記印刷装置のネットワーク上の位置を特定する情報を含む状態情報を取得し、前記生成手段は、前記状態情報に含まれる位置を特定する情報を含むプリンタドライバを生成する、としてもよい。
前記印刷装置において、前記機器状態は、前記印刷装置の機器構成の状態と、内部構成の状態と、内部パラメータの内容と、の何れかを少なくとも含む、としてもよい。
前記印刷装置において、前記配信手段は、前記印刷装置を利用するためのプリンタドライバを新規にインストールする他の装置に、前記設定手段が設定した、前記機器状態に応じたプリンタドライバを配信する、としてもよい。
上記目的を達成するため、本発明の第2の観点に係る配信方法は、複数の機器状態を持つ印刷装置のプリンタドライバの配信方法であって、前記印刷装置の現在の機器状態を示す情報である状態情報を取得し、前記取得した状態情報が示す機器状態に応じたプリンタドライバを配信データとして設定し、前記設定した配信データを他の装置に配信する、ことを特徴とする。
上記目的を達成するため、本発明の第3の観点に係るプログラムは、複数の機器状態を持つ印刷装置を制御するコンピュータに、現在の機器状態を示す情報である状態情報を取得する処理、前記取得した状態情報が示す機器状態に応じたプリンタドライバを配信データとして設定する処理、前記設定した配信データを他の装置に配信する処理、を実行させることを特徴とする。
本発明によれば、プリンタドライバのインストールを効率よく支援できる。
この発明の実施形態1に係る印刷システムの構成を示す図である。 実施形態1に係るMFP本体及びオプション機器の例を示す図である。 (A)は、実施形態1に係るMFPの機能構成を示すブロック図である。(B)は、MFPを制御する制御コンピュータの構成を示すブロック図である。 実施形態1に係る、生成規則を用いてプリンタドライバを生成する処理を説明するための図である。 実施形態1に係るPCの機能構成を示すブロック図である。 実施形態1に係るドライバ配信処理の一例を示すフローチャートである。 実施形態1に係るインストール処理の一例を示すフローチャートである。 この発明の実施形態2に係るMFPの機能構成を示すブロック図である。 実施形態2に係るPCの機能構成を示すブロック図である。 実施形態2に係るドライバ配信処理の一例を示すフローチャートである。 実施形態1に係るインストール処理の一例を示すフローチャートである。 実施形態の変形例に係る配信リストの一例を示す図である。
以下、本発明を実施するための形態に係る、プリンタドライバのインストールを支援する機能を備える印刷装置を含む印刷システムを、図を参照して説明する。なお、図中同一又は相当する部分には同一符号を付す。
(実施形態1)
実施形態1に係る印刷システム1は、図1に示すように、MFP(Multi−Function Printer)10と、パーソナルコンピュータ(PC(Personal Computer)20a〜20d)と、を含む。MFP10と各PC(PC20a〜20d)はネットワークを介して互いに接続されている。なお、以後PC20a〜20dのそれぞれを区別しない場合には、単にPC20と表現する。
MFP10は、本体10Aと、任意に接続可能なオプション機器(拡張ユニット)と、から構成される。オプション機器には、例えば図2に示すように、ハンドセット10aや、給紙デスク10b、大容量給紙トレイ10c、キーボード10d、中継ユニット10f、小型フィニッシャ10e、パンチユニット10g、フィニッシャ10h、サドルフィニッシャ10i等が含まれる。これらのオプション機器を接続することで、MFP10の機器構成をユーザのニーズや予算に合わせて変更することが出来る。
MFP10は、機器構成を複数持ち得ると共に、内部パラメータや内部構成を変更可能である。内部パラメータにはIP(Internet Protocol)アドレスやネットワークにおける名称といったネットワーク設定が含まれる。内部構成は、例えば搭載されたトナーの種類や、何れの給紙トレーにどの大きさの紙がセットされているかといった、消耗品のセッティング状態を含む。また、内部構成はディップスイッチや内部配線によって選択されるMFPの内部機能の構成をさらに含む。このように、MFP10はユーザのニーズに応じて、機器構成、内部構成及び内部パラメータといった機器状態を変更可能である。言い換えれば、MFP10は複数の機器状態を持ちうる。
印刷システム1で印刷装置(MFP10)をPC20a〜20dで利用するためには、端末装置であるPC20a〜20dにプリンタドライバをインストールする必要がある。そこで、MFP10が各装置(PC20a〜20d)に現在の機器状態に対応するプリンタドライバを配信することにより、プリンタドライバのインストールを支援する。特に、新たに印刷システム1に加えられたり、初期化を行った場合など、未だMFP10を利用するためのドライバをインストールしておらず、新規にプリンタドライバをインストールする端末装置(PC20)に対して、直接現在の機器状態に応じたドライバを配信する。このため、一旦他の装置(PC20)にプリンタドライバをインストールした後に、現在の機器状態を確認して、プリンタドライバを現在の機器状態に応じて更新するよりも効率的にインストールを実行できる。即ち、インストール支援の効率が高い。このとき配信されるプリンタドライバを配信ドライバと表記する。配信ドライバは後述する配信データの実体となる。
MFP10は図3(A)に示すように、制御部110と、記憶部120と、通信部130と、I/F(InterFace)部140と、操作部150と、表示部160と、MFP機能部170と、を含む。制御部110および記憶部120は、MFP10の諸機能を制御する制御コンピュータ100を構成する。
制御コンピュータ100は、物理的には、図3(B)に示すようにCPU(Central Processing Unit)101と、RAM(Random Access Memory)102と、ROM(Read−Only Memory)103と、I/O(Input/Output)部104と、外部記憶装置105と、内部バス106と、から構成される。
CPU101は、制御コンピュータ100及びMFP10の諸機能を制御する中央演算装置であり、ROM103からRAM102にロードされたプログラムを実行して、後述する処理を実行する。
RAM102は、CPU101が実行するプログラムや中間データを一時的に保存し、CPU101が各種処理を行う際の作業領域として使用する揮発性メモリである。ROM103は、CPU101が実行するプログラムや各種データを格納している不揮発性メモリである。
I/O部104は、USB(Universal Serial Bus)やシリアルポート、ネットワークアダプタ等のインターフェース機器やMFP10の各部と接続された専用コネクタから構成され、操作部150、表示部160、MFP機能部170、通信部130やその他外部装置等と、制御コンピュータ100との情報の入出力を実現する。
外部記憶装置105は、ハードディスクドライブ、CD−ROM(Compact Disc Read Only Memory)、フラッシュメモリ等の不揮発性記憶装置である。外部記憶装置105は、後述するドライバ配信処理1等に用いるデータを記憶している。なお、CPU101と、RAM102と、ROM103と、I/O部104と、外部記憶装置105とは内部バス106によってそれぞれ接続され、相互に情報の送信が可能である。
CPU101がI/O部104を通じてMFP10の各部と通信し、かつRAM102を作業領域として用いることで、図3(A)の制御部110として機能する。このような物理構成により、制御部110は後述する状態取得部1110と、判別部1120と、生成部1130と、の機能を実現する。
RAM102、ROM103及び外部記憶装置105は、共同して、あるいは単独で記憶部120として機能する。記憶部120は、ネットワーク設定NSを含む現在のMFP10の設定データを記憶する。ネットワーク設定NSは、MFP10に割り振られたIPアドレスやMACアドレス、MFP10のネットワーク上の名称や通信に使用するポート番号等の情報を含む。また、記憶部120はMFP10のプリンタドライバと、プリンタドライバを生成するための生成規則GRを記憶する。本実施の形態では、プリンタドライバはドライバ本体(実行ファイルやデータ)であるベースドライバBDと、ベースドライバBDを現在の機器状態に合わせて使用するための設定ファイルを含む拡張ドライバExDと、から構成される。ベースドライバBDは、少なくとも機器状態の変更に選らず共通して必要となる、MFP10の本体10Aの諸機能を使用するための実行ファイルやデータを含む。ベースドライバBDは、MFP10を製造したメーカ等により、バージョンが更新される場合がある。
拡張ドライバExDは、現在の機器状態に応じたドライバのプロパティを指定する情報(設定ファイル)と、現在の機器状態のうちベースドライバBDのみでは利用できない構成を利用するためのデータ(例えばライブラリファイルや追加の実行ファイル)と、を含む。また、生成規則GRは、プリンタドライバの少なくとも一部(ここでは、拡張ドライバExDに含まれる設定ファイル)を、現在の状態情報に応じて生成するための生成規則を含む。本実施の形態では、生成規則GRは既知のオプション機器及びネットワーク設定に応じた設定ファイルを生成する規則を含む。
通信部130は、LAN(Local Area Network)機器や通信モデムから構成され、MFP10をPC20a〜20dといった他の装置が接続されたネットワークに接続する。通信部130は、他の装置からのプリンタドライバの配信要求(新規インストールする装置からの配信要求と、インストール済の装置からの更新要求を含む)を受信する受信部1310と、配信データ(配信ドライバ)を配信相手の他の機器に送信する送信部1320として機能する。なお、配信データとは、MFP10がプリンタドライバのインストールを支援するために他の装置に配信するデータ一般である。本実施形態では、配信データの実体は配信ドライバである。受信部1310は、受信した配信要求を制御部110に伝達する。また、送信部1320は、制御部110の指示に基づいて、制御部110によって送信バッファに格納された配信データ(配信ドライバ)を、指定されたIPアドレスの機器に送信する。
I/F部140は、図2に示したオプション機器(10a〜10i)を接続可能なインターフェースであり、接続の有無・及び接続したオプション機器の種別を感知し、感知結果を制御部110に伝達する。I/F部140は、オプション機器を接続する複数の接続部(第1接続部1410、第2接続部1420、…)を含む。何れかの接続部に、他のオプション機器をさらに接続可能なオプション機器(例えば、中継ユニット10f)を接続した場合には、そのオプション機器の接続部もI/F部140に含まれる。この場合には、オプション機器の接続部に接続された他のオプション機器の検知結果も、制御部110に伝達される。
操作部150は、タッチパネル、キーボード、ボタン、ポインティングデバイス等の、ユーザの操作を受付ける操作受付装置と、操作受付装置が受け付けた操作の情報を制御部110に伝達する伝達部と、から構成される。操作部150はこのような物理構成によりユーザの操作を受け付けて、操作情報を制御部110に伝達する。例えば、ユーザは操作部150を用いて設定項目を入力することで、ネットワーク設定NS等の設定情報を入力することができる。また、操作部150はコピーの開始指示を受け付ける実行キーやコピー枚数を指示するテンキー等により、MFP10の機能単位への指示操作を受け付ける。
表示部160は、液晶ディスプレイ等から構成され、制御部110から伝達された情報を表示する。表示部160には、例えばネットワーク設定NS等の設定情報を入力するための画面等が表示される。
MFP機能部170は、印刷、ファクシミリ、スキャナといったMFP10が持つ諸機能を発揮するための機能単位を含む。例えば、コピー原稿やファクシミリ原稿をスキャンするスキャナ部1710、原稿を印刷する印刷部1720、給紙トレイから印刷用紙を取り込む給紙部1730、印刷した原稿を指定された排紙トレイに排紙する排紙部1740等が含まれる。MFP機能部170は、I/F部140に接続されたオプション機器と共同して、印刷機能を代表とするMFP10の各機能を担う。また、MFP機能部170は、給紙トレイにセットされた用紙の大きさや、印刷部1720にセットされたトナーの種類といった内部状況(内部構成)を検出し、検出結果を制御部110に伝達する。
次に、制御部110の機能について説明する。制御部110は、図3(A)に示すように、機能単位として状態取得部1110と、判別部1120と、生成部1130と、を含む。状態取得部1110は、現在の機器状態の状態を取得し、判別部1120に伝達する。具体的には、I/F部140から、各接続部(第1接続部1410、第2接続部1420…)に接続されたオプション機器の検知結果を示す情報を取得する。さらに、MFP機能部170から、各部(印刷部1720や給紙部1730等)の内部構成の状態を示す情報を取得する。さらに、記憶部120からネットワーク設定NS等に記憶された設定パラメータの内容を取得する。そして、取得した情報を現在の機器状態をしめす状態情報としてまとめた上で、判別部1120や生成部1130に伝達する。状態取得部1110は、MFP10の電源投入や所定時間の経過といった任意のタイミングで現在の機器状態を取得しても良いが、本実施の形態では受信部1310が配信要求を受信したことを契機に機器状態を取得する。
判別部1120は、配信先の装置にインストールされたプリンタドライバの状態と、状態取得部1110が取得した構成状態と、に基づいて配信内容を判別する。具体的には、まず配信先の装置のプリンタドライバのインストール状態を取得する。例えば判別部1120は、受信した配信要求の内容に基づいて、配信先の装置にプリンタドライバがインストールされているか否か、インストールされている場合には、ドライバのバージョン情報と、対応する機器状態と、を示す情報を特定する。受信部1310がプリンタドライバ全体を配信する要求を受信した場合に、配信先の装置にプリンタドライバがインストールされていないと判別する。一方、ドライバの更新要求を受信した場合には、更新要求に含まれるドライバのバージョン情報・対応する機器状態とを抽出することで、インストールされたプリンタドライバの状態を取得すればよい。あるいは、配信要求を受信した後、通信部130を用いて配信要求を送信した装置(PC20a〜20dの何れか)と通信し、MFP10を使用するためのプリンタドライバのインストール状態を取得しても良い。
インストール状態を取得した結果、配信先の装置にMFP10を使用するためのプリンタドライバがインストールされていないと判別した場合には、判別部1120は状態取得部1110が取得した機器状態に対応し、かつ最新バージョンのプリンタドライバ全体を配信すると判別する。そして、そのような配信対象となるプリンタドライバ(配信ドライバ)を生成する旨のコマンドを生成部1130に伝達する。
一方、既にMFP10を使用するためのプリンタドライバがインストールされている場合には、判別部1120はどのような更新が必要であるか判別する。具体的には、判別部1120は、インストールされたプリンタドライバが現在の状態取得部1110が取得した機器状態に対応するか判別する。例えば、インストールされた拡張ドライバに含まれる設定ファイルが、状態取得部1110が取得した機器状態と異なる場合に、現在の機器状態に対応しないと判別する。そして、インストールされたドライバを現在の機器状態に対応させる更新データ(新たな拡張ドライバ)を配信すると判別する。そして、現在の機器状態に対応する拡張ドライバの少なくとも一部(設定ファイル)を生成する旨のコマンドを生成部1130に伝達する。さらに、不足するファイル(ライブラリファイル等)がある場合には、記憶部120から不足ファイルを読み出して、これを含む配信ファイルを生成する旨のコマンドを送信する。一方、現在の機器状態に対応する場合には、新たな拡張ドライバは配信不要であると判別する。
また、判別部1120はインストールされているプリンタドライバのバージョンが、記憶部120に記憶された最新バーションと一致するか否かを判別する。そして、一致しない場合には、プリンタドライバを最新バージョンにするためのデータを配信すると判別する。一方、最新バージョンと一致する場合には、プリンタドライバを最新バージョンにするためのデータは配信不要であると判別する。
生成部1130は、状態取得部1110が新たに状態情報を取得するたびに、記憶部120に記憶された拡張ドライバExDが最新の状態情報に対応するか判別する。そして、拡張ドライバExDが最新の状態情報に対応しない場合には、生成規則GRを用いて最新の状態情報に応じた拡張ドライバを生成し、記憶部120に上書き保存する。図4に示すように、生成部1130は状態取得部1110がI/F部140に接続されたオプション機器10a、10f、10iと、記憶部120に記憶されたネットワーク設定NSと、MFP機能部170が感知した内部構成と、に基づいて生成規則GRを用いて拡張ドライバExDを生成する。ここで、拡張ドライバExDは、(1)ネットワーク設定NSに含まれるIPアドレス等の情報を用いて、現在のネットワーク上のMFP10の位置を特定する情報と、(2)接続されたオプション機器及びその種別を特定すると共に、そのオプション機器を使用可能とするための情報(例えば、ライブラリファイルの位置情報)と、(3)内部構成(例えば、何れのトレイにどのサイズの用紙がセットされているか)を特定する情報と、の何れかを含む。図4の例では、生成規則GRは、このような条件を満たす拡張ドライバExDの少なくとも一部(設定情報を文字情報で示すテキストを含む設定ファイル)を生成するため、状態情報を変数としたテキスト生成規則である。
MFP10は、内部規則GRを用いて、最新の状態情報に応じたプリンタドライバを生成できるので、ありうる機器状態の全パターンに対応するプリンタドライバを記憶する必要がない。よって、少ない記憶容量で、複数の機器状態を持ち得る印刷機に対応するプリンタドライバを配信できる。即ち、プリンタドライバのインストール支援を効率よく実行できる。
生成部1130はさらに、判別部1120から伝達されたコマンドに基づいて、配信対象の装置に配信するプリンタドライバ(配信ドライバ)を生成する。具体的には、プリンタドライバ全体を配信する場合には、最新バージョンのベースドライバBDと、状態取得部1110が取得した最新の状態情報に応じて生成された拡張ドライバExD(必要な場合はライブラリファイルを含む)と、を合成して配信ドライバを生成する。また、最新バージョンに更新するが、現在の機器状態に対応させるための更新は不要である場合には、最新バージョンのベースドライバBDを含み、拡張ドライバExDを含まない配信ドライバを生成する。また、現在の機器状態に対応させるための更新を実行するが、最新バージョンBDへの更新が不要である場合には、最新の状態情報に応じて生成された拡張ドライバExDを含むが、ベースドライバBDを含まない配信ドライバを生成する。
生成部1130は、生成した配信ドライバを、配信データとして設定する。具体的には、生成した配信ドライバを、RAM102の所定領域に設けられた送信バッファに格納する。このように、生成部1130は、状態取得部1110が取得した状態情報が示す機器状態に応じたプリンタドライバ(配信ドライバ)を配信データとして設定する機能を担う。そして、制御部110が、送信部1320を用いて、送信バッファに格納された配信データ(配信ドライバ)をPC20に送信することにより、配信データ(配信ドライバ)が配信される。配信先の装置に、MFP10を使用するためのプリンタドライバをインストールされて居なかった場合には、プリンタドライバ全体が配信される。即ち、制御部110に制御された送信部1320が、印刷装置(MFP10)を利用するためのプリンタドライバを未だインストールしていない、これから新規にプリンタドライバをインストールする他の装置に配信する配信手段として機能する。配信されたプリンタドライバを他の装置(PC20)にインストールすれば、その後にネットワーク情報の入力や更新処理をする必要なく、現在の機器状態に合わせて他の装置からMFP10をすぐに利用することが出来る。よって、プリンタドライバのインストール支援を効率よく実行できる。
配信対象となるPC20は、例えば図5に示すように、制御部210と、通信部220と、記憶部230と、操作部240と、表示部250と、を含む。制御部210は、RAMを作業領域としたCPUから構成された汎用のパーソナルコンピュータの演算部である。制御部210は、操作部240を用いたユーザの指示操作に基づいて、プリンタデバイスの配信要求コマンドを生成する要求生成部2110と、要求に応じてMFP10が配信したプリンタデバイスをインストールするインストール部2120と、として機能する。本実施の形態では、要求生成部2110は、記憶部230にMFP10を実行するためのプリンタドライバが記憶されていない場合には、最新の機器状態に対応する最新バージョンのプリンタドライバ全体の配信要求を生成する。一方、既にインストール済の場合には、インストールされたベースドライバのバージョンを示す情報と、現在の拡張ドライバが対応する機器状態を示す情報(例えば、インストールされたドライバが対応する機器状態を示す設定ファイル)と、を含む配信要求を生成する。
なお、操作部240を用いたユーザの指示操作は、PC20にインストールされたインストール支援ソフトウェアの起動を指示する操作である。あるいは、すでにインストールされたプリンタドライバがインストールされている場合には、プリンタドライバに含まれる更新用ソフトウェアの実行指示であってもよい。一方、プリンタドライバがインストールされていない場合には、例えばネットワークディスクであるMFP10の記憶部120に含まれるインストール用ソフトウェアの実行指示をネットワークを介して送信する指示操作であってもよい。このような構成によれば、PC20に要求指示を送信する特別の構成が無くても、MFP10の記憶部120を他の装置から参照可能とするだけで、最新バージョンかつ最新の機器設定に対応したプリンタドライバを効率的に支援するシステムを構築できる。
図5に戻って、通信部220は、LAN(Local Area Network)機器や通信モデムから構成され、PC20をMFP10が接続されたネットワークに接続する。通信部220は、このような物理構成により要求生成部2110が生成した配信要求コマンドをMFP10に送信する送信部2210と、MFP10が配信したプリンタデバイス等を受信する受信部2220として機能する。
記憶部230は、ハードディスクドライブやフラッシュメモリ等の不揮発性記憶装置である。記憶部230は、インストール部2120のインストール処理に基づくプリンタドライバを記憶する。その結果、記憶部230には配信時の機器状態に対応する拡張ドライバと、最新バージョンのベースドライバを含むプリンタドライバが記憶される。
操作部240は、タッチパネル、キーボード、ボタン、ポインティングデバイス等の、ユーザの操作を受付ける操作受付装置と、操作受付装置が受け付けた操作の情報を制御部210に伝達する伝達部と、から構成される。操作部240はこのような物理構成によりユーザの操作を受け付けて、操作情報を制御部210に伝達する。例えば、ユーザは操作部240を用いて配信要求の送信処理や、配信されたプリンタドライバのインストール処理の実行をPC20に指示することができる。
表示部250は、液晶ディスプレイ等から構成され、制御部210から伝達された情報を表示する。ユーザは、このような表示部250に表示された画面に基づいて操作部240を操作することにより、制御部210への指示操作を実行すると共に、インストールの結果を確認することが出来る。
次に、印刷システム1において実行される処理のうち、プリンタドライバのインストール支援に関する処理を、フローチャートを参照して説明する。印刷システム1において、MFP10が図6に示すドライバ配信処理1を実行し、かつ、PC20が図7に示すインストール処理1を実行することにより、最新のMFP10の機器状態に応じたプリンタドライバをPC20にインストールすることが出来る。
MFP10は、電源が投入された後初期設定が終了して定常状態に移行すると、MFP10の諸機能を実現するための他の処理と平行して、図6に示すドライバ配信処理1を開始する。ドライバ配信処理1では、まず制御部110は受信部1310が他の装置が送信する配信要求(プリンタドライバをインストールしていない装置からの配信要求、又は、インストール済みの装置からの更新要求)を受信したか否か判別する(ステップS101)。受信していない場合は(ステップS101;No)、ステップS101を繰り返して受信するまで待ち受ける。一方、受信している場合には(ステップS101;Yes)、状態取得部1110が現在の機器状態を取得する(ステップS102)。具体的には、I/F部140から接続されたオプション機器の有無や種別を含む機器構成の状態情報を取得し、記憶部120から現在のIPアドレスやネットワークにおける名称を取得し、MFP機能部170から内部構成の状態情報を取得する。そして、取得した情報を状態情報としてまとめ、RAM102の所定領域に一時記憶する。
次に、生成部1130が、状態取得部1110が一時記憶した現在の状態情報に基づいて、拡張ドライバExDを生成する(ステップS103)。生成された拡張ドライバExDは、記憶部120に記憶される。この拡張ドライバExDには、少なくともIPアドレスといった、ネットワーク上のMFP10の位置を特定する情報が含まれることが望ましい。なお、生成規則GRに、状態情報に対応するために必要なライブラリファイルが指定されている場合には、生成部1130はそのライブラリファイルを拡張ドライバExDに加える。なお、前回に拡張ドライバExDを作成したときと状態が変わらない場合には、ステップS103をスキップしてもよい。
次に判別部1120が、配信要求を送信した装置に最新バージョンのベースドライバがインストールされているか否か確認する(ステップS104)。
ここでは、配信要求に最新バージョンのベースドライバがインストール済みであるとの情報が含まれている場合に、最新バージョンのベースドライバがインストール済みであると判別する(ステップS104;Yes)。この場合、ベースドライバの配信は不要なので、判別部1120は処理をステップS106にスキップする。一方、旧バージョンのベースドライバがインストールされているか、バージョン情報が配信要求に含まれて居ない(未インストール)の場合には、最新バージョンのドライバがインストールされていないと判別し(ステップS104;No)、ステップS105を実行する。ステップS105では、判別部1120が最新バージョンのベースドライバを配信すると判別した上で、RAM102の所定領域に最新バージョンのベースドライバをセットする(ステップS105)。
ステップS105の処理を実行するか、ステップS104でYesと判別した後に、次に判別部1120は要求を送信した装置に、現在の機器状態に全て対応する拡張ドライバがインストールされているか否か判別する(ステップS106)。具体的には、配信要求に記憶部120に記憶された、直近に取得された最新の機器状態に対応する拡張ドライバExDの設定ファイルと一致する設定ファイルが含まれている場合に、現在の機器状態に応じた拡張ドライバがインストールされていると判別する(ステップS106;Yes)。この場合、拡張ドライバの配信は不要なので、制御部110は処理をステップS108にスキップする。一方、拡張ドライバExDの設定ファイルと不一致の拡張ドライバがインストールされているか、拡張ドライバが配信要求に含まれていないか、いずれかの場合には、現在の機器状態に応じた拡張ドライバがインストールされていないので(ステップS106;No)、ステップS107を実行する。ステップS107では、判別部1120は拡張ドライバExDを配信すると判別し、RAM102の所定領域に最新に取得された機器状態に対応する拡張ドライバExDをセットする(ステップS107)。
ステップS107の処理を実行するか、ステップS106でYesと判定した後に、判別部1120は要求を送信した装置に最新バージョンのベースドライバと、ステップS102で取得された機器状態に全対応する拡張ドライバがインストール済みであるが判別する(ステップS108)。ここでは、ステップS104でYesと判別し、かつステップS106でYesと判別した場合には、最新かつ全対応のプリンタドライバがインストール済みであると判別する(ステップS108;Yes)。即ち、状態取得部1110が直近に取得した機器状態と、インストールされた拡張ドライバが対応する構成と、を比較している。この場合には、制御部110は配信処理を中止(キャンセル)し、更新不要コマンドを、配信要求を送信した装置(PC20)に送信する(ステップS111)。即ち、プリンタドライバを配信しない。
一方、ステップS104でNoと判別したか、ステップS106でNoと判別したか、少なくとも一方を満たす場合には(ステップS108;No)、生成部1130がステップS105及びステップS107のうち実行されたステップでセットされたドライバを含む配信ドライバを配信データとして設定する(ステップS109)。具体的には、セットされたベースドライバBD及び/又は拡張ドライバExDを、アーカイバを用いて圧縮する。そして、RAM102の所定領域に設けられた送信バッファに圧縮したデータを格納するなどして、圧縮された配信ドライバをPC20に配信する配信データとして設定する。配信データとして設定された配信ドライバは、送信部1320が配信先の装置に送信する(ステップS110)。ステップS110又はステップS111の処理が終了すると、ステップS101で受信した配信要求に応じたインストール支援は終了する。そのため、ステップS101に戻って次の要求を待ち受ける。MFP10は、この処理を、電源が落ちるまで繰り返す。
続いて、PC20が実行する処理のうち、プリンタドライバのインストールに関する処理について説明する。PC20は、電源が投入された後初期設定が終了して定常状態に移行すると、PC20の諸機能を実現するための他の処理と平行して、図7に示すインストール処理1を開始する。あるいは、予めインストールされたプリンタドライバのインストール支援ソフトを立ち上げ操作を受け付けると、インストール処理1を開始するとしても良い。
インストール処理1では、まず制御部210が、MFP10の機器状態に対応するプリンタドライバのインストールを指示するユーザ操作を受け付けたか否か判別する(ステップS201)。操作部240を通じたインストール指示操作を検知できなかった場合には、インストール操作を受け付けていないと判別し(ステップS201;No)、ステップS201を繰り返して操作を待ち受ける。一方、受け付けた場合には(ステップS201;Yes)、要求生成部2110が記憶部230に問い合わせて、現在インストールされているプリンタドライバの構成を取得する(ステップS202)。具体的には、MFP10に対応するプリンタドライバがあるか否か、ある場合にはベースドライバのバージョン情報と、拡張ドライバが対応する機器状態と、を示す情報を取得する。
次に、要求生成部2110が、ステップS202で取得した情報に応じた配信要求を生成する。そして、生成された配信要求を、送信部2210を用いてMFP10に送信する(ステップS203)。既にプリンタドライバがインストールされている場合には、この配信要求はプリンタドライバの更新要求と言うことが出来る。
ステップS203の送信処理が終わると、次にステップS204にて受信部2220がMFP10からの応答を受信したか判別する。未だ応答を受信していない場合には(ステップS204;No)、ステップS204を繰り返して応答を待ち受ける。このとき、所定の時刻(例えば1分)を超えて応答が無い場合には、タイムアウト処理としてインストール処理1をエラー停止してもよい。あるいは再度、配信要求を送信してもよい。
一方、図6のステップS110又はS111におけるMFP10の応答を受信した場合には(ステップS204;Yes)、次に制御部210が受信したコマンドがステップS111で送信される更新不要コマンドであるか否か判別する(ステップS205)。更新不要コマンドである場合には(ステップS205;Yes)、すでに最新バージョンかつ、最新の機器状態に対応するプリンタドライバがインストール済みであるので、ステップS201にもどって新たな操作を待ち受ける。
一方、更新不要コマンドで無い場合には(ステップS205;No)、受信したコマンドは、配信ドライバを含んでいる。そこで、ステップS109で生成され、ステップS204で制御部210が受信した配信ドライバをインストールする処理を実行する(ステップS206)。具体的には、圧縮された送信ファイルを解凍し、解凍したファイルを記憶部230の所定領域に保存する。既にインストールされている場合には、上書き保存することで更新する。また、必要な場合はOSの設定ファイルも更新する。その後、ステップS201にもどって新たな操作を待ち受ける。
以上説明したとおり、本実施形態の印刷システム1では、現在の印刷装置(MFP10)の機器状態を示す情報である状態情報を取得した上で、取得した状態情報が示す機器状態に応じたプリンタドライバ(配信ドライバ)を配信データとして設定し、印刷装置を利用する他の装置(PC20)に配信する。そのため、配信されたプリンタドライバを他の装置にインストールするだけで、印刷装置を直ぐに使用できる。即ち、高い効率でプリンタドライバのインストールを支援することが出来る。
例えば、一旦プリンタドライバを他の装置にインストールした後に、現在の装置状態を印刷装置に問い合わせて設定操作をする場合と比べ、印刷装置及び端末装置(他の装置であるPC20)の双方の処理負担が小さい。また、必要な通信量が減少する。さらに、印刷装置そのものによってインストール支援を行うので、別途サーバを設ける必要がない。
また、状態情報に係る機器状態は、印刷装置の機器構成の状態と、内部構成の状態と、内部パラメータの内容と、何れかを少なくとも含む。そのため、機器構成、内部構成又は内部パラメータをユーザのニーズに合わせて変更した場合でも、機器構成に応じたプリンタドライバを効率よく他の機器にインストールする事が出来る。
なお、上記実施例では状態取得部は機器状態としてオプション機器の接続状態を含む機器構成の状態と、消耗品のセッティング状態やディップスイッチや内部配線によって選択されるMFP内部の機能構成を含む内部構成の状態と、ネットワーク設定などの設定パラメータの内容と、を取得した。本発明は、このうち少なくとも一つを機器状態として取得し、機器状態に対応するドライバを配信することで上述の効果を発揮することができる。
また、生成部が生成規則を用いて機器状態に応じたプリンタドライバを生成するため、あり得る全ての機器状態に対して予めプリンタドライバを記憶する必要が無い。そのため、インストール支援をするための必要記憶容量が少ない。
また、本実施形態では、オプション機器を接続可能な接続手段(I/F部など)を備える印刷装置において、機器構成の状態情報としてオプション機器の検知結果を取得した上で、接続されたオプション機器に対応するプリンタドライバを配信する。そのため、ユーザがオプション機器を接続することで印刷装置の機能をニーズに合わせて拡張可能であり、かつ効率良く接続されたオプション機器に応じたプリンタドライバを印刷装置を利用する他の装置にインストールすることが出来る、利便性が高い印刷システムを提供できる。
また、内部構成を変更可能な印刷装置において、内部構成の状態の検知結果を取得した上で、取得した内部構成の状態情報に対応するプリンタドライバを配信する。そのため、ユーザがニーズに合わせて、消耗品のセッティング状態や内部設定等の内部構成の状態を変更可能であり、かつ効率良く内部構成の状態に対応するプリンタドライバを印刷装置を利用する他の装置にインストールすることが出来る、利便性が高い印刷システムを提供できる。
さらに、設定パラメータを変更可能な印刷装置において、設定パラメータの内容に応じたプリンタドライバを配信する。そのため、ユーザがニーズに合わせて設定パラメータを変更可能であり、かつ効率良く設定パラメータの内容に対応するプリンタドライバを印刷装置を利用する他の装置にインストールすることが出来る、利便性が高い印刷システムを提供できる。特に、設定パラメータとしてIPアドレスなどのネットワーク上の印刷装置の位置を特定できるパラメータを含むため、PC20等の他の装置から印刷装置を検索したりIPアドレスを設定する必要が無いため、インストールがより簡便に実行できる。
また、印刷装置を用いるためのプリンタドライバを既にインストールした他の装置が送信する、プリンタドライバの更新要求(即ち、インストール済の装置からの配信要求)を受信した場合には、状態取得部が取得した現在の状態情報が示す機器状態に対応するか、最新バージョンであるか、少なくとも一方を満たすプリンタドライバの少なくとも一部を更新要求を送信した他の装置に配信する。そのため、インストール済みのプリンタドライバを、最新バージョンであるか、あるいは最新の機器状態に対応するか、少なくとも一方を満たすように効率よく更新することが出来る。
ここで、本実施形態の印刷装置は更新要求を送信した他の装置にインストールされたプリンタドライバが取得手段が取得した機器状態に対応し、かつ最新バージョンである場合には、更新要求に応じたプリンタドライバの配信を中止する。即ち、プリンタドライバを配信しない。そのため、不要なトラフィック及び処理負担の増加を防止することが出来る。
また、更新要求を送信した他の装置にインストールされたプリンタドライバが最新バージョンと異なる場合には、状態取得部が取得した現在の機器状態に対応するか否かに関わらず、インストールされたプリンタドライバを最新バージョンに更新するためのデータを他の装置に配信する。よって、煩雑な更新操作の要無くインストールされたプリンタドライバを最新バージョンに更新することができる。
さらに、更新要求を送信した他の装置にインストールされたプリンタドライバが、状態取得部が取得した現在の機器状態に対応しない場合には、プリンタドライバが最新バージョンであるか否かに関わらず、インストールされたプリンタドライバを機器状態に対応させるためのデータを他の装置に送信する。そのため、煩雑な更新操作の要無くインストールされたプリンタドライバを取得した機器状態に対応するように更新することができる。
また、印刷装置を利用するためのプリンタドライバを新規にインストールするPCに、状態取得部が取得した現在の機器状態に対応するプリンタドライバを配信する。このため、新規インストールする場合でも、配信されたプリンタドライバをインストールするだけで良いので、インストール後の判別処理や通信が不要となる。よって、インストール支援の効率が高い。
(実施形態2)
次に、本発明の実施形態2について説明する。実施形態2に係る印刷システムは、図8に示すMFP11と、図9に示すPC21と、を含む。実施形態2に係る印刷システムは、インストール済みのプリンタドライバの設定内容を参照して配信内容を判別する処理を、端末装置であるPC21で実行する点で、実施形態1と異なる。
MFP11は、図8に示すように、実施形態1に係るMFP10と比較して制御部111が判別部の代わりに応答部1140を備える点が異なる。MFP11の物理構成及び他の機能構成はMFP10と同様である。
応答部1140は、後述するPC21の比較部2130が送信する状態要求コマンドに応答して、状態取得部1110が取得した機器状態を示す状態情報と、ベースドライバの最新バージョンを示す情報と、をPC21に送信する。
PC21は、図9に示すように、実施形態1に係るPC20と比較して制御部211が比較部2130を更に備える点が異なる。また、要求生成部2111の機能が異なる。PC21の物理構成及び他の機能構成はPC20と同様である。
要求生成部2111は、操作部240を用いたユーザの指示操作に基づいて、プリンタデバイスの配信要求コマンドを生成する。ただし、インストール済みのドライバの内容を示す情報は取得せず、単に配信処理を開始するにあたって状態情報の送信を要求する状態要求コマンドを生成する点が、実施形態1の要求生成部2110と異なる。要求生成部2111は、状態要求コマンドを、送信部2210を用いてMFP11に送信する。なお、インストール済の場合には、送信部2210が送信するコマンドは、デバイスの更新処理の開始を要求することになる。
比較部2130は、MFP11の応答部1140が状態要求コマンドに応答して送信する状態情報と、記憶部230に記憶されたドライバの内容を比較する。そして、比較結果に基づいて、必要なプリンタドライバの内容を指定する配信ドライバ指定コマンドを、送信部2210を用いてMFP11に送信する。具体的には、MFP11を使用するためのプリンタドライバがインストールされていない場合には、ベースドライバ及び拡張ドライバを含むプリンタドライバ全体の配信を要求するコマンドを送信する。この場合、PC21はこれから新規にMFP11を使用するためのプリンタドライバをインストールする。
また、インストールされたベースドライバのバージョンが最新でない場合には、比較部2130はベースドライバを更新するため、ベースドライバBDの配信を要求するコマンドを送信する。また、拡張ドライバが状態情報が示す機器状態に対応しない場合には、拡張ドライバを更新するため、拡張ドライバExDの配信を要求するコマンドを送信する。なお、ベースドライバのバージョンが最新であり、かつ拡張ドライバが状態情報が示す機器状態に対応する場合には、更新の必要が無いので、ドライバの配信を要求(更新要求)するコマンドを送信しない。このとき、配信処理の停止を示すコマンドをMFP11に送付してもよい。
次に、本実施形態の印刷システムにおいて実行されるインストール支援に関する処理を、フローチャートを参照して説明する。
MFP11は、電源が投入された後初期設定が終了して定常状態に移行すると、MFP11の諸機能を実現するための他の処理と平行して、図10に示すドライバ配信処理2を開始する。ドライバ配信処理2では、まず制御部111は受信部1310が他の装置(PC21)が送信する状態要求コマンドを受信したか否か判別する(ステップS301)。受信していない場合は(ステップS301;No)、ステップS301を繰り返して受信するまで待ち受ける。一方、受信している場合には(ステップS301;Yes)、図6のステップS102と同様に、状態取得部1110が現在の機器状態を取得する(ステップS302)。
次に、制御部111は前回拡張ドライバを更新したときから機器状態が更新されているか判別する(ステップS303)。更新されている場合には(ステップS303;Yes)、図6のステップS103と同様に、現在の機器状態に応じた拡張ドライバを生成する(ステップS304)。
次に、ステップS303で更新されていないと判別するか(ステップS303;No)、ステップS304の処理を終えた後に、応答部1140が、ステップS302で取得した機器状態を示す状態情報と、ベースドライバBDのバージョンを示す情報と、をPC21に送信する(ステップS305)。具体的には、最新バージョンを示す数値と、拡張ドライバExDに含まれる設定ファイルと、を含むファイルを送信部1320を用いてPC21に送信する。
次に、制御部111は、受信部1310が他の装置(PC21)が後述するステップS406で送信する配信ドライバ指定コマンドを受信したか否か判別する(ステップS306)。受信していない場合は(ステップS306;No)、次に送信待ち処理がタイムアウトしたか否か判定する(ステップS307)。具体的には、ステップS305にて送信してから所定時間(例えば1分)が経過してなお配信ドライバ指定コマンドを受信していない場合には、タイムアウトと判別して(ステップS307;Yes)、配信処理を中止し、ステップS301に戻る。これにより、ステップS305で送信した状態情報に基づき、PC21の比較部2130がプリンタドライバの更新が不要であると判別して配信ドライバ指定コマンドを送信しなかった場合に、プリンタドライバの配信を中止することができる。即ち、プリンタドライバの配信を行わない。
一方、タイムアウトでないと判別すると(ステップS307;No)、ステップS306に戻ってコマンドを受信するまで待ち受ける。
ステップS306にて、配信ドライバ指定コマンドを受信したと判別した場合には(ステップS306;Yes)、次に制御部111は配信ドライバ指定コマンドの内容に基づいて、配信ドライバを設定する(ステップS308)。具体的には、最新に取得された機器状態に全対応する拡張ドライバExD及び最新バージョンのベースドライバBDのうち、配信ドライバ指定コマンドが要求するものをアーカイバを用いて圧縮する。そして、RAM102の所定領域に設けられた送信バッファに圧縮したデータを格納するなどして、圧縮された配信ドライバをPC20に配信する配信データとして設定する。次に、配信データとして設定された配信ドライバを、送信部1320が配信先のPC21に送信する(ステップS309)。ステップS309の処理が終了すると、ステップS301で受信した配信要求に応じたインストール支援は終了する。そのため、ステップS301に戻って次の要求を待ち受ける。MFP11は、この処理を、電源が落ちるまで繰り返す。
続いて、PC21が実行する処理のうち、プリンタドライバのインストールに関する処理について説明する。PC21は、電源が投入された後初期設定が終了して定常状態に移行すると、PC21の諸機能を実現するための他の処理と平行して、図11に示すインストール処理2を開始する。あるいは、予めインストールされたプリンタドライバのインストール支援ソフトを立ち上げ操作を受け付けると、インストール処理1を開始するとしても良い。インストール処理2では、まず制御部211が、MFP11の機器状態に対応するプリンタドライバのインストールを指示するユーザ操作を受け付けたか否か判別する(ステップS401)。操作部240を通じたインストール指示操作を検知できなかった場合には、インストール操作を受け付けていないと判別し(ステップS401;No)、ステップS401を繰り返して操作を待ち受ける。一方、受け付けた場合には(ステップS401;Yes)、要求生成部2111がMFP11への状態要求コマンドを生成する。そして、生成した状態要求コマンドをMFP11に送信する(ステップS402)。既にプリンタドライバがインストールされている場合には、この状態要求コマンドはプリンタドライバの更新支援処理の開始を要求するコマンドと言うことが出来る。
ステップS402が終わると、次に、制御部211は受信部2220がMFP11がステップS305で送信する状態情報を受信したか否か判別する(ステップS403)。未だ受信していない場合には(ステップS403;No)、ステップS403を繰り返して応答を待ち受ける。このとき、所定の時刻(例えば1分)を超えて応答が無い場合には、タイムアウト処理としてインストール処理2をエラー停止してもよい。あるいは再度、状態要求コマンドを送信してもよい。
一方、状態情報を受信した場合には(ステップS403;Yes)、次に比較部2130がインストールされたプリンタドライバの内容と、状態情報が示す最新のMFP11の機器状態と、を比較する(ステップS404)。
比較部2130は、比較の結果に基づいて、最新バージョンのベースドライバと、機器状態に全て対応する拡張ドライバと、がすでにインストールされているか否かを判別する(ステップS405)。最新バージョンのベースドライバと、機器状態に全て対応する拡張ドライバと、がすでにインストールされている場合には(ステップS405;Yes)、ドライバの更新は不要であるので、ステップS401で受け付けた操作に基づくプリンタドライバのインストールを中止する。具体的には、処理内容を示すバッファをフラッシュして、ステップS401に戻って新たなインストール指示操作を待ち受ける。
一方、最新バージョンのベースドライバと、機器状態に全て対応する拡張ドライバと、の何れかがインストールされていないと判別した場合には(ステップS405;No)、必要なプリンタドライバの内容を指定する配信ドライバ指定コマンドを生成した上で、MFP11に送信する(ステップS406)。ここで、最新バージョンのベースドライバがインストールされていない場合には、配信ドライバ指定コマンドは最新バージョンのベースドライバの配信要求コマンドを含む。また、機器状態に全て対応する拡張ドライバがインストールされていない場合には、最新の拡張ドライバの配信要求コマンドを含む。また、最新バージョンのベースドライバも機器状態に全て対応する拡張ドライバも共にインストールされていない場合には、両方の配信要求コマンドを含む。なお、配信ドライバ指定コマンドは、プリンタドライバがインストールされていない場合には、新規インストールのためのドライバ配信要求である。一方、インストールされている場合には、既存のプリンタドライバを更新するためのドライバを要求する更新要求コマンドである。
ステップS406の送信処理が終わると、次にステップS407にて受信部2220がMFP11からの応答(配信ドライバ)を受信したか判別する。未だ応答を受信していない場合には(ステップS407;No)、ステップS407を繰り返して応答を待ち受ける。このとき、所定の時刻(例えば1分)を超えて応答が無い場合には、タイムアウト処理としてインストール処理2をエラー停止してもよい。あるいは再度、配信ドライバ指定コマンドを送信してもよい。
一方、図10のステップS308でMFP11が送信する配信ドライバを受信したと判別した場合には(ステップS407;Yes)、受信した配信ドライバをインストールする処理を実行する(ステップS408)。具体的には、圧縮された送信ファイルを解凍し、解凍したファイルを記憶部230の所定領域に保存する。既にインストールされている場合には、上書き保存することで更新する。また、必要な場合はOSの設定ファイルも更新する。その後、ステップS401にもどって新たな操作を待ち受ける。
以上説明したとおり、本実施形態ではMFPに変わり印刷装置を利用する端末装置(PC21)が配信ドライバの内容を決定する処理を実行する。そのため、プリンタドライバのインストールを支援するにあたって、MFPの処理負担が軽い。一般に、PCはMFCよりも計算処理能力が高い。さらに、複数のPCが一つのMFCを使用する場合が多いため、MFCの処理負担を軽くして、PCがその分を負担することが有効である場合が多い。即ち、インストール支援の処理負担を適切に分担することが出来る。
(変形例)
以上、本発明の実施形態1及び2について説明したが、本発明の実施形態はこれに限られない。
例えば、印刷装置は他の装置からの要求に応じてプリンタドライバを配信した。しかし、これに限らず印刷装置がベースドライバの更新や機器設定の変更を契機に他の装置にプリンタドライバを配信してもよい。
このためには、印刷装置はプリンタドライバを配信するたびに、図12に示すようなリストに配信先の装置を登録し、ベースドライバの更新や機器設定の変更が発生するたびに、登録された装置に必要なプリンタドライバの配信を行えばよい。
これに関連して、印刷装置がメーカのサーバ等と通信して、プリンタドライバのバージョンが更新される毎に記憶部120に最新のバージョンをダウンロードする構成も有効である。このような構成と、印刷装置がバージョンの更新を契機に他の装置にドライバを配信する構成とを合わせれば、印刷システムの各端末装置に、自動的に最新バージョンのプリンタドライバをインストールすることができる。
また、上記実施形態では、配信要求を受信したことを契機に機器状態を取得して拡張ドライバを更新した。このような構成によれば、配信要求に対して、そのときに取得した最新の機器状態に応じたプリンタドライバを配信することができる。その他のタイミングとして、例えば電源投入時に機器状態を取得する構成も可能である。このような構成は、特に機器状態のうち機器構成の状態(接続されたオプション機器の状態)を重視する場合に有効である。オプション機器を新たに接続したり、取り外したりする場合には、一旦電源を落とす。そのため、電源投入時に機器構成の状態情報を取得するだけで、最新の機器構成の状態に応じたプリンタドライバを配信できる。このような構成では、印刷装置の処理負担を減らすと共に、配信要求に対してプリンタドライバを配信する応答速度を向上させることが出来る。その他、予め定めた期間(例えば、1時間)毎に機器状態を確認する、といった任意の設定が可能である。
さらに、上記実施形態では、端末装置におけるプリンタドライバのインストール状態を確認した上で、必要な構成のみを配信した。しかし、印刷装置が配信要求を送信した他の装置にプリンタドライバがインストールされているかにかかわらず、最新バージョンかつ最新の機器状態に対応するプリンタドライバ全体を配信してもよい。このような構成によれば、配信処理を簡略化できる。また、インストールされたプリンタドライバの内容を送受信するための構成を備えていない端末装置に対しても、インストール支援を効率よく実行することが出来る。即ち、インストール支援ソフトを端末装置にインストールする必要がない。なお、インストール支援ソフトを端末装置にインストールする変わりに、印刷機がネットワークを介して提供するインストール支援ソフトの機能を、端末装置が利用する構成も有効である。
例えば、印刷システム1に含まれる印刷装置として、MFPを例に挙げて説明した。しかしこれに限らず、本発明は家庭用のレーザプリンタやインクジェットプリンタなど、制御部と記憶部を有し、複数の機器状態を取りうる任意の印刷装置に応用可能である。また、印刷装置を利用する他の装置としてパーソナルコンピュータ(PC20、PC21)を例示したが、これに限らずタブレット端末やスマートフォン、PDAといった、プリンタドライバをインストールして印刷装置を使用可能な任意の端末装置であってよい。
また、インストール支援の対象となるプリンタドライバが、ドライバ本体(実行ファイルやデータ)であるベースドライバBDと、ベースドライバBDを現在の機器状態に合わせて使用するための設定ファイルを含む拡張ドライバExDと、から構成される例について主に説明した。しかし、プリンタドライバの構成はこれに限らない。例えば、拡張ドライバはベースドライバと連動して動作する実行ファイルであっても良い。また、プリンタドライバがベースドライバと拡張ドライバに分離されていない構成も可能である。例えば、記憶部にプリンタドライバのソースファイルを記憶しておき、生成規則を用いてソースファイルに含まれるパラメータ変数やソースコードを取得した機器状態に合わせて改変した上でビルドすれば、分離されていない配信デバイスを生成することが出来る。あるいは、ソースコードは変更せず、ビルドする際の環境変数を機器状態に合わせて改変してもよい。
他の機器(PC20やPC21)にインストールされているプリンタドライバがどのような機器状態に対応しているかを決定する方法は、拡張ドライバに含まれる設定ファイルそのものを伝達する方法に限られない。例えば、拡張ドライバの少なくとも一部(設定ファイル)を生成するに当たって、その拡張ドライバが対応する機器状態を特定可能な情報を付加し、更新要求時に設定ファイルではなく付加情報を伝送して、対応の可否を確認する構成も可能である。この付加情報としては、例えば拡張ドライバを生成した時刻、又は、MFPが何度目に生成した拡張ドライバであるかを示す番号といった拡張ドライバが生成されたタイミングを示すタグ情報が考えられる。
例えば実施形態1において、他の機器(PC20)は、新規インストール時に配信された拡張ドライバに含まれるタグ情報を記憶装置に記憶した上で、更新時にタグ情報を含めた更新要求を送信すればよい。
一方、MFP(MFP10)は、拡張ドライバを生成するたびに、生成時刻や生成回数を示すタグ情報を拡張ドライバに付加し、配信にあたってタグ情報を含む拡張ドライバを配信すればよい。また、タグ情報を含まない配信要求を受け取った場合には、新規インストールのための配信要求であると判定して、現在の機器状態に対応する拡張ドライバとベースドライバを含む配信データを配信すればよい。一方、タグ情報を含む配信要求を受信した場合には、受信したタグ情報が示すタイミングから機器状態が更新されたか否かを確認して、更新されている場合には、例えば図6のステップS106でNoと判定するなどして、現在の機器状態に対応する拡張ドライバを配信すればよい。
あるいは、付加情報として、その拡張ドライバが対応する機器状態を特定可能な情報のみを凝縮したデータを用いても良い。例えば、あり得る全ての機器状態の項目を変数とし、変数に対してユニークなハッシュ値を返すハッシュ関数を設計する。そして、拡張ドライバを生成するたびに、このビット列を付加情報として生成した拡張ドライバの先頭などに付加する。そして、図3(A)の判別部1120や図9の比較部2130が拡張ドライバが現在の機器状態に対応するか否かを判定するときに、設定ファイル全体の代わりにこの付加情報を通信し、直近に取得した機器状態を変数としたハッシュ値と、インストール済の拡張ドライバに付加された付加情報とを比較すれば良い。このような構成を採用すれば、少ない通信データ量で更新処理を実現することができる。
尚、本発明は、上記実施形態、若しくはその変形例に係るMFPとして提供できることはもとより、プログラムの適用により、既存の印刷装置に接続された既存のパーソナルコンピュータなど、汎用の計算機によって実現することもできる。すなわち、MFPによる各機能構成を実現させるための制御プログラムを、図3(B)のような物理構成を持ち、印刷装置に接続された既存のコンピュータ(CPUなど)が実行できるように適用することで、上記実施形態、若しくは変形例に係るMFPとして機能させることができる。
このようなプログラムの配布方法は任意であり、例えば、メモリカード、CD−ROM(Compact Disc Read Only Memory)又はDVD−ROM(Digital Versatile Disk Read Only Memory)などの記録媒体に格納して配布できる他、インターネットなどの通信媒体を介して配布することもできる。また、再配置CTD及び転置インデックス等の上記処理に必要なデータの一部又は全部は、外部サーバに記憶されており、通信機能によりこれらのデータを取得して上記処理を実行する構成も可能である。また、汎用のコンピュータではなく、CPU又は専用チップと、記憶装置と、を備えた印刷機に装着可能な拡張ボードにこのようなプログラムをインストールしてもよい。
以上の実施形態は例示であって、制限的なモノではないと考えられるべきである。本発明の範囲は、上記した意味ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲での全ての変更が含まれることが意図される。
1 印刷システム
10、11 MFP
10A 本体
10a ハンドセット
10b 給紙デスク
10c 大容量給紙トレイ
10d キーボード
10f 中継ユニット
10e 小型フィニッシャ
10g パンチユニット
10h フィニッシャ
10i サドルフィニッシャ
100 制御コンピュータ
101 CPU
102 RAM
103 ROM
104 I/O部
105 外部記憶装置
110、111 制御部
1110 状態取得部
1120 判別部
1130 生成部
1140 応答部
120 記憶部
130 通信部
1310 受信部
1320 送信部
140 I/F部
1410 第1接続部
1420 第2接続部
150 操作部
160 表示部
170 MFP機能部
1710 スキャナ部
1720 印刷部
1730 給紙部
1740 排紙部
20、21、20a〜20d PC
210、211 制御部
2110、2111 要求生成部
2120 インストール部
220 通信部
2210 送信部
2220 受信部
230 記憶部
240 操作部
250 表示部

Claims (12)

  1. 複数の機器状態を持つ印刷装置であって、
    現在の機器状態を示す情報である状態情報を取得する取得手段と、
    前記取得手段が取得した状態情報が示す機器状態に応じたプリンタドライバを配信データとして設定する設定手段と、
    前記設定手段が設定した配信データを他の装置に配信する配信手段と、
    を備えることを特徴とする印刷装置。
  2. 前記印刷装置を用いるためのプリンタドライバを既にインストールした他の装置が送信する、該プリンタドライバの更新要求を受信する受信手段を更に備え、
    前記設定手段は、前記受信手段が受信した更新要求に応じて、前記取得手段が取得した状態情報が示す機器状態に対応するか、最新バージョンであるか、の少なくとも一方を満たすプリンタドライバの少なくとも一部を、前記配信データとして設定する、
    ことを特徴とする請求項1に記載の印刷装置。
  3. 前記設定手段は、前記更新要求を送信した他の装置にインストールされたプリンタドライバが前記取得手段が取得した機器状態に対応し、かつ最新バージョンである場合には、前記更新要求に応じた配信を中止する、
    ことを特徴とする請求項2に記載の印刷装置。
  4. 前記設定手段は、前記更新要求を送信した他の装置にインストールされたプリンタドライバが最新バージョンと異なる場合には、前記取得手段が取得した機器状態に対応するか否かに関わらず、該インストールされたプリンタドライバを最新バージョンに更新するためのデータを前記配信データとして設定する、
    ことを特徴とする請求項2又は3に記載の印刷装置。
  5. 前記設定手段は、前記更新要求を送信した他の装置にインストールされたプリンタドライバが前記取得手段が取得した機器状態に対応しない場合には、該プリンタドライバが最新バージョンであるか否かに関わらず、該インストールされたプリンタドライバを該機器状態に対応させるためのデータを前記配信データとして設定する、
    ことを特徴とする請求項2乃至4の何れかに記載の印刷装置。
  6. 前記機器状態に応じて、前記プリンタドライバの少なくとも一部を生成するための生成規則を記憶する記憶手段を更に備え、
    前記設定手段は、前記記憶手段が記憶する生成規則を用いて、前記取得手段が取得した状態情報が示す機器状態に応じたプリンタドライバを生成する生成手段を含むとともに、該生成手段が生成したプリンタドライバを前記配信データとして設定する、
    ことを特徴とする請求項1乃至5の何れかに記載の印刷装置。
  7. オプション機器を接続可能な接続手段を更に備え、
    前記取得手段は、前記接続手段に接続されたオプション機器の検知結果を含む状態情報を取得し、
    前記記憶手段は、前記生成規則として、前記オプション機器に対応するプリンタドライバを生成する生成規則を記憶し、
    前記生成手段は、前記状態情報に含まれる検知結果に基づいて、前記生成規則を用いて前記接続されたオプション機器に対応するプリンタドライバを生成する、
    ことを特徴とする請求項6に記載の印刷装置。
  8. 前記取得手段は、前記印刷装置のネットワーク上の位置を特定する情報を含む状態情報を取得し、
    前記生成手段は、前記状態情報に含まれる位置を特定する情報を含むプリンタドライバを生成する、
    ことを特徴とする請求項6又は7に記載の印刷装置。
  9. 前記機器状態は、前記印刷装置の機器構成の状態と、内部構成の状態と、内部パラメータの内容と、の何れかを少なくとも含む、
    ことを特徴とする請求項1乃至8の何れかに記載の印刷装置。
  10. 前記配信手段は、前記印刷装置を利用するためのプリンタドライバを新規にインストールする他の装置に、前記設定手段が設定した、前記機器状態に応じたプリンタドライバを配信する、
    ことを特徴とする請求項1乃至9の何れかに記載の印刷装置。
  11. 複数の機器状態を持つ印刷装置のプリンタドライバの配信方法であって、
    前記印刷装置の現在の機器状態を示す情報である状態情報を取得し、
    前記取得した状態情報が示す機器状態に応じたプリンタドライバを配信データとして設定し、
    前記設定した配信データを他の装置に配信する、
    ことを特徴とする配信方法。
  12. 複数の機器状態を持つ印刷装置を制御するコンピュータに、
    現在の機器状態を示す情報である状態情報を取得する処理、
    前記取得した状態情報が示す機器状態に応じたプリンタドライバを配信データとして設定する処理、
    前記設定した配信データを他の装置に配信する処理、
    を実行させるためのプログラム。
JP2013132355A 2013-06-25 2013-06-25 印刷装置、配信方法及びプログラム Pending JP2015006751A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013132355A JP2015006751A (ja) 2013-06-25 2013-06-25 印刷装置、配信方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013132355A JP2015006751A (ja) 2013-06-25 2013-06-25 印刷装置、配信方法及びプログラム

Publications (1)

Publication Number Publication Date
JP2015006751A true JP2015006751A (ja) 2015-01-15

Family

ID=52337443

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013132355A Pending JP2015006751A (ja) 2013-06-25 2013-06-25 印刷装置、配信方法及びプログラム

Country Status (1)

Country Link
JP (1) JP2015006751A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017102802A (ja) * 2015-12-04 2017-06-08 キヤノン株式会社 配信システム、及び配信システムの制御方法
JP2017156827A (ja) * 2016-02-29 2017-09-07 ブラザー工業株式会社 印刷システム
WO2019004033A1 (ja) * 2017-06-30 2019-01-03 キヤノン株式会社 コストを抑えてその機能の拡張を可能にする画像形成装置およびマイコンデバイス

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017102802A (ja) * 2015-12-04 2017-06-08 キヤノン株式会社 配信システム、及び配信システムの制御方法
JP2017156827A (ja) * 2016-02-29 2017-09-07 ブラザー工業株式会社 印刷システム
WO2019004033A1 (ja) * 2017-06-30 2019-01-03 キヤノン株式会社 コストを抑えてその機能の拡張を可能にする画像形成装置およびマイコンデバイス

Similar Documents

Publication Publication Date Title
JP4811486B2 (ja) プログラム、情報処理システムおよび情報処理装置
JP7205522B2 (ja) 情報処理システム、情報処理装置およびプログラム
JP5845687B2 (ja) アプリケーション配信システム
JP2011243067A (ja) 印刷制御装置,印刷制御システム,およびプリンタドライバ
JP6413691B2 (ja) データ通信装置、データ通信方法、及びデータ通信プログラム
JP2008015794A (ja) プログラム管理装置及びプログラム管理システム、ならびにプログラム提供方法
US20130301069A1 (en) Information processing device, computer program product, and image forming apparatus
KR101763018B1 (ko) 시스템, 인쇄 장치, 제어 방법 및 컴퓨터 판독가능한 기록 매체
KR101517546B1 (ko) 화상형성장치와 연결되는 호스트장치 및 호스트장치의 연동기능 정보 제공방법
JP2023112072A (ja) 情報処理装置、情報処理装置の制御方法及びプログラム
JP2020166467A (ja) 画像処理システム
US20200241814A1 (en) Storage Medium Storing Image Processing Program and Information Processing Apparatus
US8810817B2 (en) Storage medium in which information processing program is stored, information processing apparatus, and information processing system
JP2015006751A (ja) 印刷装置、配信方法及びプログラム
JP6534519B2 (ja) ファームウェアのアップデート機能を有する電子装置
JP2014174679A (ja) 情報処理装置及びその方法
JP2009269243A (ja) 印刷装置及び印刷システム
JP2013071406A (ja) 印刷装置及び印刷システム
US9703510B2 (en) Terminal apparatus for causing function executing apparatus to execute function and function executing apparatus thereof
JP2006289690A (ja) 画像形成装置および画像形成システム
JP2009181337A (ja) 画像形成システム、管理装置、画像形成装置、画像形成方法、及び画像形成プログラム
JP6803647B2 (ja) 端末装置、プリンタ制御方法、およびコンピュータプログラム
JP2015026215A (ja) 印刷システムおよびその制御方法、情報処理装置およびその制御方法、印刷装置およびその制御方法、並びにプログラム
US20210004186A1 (en) Printer device, control method for a printer device, information processing apparatus, control method for an information processing apparatus, and storage medium therefor
US9009244B2 (en) Image forming apparatus, and control method thereof

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20150423