JP2018005322A - 情報処理装置、動作更新方法および動作更新プログラム - Google Patents

情報処理装置、動作更新方法および動作更新プログラム Download PDF

Info

Publication number
JP2018005322A
JP2018005322A JP2016127545A JP2016127545A JP2018005322A JP 2018005322 A JP2018005322 A JP 2018005322A JP 2016127545 A JP2016127545 A JP 2016127545A JP 2016127545 A JP2016127545 A JP 2016127545A JP 2018005322 A JP2018005322 A JP 2018005322A
Authority
JP
Japan
Prior art keywords
version
program
external device
processing program
newer
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
JP2016127545A
Other languages
English (en)
Other versions
JP6801258B2 (ja
Inventor
博嗣 平本
Hirotsugu Hiramoto
博嗣 平本
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.)
Konica Minolta Inc
Original Assignee
Konica Minolta Inc
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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2016127545A priority Critical patent/JP6801258B2/ja
Priority to US15/636,068 priority patent/US20170371645A1/en
Publication of JP2018005322A publication Critical patent/JP2018005322A/ja
Application granted granted Critical
Publication of JP6801258B2 publication Critical patent/JP6801258B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration 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
    • 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/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/123Software or firmware update, e.g. device firmware 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/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
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • 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/00236Connection 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 using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer
    • H04N1/00238Connection 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 using an image reading or reproducing device, e.g. a facsimile reader or printer, as a local input to or local output from a computer using an image reproducing device as a local output from a computer
    • 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/00912Arrangements for controlling a still picture apparatus or components thereof not otherwise provided for
    • H04N1/00938Software related arrangements, e.g. loading applications
    • 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/00962Input arrangements for operating instructions or parameters, e.g. updating internal software
    • H04N1/00973Input arrangements for operating instructions or parameters, e.g. updating internal software from a remote device, e.g. receiving via the internet instructions input to a computer terminal
    • 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
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception

Landscapes

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

Abstract

【課題】 処理プログラムの更新に対応して外部装置を制御する。
【解決手段】
情報処理装置は、外部装置に処理させるデータを出力する処理を定めた処理プログラムを実行するタスクが出力するデータに従って外部装置を制御する外部装置制御部51と、処理プログラムのバージョンが既知のバージョンよりも新しいか否かを判定する判定部54と、を備え、外部装置制御部51は、処理プログラムのバージョンが既知のバージョンと同じ場合に、既知のバージョンに対して予め定められた処理を実行し、処理プログラムのバージョンが既知のバージョンよりも新しいと判定された場合に、未知のバージョンに対して予め定められた処理を実行する。
【選択図】 図4

Description

この発明は、情報処理装置、動作更新方法および動作更新プログラムに関し、特に、外部装置の動作を制御することが可能な情報処理装置、その情報処理装置で実行される動作更新方法および動作更新プログラムに関する。
パーソナルコンピューター(以下「PC」という)等の情報処理装置は、複合機(以下「MFP」という)等の外部装置を制御するために、プリンタドライバプログラムがインストールされる。以下、情報処理装置が備えるCPUがプリンタドライバプログラムを実行するタスクを、単に「プリンタドライバ」という。
また、情報処理装置には、オペレーションシステムプログラム(以下「OSプログラム」という)またはアプリケーションプログラムがインストールされている。プリンタドライバは、情報処理装置が備えるCPUがアプリケーションプログラムを実行するタスクまたはOSプログラムを実行するタスクの出力に従ってMFPを制御する。
ところで、OSプログラムまたはアプリケーションプログラムのバージョンによって、プリンタドライバの動作が異なることがある。そのため、OSプログラムまたはアプリケーションプログラムのバージョンが更新された場合、その新たなバージョンにプリンタドライバの動作を対応させる必要がある。
情報処理装置がインターネットに接続されている場合には、外部のサーバーからインターネットを介してプリンタドライバの動作を自動更新するための更新情報を取得することができる。しかしながら、セキュリティ上の理由から、情報処理装置と外部との通信が遮断される場合があり、または情報処理装置にインストールされているプログラムの自動更新が禁止される場合がある。このような場合には、OSプログラムまたはアプリケーションプログラムのバージョンが更新されても、プリンタドライバの動作を自動更新することはできない。
例えば、特開2000−222146号公報には、所定の操作に基づいて印刷要求および同印刷要求における印刷データを生成するアプリケーションプログラムの所定の情報に応じて同印刷データの描画能力を切換えるとともに、同描画能力に基づいて上記印刷データを変換する印刷データ変換装置であって、上記印刷要求を入力すると上記所定の情報を取得する情報取得手段と、上記情報取得手段が取得した所定の情報に基づいて上記印刷データの描画能力を切換える描画能力切換手段と、上記印刷データを入力するとともに、上記描画能力切換手段にて切換えられた描画能力に基づいて同印刷データのデータ形式を変換する印刷データ変換手段と、上記印刷データ変換手段にて変換された印刷データを出力する印刷データ出力手段とを具備する印刷データ変換装置が記載されている。
しかしながら、特開2000−222146号公報に記載の印刷データ変換装置では、アプリケーションプログラムの種類およびバージョン情報と描画能力との対応を示す対応テーブルが予め用意され、その対応テーブルを参照して、印刷データの描画能力が切換えられる。そのため、使用されるアプリケーションプログラムの種類およびバージョン情報が、対応テーブルに含まれていない場合には、印刷データの描画能力を切換えることができない。したがって、未知のバージョンのアプリケーションプログラムが使用される場合には、MFP等の外部装置を適切に制御することができない。
特開2000−222146号公報
この発明は上述した問題点を解決するためになされたもので、この発明の目的は、処理プログラムの更新に対応して外部装置を制御することが可能な情報処理装置を提供することである。
この発明の他の目的は、処理プログラムの更新に対応して外部装置を制御することが可能な動作更新方法を提供することである。
この発明のさらに他の目的は、処理プログラムの更新に対応して外部装置を制御することが可能な動作更新プログラムを提供することである。
この発明は上述した問題点を解決するためになされたもので、この発明のある局面によれば、情報処理装置は、外部装置に処理させるデータを出力する処理を定めた処理プログラムを実行するタスクが出力するデータに従って外部装置を制御する外部装置制御手段と、処理プログラムのバージョンが既知のバージョンよりも新しいか否かを判定する判定手段と、を備え、外部装置制御手段は、処理プログラムのバージョンが既知のバージョンと同じ場合に、既知のバージョンに対して予め定められた処理を実行し、処理プログラムのバージョンが既知のバージョンよりも新しいと判定された場合に、未知のバージョンに対して予め定められた処理を実行する。
この局面に従えば、処理プログラムのバージョンが既知のバージョンと同じ場合に、既知のバージョンに対して予め定められた処理が実行され、処理プログラムのバージョンが既知のバージョンよりも新しい場合に、未知のバージョンに対して予め定められた処理が実行される。これにより、外部のサーバーから更新情報を取得することができない場合であっても、未知のバージョンに対応する処理を実行することができる。その結果、処理プログラムの更新に対応して外部装置を制御することが可能な情報処理装置を提供することができる。
好ましくは、処理プログラムのバージョンを識別するための識別情報を取得する識別情報取得手段を、さらに備え、判定手段は、取得された識別情報により表されるバージョンが既知のバージョンよりも新しいか否かを判定する。
この局面に従えば、処理プログラムのバージョンが既知のバージョンよりも新しいか否かを適切に判定することができる。
好ましくは、識別情報は、バージョンに対応するバージョン番号を含み、判定手段は、取得された識別情報に含まれるバージョン番号が、既知のバージョンに対応するバージョン番号よりも大きいか否かを判定する。
この局面に従えば、処理プログラムのバージョンが既知のバージョンよりも新しいか否かを容易に判定することができる。
好ましくは、識別情報は、処理プログラムの公開時期を含み、判定手段は、識別情報に含まれる公開時期が、既知のバージョンの公開時期よりも後であるか否かを判定する。
この局面に従えば、処理プログラムのバージョンが既知のバージョンよりも新しいか否かを容易に判定することができる。
好ましくは、判定手段は、処理プログラムを実行するタスクが出力するデータの形式が、予め定められた形式であるか否かを判定する。
この局面に従えば、処理プログラムのバージョンが変更されたことを判定することができる。
好ましくは、判定手段は、処理プログラムを実行するタスクが出力するコマンドが、予め定められたコマンドであるか否かを判定する。
この局面によれば、処理プログラムのバージョンが変更されたことを判定することができる。
好ましくは、処理プログラムの1以上の既知のバージョンと、当該既知のバージョンに対応する処理と、を関連付けた関連付テーブルを記憶するテーブル記憶手段、をさらに備え、判定手段は、処理プログラムのバージョンが関連付テーブルに含まれるバージョンよりも新しいか否かを判定する。
この局面によれば、関連付テーブルを参照して、処理プログラムのバージョンが既知のバージョンよりも新しいか否かを容易に判定することができる。また、処理プログラムのバージョンが既知のバージョンである場合に、関連付テーブルを参照して、当該既知のバージョンに対応する処理を容易に特定することができる。
好ましくは、判定手段は、ユーザーに対して処理プログラムのバージョンが既知のバージョンよりも新しいか否かの問い合わせを行う問い合わせ手段と、問い合わせに対する回答を受け付ける回答受付手段と、を含む。
この局面によれば、ユーザーの回答に従ってバージョンが新しいか否かを判定するので、処理プログラムのバージョンが既知のバージョンよりも新しいか否かを確実に判定することができる。
好ましくは、処理プログラムのバージョンが既知のバージョンよりも新しいと判定された場合に、外部装置を未知のバージョンに対応させるために外部装置に更新を指示する更新指示手段をさらに備える。
この局面によれば、外部装置を変更後の処理プログラムに対応させることができる。
この発明の他の局面によれば、動作更新方法は、外部装置に処理させるデータを出力する処理を定めた処理プログラムを実行するタスクが出力するデータに従って外部装置を制御する外部装置制御手段を備えた情報処理装置で実行される動作更新方法であって、処理プログラムのバージョンが既知のバージョンよりも新しいか否かを判定する判定ステップと、処理プログラムのバージョンが既知のバージョンと同じ場合に、外部装置制御手段に既知のバージョンに対して予め定められた処理を実行させ、処理プログラムのバージョンが既知のバージョンよりも新しいと判定された場合に、外部装置制御手段に未知のバージョンに対して予め定められた処理を実行させる処理実行ステップと、を含む。
この局面に従えば、処理プログラムの更新に対応して外部装置を制御することが可能な動作更新方法を提供することができる。
この発明のさらに他の局面によれば、動作更新プログラムは、外部装置に処理させるデータを出力する処理を定めた処理プログラムを実行するタスクが出力するデータに従って外部装置を制御する外部装置制御手段を備えた情報処理装置を制御するコンピュータで実行される動作更新プログラムであって、処理プログラムのバージョンが既知のバージョンよりも新しいか否かを判定する判定ステップと、処理プログラムのバージョンが既知のバージョンと同じ場合に、外部装置制御手段に既知のバージョンに対して予め定められた処理を実行させ、処理プログラムのバージョンが既知のバージョンよりも新しいと判定された場合に、外部装置制御手段に未知のバージョンに対して予め定められた処理を実行させる処理実行ステップと、をコンピュータに実行させる。
この局面に従えば、処理プログラムの更新に対応して外部装置を制御することが可能な動作更新プログラムを提供することができる。
本発明の第1の実施の形態の1つにおけるプリントシステムの全体概要の一例を示す図である。 本実施の形態におけるPCのハードウェア構成の概要の一例を示すブロック図である。 本実施の形態におけるMFPのハードウェア構成の概要を示すブロック図である。 PCが備えるCPUが有する機能の一例を、HDDに記憶される情報とともに示すブロック図である。 関連付テーブルの一例を示す図である。 第1の実施の形態における動作更新処理の流れの一例を示すフローチャートである。 第1の変形例における動作更新処理の流れの一例を示すフローチャートである。 第2の変形例におけるPCが備えるCPUが有する機能の一例を示すブロック図である。 第2の変形例における動作更新処理の流れの一例を示すフローチャートである。 第2の実施の形態におけるPCが備えるCPUが有する機能の一例を示すブロック図である。 第2の実施の形態における動作更新処理の流れの一例を示すフローチャートである。 第3の実施の形態におけるPCが備えるCPUが有する機能の一例を示すブロック図である。 第3の実施の形態における動作更新処理の流れの一例を示すフローチャートである。 第4の実施の形態におけるPCが備えるCPUが有する機能の一例を示すブロック図である。 第4の実施の形態における動作更新処理の流れの一例を示すフローチャートである。
以下、本発明の実施の形態について図面を参照して説明する。以下の説明では同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
図1は、本発明の第1の実施の形態の1つにおけるプリントシステムの全体概要の一例を示す図である。図1を参照して、プリントシステム1は、複合機であるMFP(Multi Function Peripheral)100と、パーソナルコンピューター(PC)200,200A,200Bと、を含む。MFP100およびPC200,200A,200Bは、ローカルエリアネットワーク(LAN)3に接続されている。以下、PC200,200A,200Bを総称してPC200という場合がある。
PC200,200A,200Bは、一般的なコンピューターであり、オペレーティングシステム(OS)プログラムおよびアプリケーションプログラムがインストールされている。また、PC200,200A,200Bは、オペレーションシステムプログラム(以下「OSプログラム」という)がインストールされるとともに、MFP100を制御するためのプリンタドライバプログラムがインストールされている。本例において、OSプログラムは処理プログラムの例である。PC200,200A,200Bは、OSプログラムの現在のバージョンに応じて、MFP100に対して異なる処理を実行する。
PC200,200A,200Bのハードウェア構成および機能は同じなので、ここでは、PC200を例に説明する。PC200,200A,200Bと同様にLAN3に接続可能であれば、PC200,200A,200Bの代わりに、スマートフォン、タブレット端末またはPDA(Personal Digital Assistants)など、ユーザーが携帯して使用する携帯情報装置が用いられてもよい。
図2は、本実施の形態におけるPCのハードウェア構成の概要の一例を示すブロック図である。図2を参照して、PC200は、PC200の全体を制御するための中央演算処理装置(CPU)201と、CPU201が実行するためのプログラムを記憶するROM(Read Only Memory)202と、CPU201の作業領域として使用されるRAM(Random Access Memory)203と、データを不揮発的に記憶するハードディスクドライブ(HDD)204と、CPU201をLAN3に接続する通信部205と、情報を表示する表示部206と、ユーザーの操作の入力を受け付ける操作部207と、外部記憶装置209と、を含む。
CPU201は、インターネットに接続されたコンピューターからプログラムをダウンロードしてHDD204に記憶する、または、ネットワークに接続されたコンピューターがプログラムをHDD204に書込みするようにして、HDD204に記憶されたプログラムをRAM203にロードしてCPU201で実行する。HDD204は、OSプログラムおよびアプリケーションプログラムを記憶する。また、HDD204は、OSプログラムの1以上の既知のバージョンと、当該既知のバージョンに対応する処理と、を関連付けた関連付テーブルを記憶する。関連付テーブルの詳細については後述する。
CPU201のソフトウェアアーキテクチャとして、CPU201には、オペレーティングシステム(OS)層が形成され、その上の階層に、アプリケーション層が形成される。OS層は、CPU201がOSプログラムを実行するタスクが属する。OS層に属するタスクは、PC200のハードウェア資源を制御する処理を実行する。ハードウェア資源は、ここでは、ROM202、RAM203、HDD204、通信部205、表示部206、操作部207および外部記憶装置209を含む。OS層に属するタスクは、アプリケーション層から入力されるオペレーティングコマンドにしたがって、ハードウェア資源を制御する。アプリケーション層は、CPU201がアプリケーションプログラムを実行するタスクが属する。複数種類のアプリケーションプログラムがPC200にインストールされる場合、アプリケーション層に、複数種類のアプリケーションプログラムをそれぞれ実行する複数のタスクが属する場合がある。さらに、アプリケーションプログラムを実行するタスクは、PC200を操作する操作ユーザーによる指示に基づいて、アプリケーションプログラムによって定められた複数種類の処理のうちから実行する処理を特定し、処理を実行する。アプリケーションプログラムで定められる複数種類の処理は、CPU201がアプリケーションプログラムを実行することにより生成されるデータを、MFP100にプリントさせる処理を少なくとも含む。
外部記憶装置209は、CD−ROM(Compact Disk Read Only Memory)209Aが装着される。本実施の形態においては、CPU201は、ROM202またはHDD204に記憶されたプログラムを実行する例を説明するが、CPU201は、外部記憶装置209を制御して、CD−ROM209AからCPU201が実行するためのプログラムを読出し、読み出したプログラムをRAM203に記憶し、実行するようにしてもよい。
なお、CPU201が実行するためのプログラムを記憶する記録媒体としては、CD−ROM209Aに限られず、フレキシブルディスク、カセットテープ、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、ICカード、光カード、マスクROM、EPROM(Erasable Programmable ROM)、EEPROM(Electrically EPROM)などの半導体メモリ等の媒体でもよい。ここでいうプログラムは、CPU201により直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
図3は、本実施の形態におけるMFP100のハードウェア構成の概要を示すブロック図である。図3を参照して、画像処理装置として機能するMFP100は、メイン回路110と、原稿を読み取るための原稿読取部130と、原稿を原稿読取部130に搬送するための自動原稿搬送装置120と、原稿読取部130が原稿を読み取って出力する画像データに基づいて用紙等に画像を形成するための画像形成部140と、画像形成部140に用紙を供給するための給紙部150と、ユーザーインターフェースとしての操作パネル160とを含む。
自動原稿搬送装置120は、原稿トレイ上にセットされた複数枚の原稿を1枚ずつ自動的に原稿読取部130のプラテンガラス上に設定された所定の原稿読み取り位置まで搬送し、原稿読取部130により原稿に形成された画像が読み取られた原稿を原稿排紙トレイに排出する。原稿読取部130は、原稿読取位置に搬送されてきた原稿に光を照射する光源と、原稿で反射した光を受光する光電変換素子とを含み、原稿のサイズに応じた原稿画像を走査する。光電変換素子は、受光した光を電気信号である画像データに変換して、画像形成部140に出力する。給紙部150は、給紙トレイに収納された用紙を画像形成部140に搬送する。
画像形成部140は、周知の電子写真方式により画像を形成するものであって、原稿読取部130から入力される画像データにシェーディング補正などの各種のデータ処理を施した、データ処理後の画像データまたは、外部から受信された画像データに基づいて、給紙部150により搬送される用紙に画像を形成し、画像を形成した用紙を排紙トレイに排出する。
メイン回路110は、MFP100の全体を制御するCPU111と、通信インターフェース(I/F)部112と、ROM113と、RAM114と、大容量記憶装置としてのハードディスクドライブ(HDD)115と、ファクシミリ部116と、外部記憶装置117と、を含む。CPU111は、自動原稿搬送装置120、原稿読取部130、画像形成部140、給紙部150および操作パネル160と接続され、MFP100の全体を制御する。
ファクシミリ部116は、公衆交換電話網(PSTN)に接続され、PSTNにファクシミリデータを送信する、またはPSTNからファクシミリデータを受信する。ファクシミリ部116は、受信したファクシミリデータを、HDD115に記憶するとともに、画像形成部140でプリント可能なプリントデータに変換して、画像形成部140に出力する。これにより、画像形成部140は、ファクシミリ部116により受信されたファクシミリデータを用紙に画像を形成する。また、ファクシミリ部116は、HDD115に記憶されたデータをファクシミリデータに変換して、PSTNに接続されたファクシミリ装置に送信する。
通信I/F部112は、LAN3にMFP100を接続するためのインターフェースである。通信I/F部112は、TCP(Transmission Control Protocol)またはFTP(File Transfer Protocol)等の通信プロトコルで、ネットワークに接続された他のコンピューターまたはデータ処理装置と通信する。なお、通信I/F部112が接続されるネットワークは、LAN3に限らず、ワイドエリアネットワーク(WAN)、公衆交換電話網(PSTN)、インターネット等であってもよい。
ROM113は、CPU111が実行するプログラム、またはそのプログラムを実行するために必要なデータを記憶する。RAM114は、CPU111がプログラムを実行する際の作業領域として用いられる。また、RAM114は、原稿読取部130から連続的に送られてくる読取画像を一時的に記憶する。
操作パネル160は、MFP100の上面に設けられる。操作パネル160は、表示部161と操作部163とを含む。表示部161は、例えば、液晶表示装置(LCD)であり、ユーザーに対する指示メニューや取得した画像データに関する情報等を表示する。なお、LCDに代えて、画像を表示する装置であれば、例えば、有機EL(electroluminescence)ディスプレイを用いることができる。
操作部163は、タッチパネル165と、ハードキー部167とを含む。タッチパネル165は、静電容量方式である。なお、タッチパネル165は、静電容量方式に限らず、例えば、抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式等の他の方式を用いることができる。ハードキー部167は、複数のハードキーを含む。ハードキーは、例えば接点スイッチである。
外部記憶装置117は、CPU111により制御され、CD−ROM118が装着される。本実施の形態においては、CPU111は、ROM113に記憶されたプログラムを実行する例を説明するが、CPU111は、外部記憶装置117を制御して、CD−ROM118からCPU111が実行するためのプログラムを読出し、読み出したプログラムをRAM114に記憶し、実行するようにしてもよい。
なお、CPU111が実行するためのプログラムを記憶する記録媒体としては、CD−ROM118に限られず、フレキシブルディスク、カセットテープ、光ディスク、ICカード、光カード、半導体メモリ等の媒体でもよい。さらに、CPU111がネットワークに接続されたコンピューターからプログラムをダウンロードしてHDD115に記憶する、または、ネットワークに接続されたコンピューターがプログラムをHDD115に書込みするようにして、HDD115に記憶されたプログラムをRAM114にロードしてCPU111で実行するようにしてもよい。ここでいうプログラムは、CPU111により直接実行可能なプログラムだけでなく、ソースプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含む。
図4は、PCが備えるCPUが有する機能の一例を、HDDに記憶される情報とともに示すブロック図である。ここでは、PC200が備えるCPU201の機能を示している。図4に示す機能は、ハードウェアで実現するようにしてもよいし、PC200が備えるCPU201に、ROM202、HDD204またはCD−ROM209Aに記憶されたプログラムを実行させることにより、CPU201で実現するようにしてもよい。ここで、PC200が備えるCPU201にプログラムを実行させる場合を例に説明する。
図4を参照して、PC200が備えるCPU201は、外部装置制御部51と、テーブル記憶部52と、識別情報取得部53と、判定部54と、テーブル更新部55と、更新指示部56と、操作受付部57とを、含む。
外部装置制御部51は、プリンタドライバに相当し、OS層またはアプリケーション層に属するタスクが出力するデータに従ってMFP100を制御する。ここでは、外部装置制御部51は、予め定められた複数の動作モードのうち、選択された動作モードで動作する。複数の動作モードは、OSプログラム61の既知のバージョンに対応する既知の動作モードと、OSプログラム61の未知のバージョンに対応する暫定動作モードとを含む。既知のバージョンは、既に公開されているバージョンであり、バージョン番号等がPC200において認識されている。CPU201が、既知の動作モードの動作内容に対応する処理を実行するためのプログラムまたはデータが、関連付テーブル62とともに、既知の動作モードと関連付けてHDD204に記憶されている。未知のバージョンは、既知のバージョンより新しいバージョンであり、バージョン番号等がPC200において認識されていない。暫定動作モードの動作内容は、OSプログラム61の新しいバージョンの公開に備えて、OSプログラム61の供給元から予め通知される。このため、CPU201が、暫定動作モードの動作内容に対応する処理を実行するためのプログラムまたはデータが、暫定動作モードと関連付けてHDD204に記憶されている。
プリンタドライバの動作内容は、例えば、MFP100に送信するデータの形式またはコマンド、表示部206に表示すべきユーザーインターフェース(UI)画面、MFP100との間で構築される印刷用の通信経路の種類、参照データの位置等を定める。動作内容は、既知の動作モードおよび暫定動作モード毎に定められる。参照データの位置は、例えば、WSD(Web Services on Devices)プロトコルにおける探索結果の格納場所を含む。WSDポートを使用してネットワーク上のデバイスを探索する場合、検出されたデバイスのIPアドレスは、OSプログラム61によって規定される場所に格納される。OSプログラム61のバージョンが異なると、IPアドレスの格納場所が異なることがある。そのため、動作モード毎に、参照すべきIPアドレスの格納場所が規定される。
テーブル記憶部52は、OSプログラム61の1以上の既知のバージョンと、当該既知のバージョンに対応する動作モードとを関連付けた関連付テーブル62をHDD204に記憶する。関連付テーブル62は、既知のバージョンに対応するバージョン番号と既知のバージョンに対応する動作モードとを少なくとも関連付ける。関連付テーブル62は、バージョン番号ごとに関連付レコードを含み、関連付レコードは、既知のバージョンに対応するバージョン番号と、既知のバージョンの公開時期と、既知のバージョンに対応する動作モードとを関連付ける。以下、既知のバージョンに対応するバージョン番号および動作モードをそれぞれ既知のバージョン番号及び既知の動作モードと呼ぶ。関連付テーブル62に含まれる既知のバージョンは、デフォルトとして定められた既知のバージョンと、後述のテーブル更新部55により追加された既知のバージョンとを含む。
識別情報取得部53は、HDD204に記憶されるOSプログラム61の現在のバージョンを識別するための識別情報を取得して、判定部54に出力する。現在のバージョンは、PC200にインストールされたバージョンであり、CPU201は、現在のバージョンのOSプログラム61を実行する。識別情報取得部53は、CPU201がOSプログラム61を実行するタスクからOSプログラム61の現在のバージョンの識別情報を取得する。識別情報は、例えば、現在のバージョンに対応するバージョン番号および現在のバージョンの公開時期を含む。
判定部54は、識別情報取得部53から識別情報が入力される。判定部54は、識別情報に基づいて、OSプログラム61の現在のバージョンが既知のバージョンよりも新しいか否かを判定する。ここでは、判定部54は、識別情報に含まれる現在のバージョンに対応するバージョン番号を含む関連付レコードが関連付テーブル62に含まれる場合、OSプログラム61の現在のバージョンが既知のバージョンと判定する。判定部54は、OSプログラム61の現在のバージョンが既知のバージョンである場合、当該既知のバージョンを識別するための既知バージョン識別情報を外部装置制御部51に出力する。ここでの既知バージョン識別情報は、識別情報に含まれるバージョン番号である。
判定部54は、識別情報に含まれる現在のバージョンに対応するバージョン番号を含む関連付レコードが関連付テーブル62に含まれない場合、現在のバージョンに対応するバージョン番号が、既知のバージョン番号よりも大きいか否かを判定する。具体的には、判定部54は、HDD204に記憶される関連付テーブル62を参照して、識別情報に含まれるバージョン番号が、関連付テーブル62に含まれる関連付レコードで定められた既知のバージョン番号のうち最も大きいバージョン番号よりも大きいか否かを判定する。判定部54は、識別情報に含まれる現在のバージョンに対応するバージョン番号を含む関連付けレコードが関連付テーブル62に含まれておらず、かつ、識別情報に含まれるバージョン番号が、関連付テーブル62に含まれる関連付レコードで定められる既知のバージョン番号のうち最も大きいバージョン番号よりも小さい場合、OSプログラム61の現在のバージョンが既知のバージョンであると判定し、当該既知のバージョンを識別するための既知バージョン識別情報を外部装置制御部51に出力する。ここでの既知バージョン識別情報は、関連付テーブル62に含まれる関連付レコードで定められる既知のバージョン番号のうち最も大きいバージョン番号である。
判定部54は、識別情報に含まれる現在のバージョンに対応するバージョン番号を含む関連付レコードが関連付テーブル62に含まれておらず、かつ、識別情報に含まれるバージョン番号が、関連付テーブル62に含まれる関連付レコードで定められる既知のバージョン番号のうち最も大きいバージョン番号よりも大きい場合、OSプログラム61の現在のバージョンが既知のバージョンよりも新しいと判定する。判定部54は、OSプログラム61の現在のバージョンが既知のバージョンよりも新しい場合、更新指示を外部装置制御部51、更新指示部56およびテーブル更新部55に出力する。更新指示は、現在のバージョンを識別するためのバージョン番号を含む。
外部装置制御部51は、判定部54から既知バージョン識別情報が入力されることに応じて、既知の動作モードで動作する。具体的には、外部装置制御部51は、関連付テーブル62を参照して、既知バージョン識別情報であるバージョン番号に対応する動作モードを特定し、特定した動作モードで動作する。また、外部装置制御部51は、判定部54から更新指示が入力されることに応じて、暫定動作モードで動作する。
テーブル更新部55は、判定部54から更新指示が入力される場合、未知のバージョンに対応するバージョン番号と、当該バージョンに対応する動作モードとを関連付ける。具体的には、テーブル更新部55は、判定部54から更新指示が入力されることに応じて、更新指示に含まれるバージョン番号と、HDD204に記憶される暫定動作モードとを含む関連付レコードを生成し、関連付レコードを、HDD204に記憶されている関連付テーブル62に追加する。テーブル更新部55により関連付テーブル62に新たに追加される関連付レコードは、それに含まれるバージョン番号および動作モードが既知のバージョン番号および既知の動作モードを示す。
更新指示部56は、判定部54から更新指示が入力される場合、MFP100を未知のバージョンに対応させるためにMFP100に更新を指示する。具体的には、更新指示部56は、判定部54から更新指示が入力されることに応じて、通信部205を制御し、予めHDD204に記憶された更新プログラムをMFP100に送信する。更新プログラムは、OSプログラム61の新しいバージョンに対応するためにMFP100の動作を更新するためのプログラムであり、暫定動作モードに対応してHDD204に記憶される。MFP100の通信I/F部112が更新プログラムを受信すると、MFP100が備えるCPU111は、受信された更新プログラムを実行することにより、その後に外部から受信されるデータまたはコマンドに従って実行する動作を変更する。
操作受付部57は、ユーザーによる操作を受け付ける。ユーザーが操作部207を操作して、新しいバージョンに対応するバージョン番号および新しいバージョンに対応する動作モードを入力する場合、操作受付部57は、入力されたバージョン番号および動作モードを操作情報として受け付け、テーブル更新部55に出力する。テーブル更新部55は、操作受付部57から操作情報が入力されることに応じて、操作情報に含まれる新しいバージョンに対応するバージョン番号と動作モードとを含む関連付レコードを生成し、関連付レコードを、HDD204に記憶されている関連付テーブル62に追加する。この場合、新しいバージョンに対応する動作モードの動作内容に対応する処理をCPU201が実行するためのプログラムまたはデータを、ユーザーが操作部207を介して入力する場合、テーブル更新部55は、操作受付部57により受け付けられたプログラムまたはデータと新しい動作モードとを関連付けてHDD204に記憶する。なお、新しいバージョンに対応する動作モードと、その動作モードの動作内容に対応する処理をCPU201が実行するためのプログラムまたはデータを、CD−ROM209A等の記憶媒体に記憶するようにしてもよい。この場合、ユーザーが、プログラムまたはデータが記憶されたCD−ROM209Aを外部記憶装置209に装着し、操作部207に読取を指示する操作を入力すれば、テーブル更新部55は、外部記憶装置209を介してCD−ROM209Aに記憶されたプログラムまたはデータと動作モードとを取得し、取得されたプログラムまたはデータと新しい動作モードとを関連付けてHDD204に記憶する。
図5は、関連付テーブル62の一例を示す図である。図5の関連付テーブル62は、既知のバージョン番号、既知のバージョンの公開日および既知の動作モードを関連付けた関連付レコードを含む。図5の関連付テーブル62においては、バージョン番号「3000」、公開時期「○/△△/□□」、および動作モード「Aモード」を関連付けた関連付レコードR1と、バージョン番号「5000」、公開時期「××/▽▽/◇◇」、および動作モード「Bモード」を関連付けた関連付レコードR2を含む。
なお、判定部54、テーブル更新部55、更新指示部56、操作受付部57および識別情報取得部53の機能を、プリンタドライバプログラムを実行するタスクである外部装置制御部51が有するようにしてもよい。
図6は、第1の実施の形態における動作更新処理の流れの一例を示すフローチャートである。動作更新処理は、PC200が備えるCPU201が、ROM202、HDD204またはCD−ROM209Aに記憶されたプログラムを実行することにより、CPU201により実行される処理である。
図6を参照して、CPU201は、OS層またはアプリケーション層に属するタスクがデータまたはコマンドを出力したか否かを判断する(ステップS01)。例えば、ユーザーが操作部207を操作して印刷を指示することにより、OS層またはアプリケーション層に属するタスクがデータまたはコマンドを出力する。OS層またはアプリケーション層に属するタスクがデータまたはコマンドを出力するまで待機状態となり(ステップS01でNo)、OS層またはアプリケーション層に属するタスクがデータまたはコマンドを出力したならば(ステップS01でYes)、処理をステップS02に進める。
ステップS02においては、OSプログラム61の現在のバージョンを識別するための識別情報を取得し、処理をステップS03に進める。ステップS03においては、ステップS02で取得した識別情報に基づいて、現在のバージョンが既知のバージョンであるか否かを判断する。具体的には、ステップS02で取得した識別情報に含まれるバージョン番号と同じバージョン番号を含む関連付レコードが、HDD204に記憶された関連付テーブル62に含まれるならば、現在のバージョンが既知のバージョンであると判断する。現在のバージョンが既知のバージョンである場合、処理をステップS04に進めるが、そうでなければ処理をステップS05に進める。
ステップS04においては、HDD204に記憶された関連付テーブル62を参照して、動作モードを現在のバージョンに対応する動作モードに設定し、処理を終了する。例えば、図5の関連付テーブル62を参照し、識別情報に含まれるバージョン番号が「3000」である場合、MFP100の動作モードを「Aモード」に設定し、取得された識別情報に含まれるバージョン番号が「5000」である場合、MFP100の動作モードを「Bモード」に設定する。
ステップS05においては、ステップS02で取得した識別情報に基づいて、現在のバージョンに対応するバージョン番号が既知のバージョン番号よりも大きいか否かを判断する。具体的には、HDD204に記憶された関連付テーブル62を参照して、ステップS2で取得した識別情報に含まれるバージョン番号を、関連付テーブル62に含まれる関連付レコードで定められるバージョン番号のうち最も大きいバージョン番号と比較する。現在のバージョンに対応するバージョン番号が既知のバージョン番号よりも大きい場合、処理をステップS07に進めるが、そうでなければ処理をステップS06に進める。
ステップS06においては、HDD204に記憶された関連付テーブル62に含まれる関連付レコードで定められる既知のバージョン番号のうち最も大きいバージョン番号に対応する動作モードに設定し、処理を終了する。例えば、図5の関連付テーブル62を参照し、識別情報に含まれるバージョン番号が「4000」である場合、識別情報に含まれるバージョン番号と同じバージョン番号を含む関連付レコードが関連付テーブル62に含まれず、かつ、識別情報に含まれるバージョン番号が、関連付テーブル62に含まれる関連付レコードで定められる既知のバージョン番号のうち最も大きいバージョン番号よりも小さい。この場合、MFP100の動作モードを、関連付テーブル62に含まれる関連付レコードで定められる既知のバージョン番号のうち最も大きいバージョン番号「5000」に対応する動作モード「Bモード」に設定する。
ステップS07においては、動作モードをHDD204に記憶される暫定動作モードに設定し、処理をステップS08に進める。ステップS08においては、HDD204に記憶された関連付テーブル62を更新し、処理をステップS10に進める。具体的には、識別情報に含まれるバージョン番号と暫定動作モードとを含む関連付レコードを生成し、関連付レコードを、HDD204に記憶されている関連付テーブル62に追加する。例えば、識別情報が示すバージョン番号が「7000」である場合、バージョン番号「7000」と暫定動作モードとを含む関連付レコードを関連付テーブル62に追加する。
ステップS09においては、MFP100の動作の更新が必要か否かを判断する。MFP100の動作が、新しい動作モードでの制御に対応していない場合には、MFP100の動作の更新が必要となる。例えば、新しい動作モードで既知の動作モードと異なる新しいコマンドを使用する場合、MFP100が新しいコマンドを解釈することができず、エラーが発生することがある。そのような場合には、MFP100の動作の更新が必要である。MFP100の動作の更新が必要である場合には、処理をステップS10に進めるが、そうでなければ処理を終了する。
ステップS10においては、通信部205を制御して、MFP100に更新プログラムを送信し、処理を終了する。更新プログラムは、暫定動作モードに関連付けてHDD204に記憶されている。更新プログラムは、例えば、新しい動作モードで使用されるコマンドを解釈するためのプログラムを含む。MFP100の通信I/F部112が更新プログラムを受信すると、CPU111が更新プログラムを実行することにより、ROM113またはHDD115に記憶されたプログラムを更新する。なお、新しい動作モードで使用されるデータまたはコマンドをMFP100が解釈することができない場合に、CPU201は、当該データまたはコマンドをMFP100が解釈可能なデータおよびコマンドに変換してMFP100に送信するようにしてもよい。
以上説明したように本実施の形態におけるPC200,200A,200Bは、OSプログラム61の現在のバージョンが既知のバージョンよりも新しいか否かを判定し、OSプログラム61の現在のバージョンが既知のバージョンと同じ場合に、プリンタドライバの動作モードを既知の動作モードに設定して既知のバージョンに対して予め定められた処理を実行し、OSプログラム61の現在のバージョンが既知のバージョンよりも新しい場合に、プリンタドライバの動作モードを暫定動作モードに設定して未知のバージョンに対して予め定められた処理を実行する。これにより、外部のサーバーからプリンタドライバの更新情報を取得することができない場合であっても、OSプログラム61の未知のバージョンに対応する処理を実行することができる。その結果、OSプログラム61の更新に対応してMFP100を制御することができる。また、ユーザーがプリンタドライバを更新するための作業を行う必要がなく、ユーザーがPC200,200A,200Bを再起動させる必要もないので、ユーザーの負担が軽減されるとともに、ユーザーの業務が妨げられることが防止される。
また、PC200,200A,200Bは、OSプログラム61の現在のバージョンを識別するための識別情報を取得し、識別情報に含まれるバージョン番号が、既知のバージョンに対応するバージョン番号よりも大きいか否かを判定する。これにより、OSプログラム61のバージョンが既知のバージョンよりも新しいか否かを容易に判定することができる。
また、PC200,200A,200Bは、OSプログラム61の複数の既知のバージョンと、当該既知のバージョンに対応する動作モードとを関連付けた関連付テーブル62を記憶しているので、関連付テーブル62を参照して、OSプログラム61の現在のバージョンが既知のバージョンよりも新しいか否かを容易に判定することができる。また、OSプログラム61の現在のバージョンが既知のバージョンである場合に、関連付テーブル62を参照して、当該既知のバージョンに対応する動作モードを容易に特定することができる。
また、PC200,200A,200Bは、OSプログラム61の現在のバージョンが既知のバージョンよりも新しい場合において、MFP100の動作の更新が必要であれば、MFP100に更新プログラムを送信し、MFP100を未知のバージョンに対応させる。これにより、MFP100を変更後のOSプログラム61に対応させることができる。
<第1の変形例>
第1の変形例におけるPC200は、CPU201が有する判定部54を変更したものである。第1の変形例における判定部54は、識別情報に含まれる現在のバージョンに対応するバージョン番号を含む関連付レコードが関連付テーブル62に含まれる場合、OSプログラム61の現在のバージョンが既知のバージョンと判定し、当該既知のバージョンを識別するための既知バージョン識別情報を外部装置制御部51に出力する。
判定部54は、識別情報に含まれる現在のバージョンに対応するバージョン番号を含む関連付レコードが関連付テーブル62に含まれない場合、現在のバージョンの公開時期が、既知のバージョンの公開時期よりも遅いか否かを判定する。具体的には、判定部54は、HDD204に記憶される関連付テーブル62を参照して、識別情報に含まれる現在のバージョンの公開時期が、関連付テーブル62に含まれる関連付レコードで定められた公開時期のうち最も遅い公開時期よりも遅いか否かを判定する。判定部54は、識別情報に含まれる公開時期が、関連付テーブル62に含まれる関連付レコードで定められる公開時期のうち最も遅い公開時期よりも早い場合、OSプログラム61の現在のバージョンが既知のバージョンであると判定し、当該既知のバージョンを識別するための既知バージョン識別情報を外部装置制御部51に出力する。ここでの既知バージョン識別情報は、関連付テーブル62に含まれる関連付レコードで定められる既知のバージョン番号のうち最も大きいバージョン番号である。
判定部54は、識別情報に含まれる公開時期が、関連付テーブル62に含まれる関連付レコードで定められる公開時期のうち最も遅い公開時期よりも遅い場合、OSプログラム61の現在のバージョンが既知のバージョンよりも新しいと判定し、更新指示を外部装置制御部51、更新指示部56およびテーブル更新部55に出力する。
図7は、第1の変形例における動作更新処理の流れの一例を示すフローチャートである。図7を参照して、第1の変形例における動作更新処理が図6に示した処理と異なる点は、ステップS05がステップS05Aに変更された点である。その他の処理は、図7に示した処理と同じなので、ここでは説明を繰り返さない。
ステップS05Aにおいて、CPU201は、ステップS2で取得した識別情報に基づいて、現在のバージョンの公開時期が既知のバージョンの公開時期よりも遅いか否かを判定する。具体的には、HDD204に記憶された関連付テーブルを参照して、ステップS2で取得した識別情報に含まれる公開時期を、関連付テーブルに含まれる関連付レコードで定められる公開時期のうち最も遅い公開時期と比較する。現在のバージョンの公開時期が既知のバージョンの公開時期よりも遅い場合、処理をステップS07に進めるが、そうでなければ処理をステップS06に進める。
このように第1の変形例におけるPC200,200A,200Bは、取得した識別情報に含まれる公開時期が、既知のバージョンの公開時期よりも遅いか否かを判定するので、OSプログラム61のバージョンが既知のバージョンよりも新しいか否かを容易に判定することができ、OSプログラム61の更新に対応してMFP100を制御することができる。
<第2の変形例>
図8は、第2の変形例におけるPC200が備えるCPU201が有する機能の一例を示すブロック図である。図8を参照して、第2の変形例におけるCPU201が有する機能が図4に示した機能と異なる点は、判定部54が判定部54Aに変更された点である。判定部54Aは、問い合わせ部58および回答受付部59を含む。
問い合わせ部58は、識別情報取得部53から入力される識別情報に基づいて、OSプログラム61の現在のバージョンが既知のバージョンであるか否かを判定する。問い合わせ部58は、OSプログラム61の現在のバージョンが既知のバージョンである場合、既知バージョン識別情報を外部装置制御部51に出力し、OSプログラム61の現在のバージョンが既知のバージョンでない場合、ユーザーに対してOSプログラム61の現在のバージョンが予め定められた未知のバージョンであるか否かを問い合わせる。例えば、問い合わせ部57は、問い合わせ画面を生成し、表示部206に表示する。問い合わせ画面は、例えば、「オペレーションプログラムのバージョンは、○○ですか?」という文字列と、「はい」ボタンおよび「いいえ」ボタンとを含む。ユーザーは、問い合わせ画面が表示されると、操作部207を操作して、OSプログラム61の現在のバージョンが予め定められた未知のバージョンであるか否かを回答する。具体的には、ユーザーは、OSプログラム61の現在のバージョンが予め定められた未知のバージョンである場合に、操作部207を操作して問い合わせ画面の「はい」ボタンを選択し、OSプログラム61の現在のバージョンが予め定められた未知のバージョンと異なる場合、操作部207を操作して問い合わせ画面の「いいえ」ボタンを選択することにより回答する。
回答受付部59は、問い合わせに対するユーザーからの回答を受け付ける。回答受付部59は、OSプログラム61の現在のバージョンが予め定められた未知のバージョンであるとの回答を受け付けた場合、更新指示を外部装置制御部51、更新指示部56およびテーブル更新部55に出力する。
図9は、第2の変形例における動作更新処理の流れの一例を示すフローチャートである。図9を参照して、第2の変形例における動作更新処理が図6に示した処理と異なる点は、ステップS05が、ステップS31、ステップS32、ステップS33に変更された点である。その他の処理は、図6に示した処理と同じなので、ここでは説明を繰り返さない。
ステップS31において、CPU201は、ユーザーに対してOSプログラム61の現在のバージョンが予め定められた未知のバージョンであるか否かを問い合わせ、処理をステップS32に進める。例えば、問い合わせ画面を生成し、表示部206に表示する。
ステップS32においては、問い合わせに対するユーザーからの回答を受け付け、処理をステップS33に進める。ステップS33においては、ステップS32で受け付けた回答が、OSプログラム61の現在のバージョンが予め定められた未知のバージョンであるとの回答であるか否かを判断する。OSプログラム61の現在のバージョンが予め定められた未知のバージョンであるとの回答を受け付けた場合、処理をステップS08に進めるが、そうでなければ処理をステップS06に進める。
このように第2の変形例におけるPC200,200A,200Bは、ユーザーの回答に従ってOSプログラム61の現在のバージョンが新しいか否かを判定するので、処理プログラムのバージョンが既知のバージョンよりも新しいか否かを確実に判定することができ、OSプログラム61の更新に対応してMFP100を制御することができる。
<第2の実施の形態>
図10は、第2の実施の形態におけるPC200が備えるCPU201が有する機能の一例を示すブロック図である。図10を参照して、第2の実施の形態におけるCPU201が有する機能が図4に示した機能と異なる点は、判定部54が、判定部54Bに変更された点である。
OSプログラム61のバージョンが異なると、OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドが異なることがある。OS層またはアプリケーション層に属するタスクが出力するデータは、例えば、CPU201が各種のプログラムを実行することにより生成されたデータである。OS層またはアプリケーション層に属するタスクが出力するコマンドは、例えば、MFP200にプリントを指示するプリントコマンドである。プリントコマンドは、例えば、PJL(Print Job Language)、PCL(Printer Control Language)、XPS(XML Paper Specification)PrintTicket、PS(PostScript)を含む。
第2の実施の形態における判定部54Bは、識別情報取得部53から入力される識別情報に基づいて、OSプログラム61の現在のバージョンが既知のバージョンであるか否かを判定し、OSプログラム61の現在のバージョンが既知のバージョンである場合、既知バージョン識別情報を外部装置制御部51に出力する。また、判定部54Bは、OSプログラム61の現在のバージョンが既知のバージョンでない場合、OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドに基づいて、OSプログラム61の現在のバージョンが既知のバージョンよりも新しいか否かを判定する。ここでは、OSプログラム61の未知のバージョンに対応するデータ形式およびコマンドが未知データコマンド情報64としてHDD204に予め記憶される。OSプログラム61の未知のバージョンに対応するデータ形式およびコマンドは、当該バージョンの公開に備えて、OSプログラム61の供給元から予め通知される。判定部54Bは、OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドが、HDD204に記憶された未知データコマンド情報64に含まれる場合、OSプログラム61の現在のバージョンが既知のバージョンよりも新しいと判定し、更新指示を外部装置制御部51、更新指示部56およびテーブル更新部55に出力する。
図11は、第2の実施の形態における動作更新処理の流れの一例を示すフローチャートである。図11を参照して、第2の実施の形態における動作更新処理が図6に示した処理と異なる点は、ステップS05、ステップS06が、ステップS41、ステップS42に変更された点である。その他の処理は、図6に示した処理と同じなので、ここでは説明を繰り返さない。
ステップS41においては、OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドが、OSプログラム61の未知のバージョンに対応するか否かを判断する。具体的には、OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドが、HDD204に記憶された未知データコマンド情報64に含まれるか否かを判断する。OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドが、HDD204に記憶された未知データコマンド情報64に含まれる場合、処理をステップS08に進め、そうでなければ処理をS42に進める。
ステップS42においては、ユーザーに対してエラーを通知し、処理を終了する。例えば、識別情報に含まれるバージョン番号を含むエラー画面を生成し、表示部206に表示する。ユーザーは、エラー画面のバージョン番号を参照して、現在のバージョンに対応する動作モードを設定するための操作が必要であることを知ることができる。現在のバージョンに対応する動作モードが既知の動作モードとしてHDD204に記憶された関連付テーブル62に含まれている場合には、その既知の動作モードを指定する。例えば、動作モードが同じでバージョン番号が異なる場合である。現在のバージョンに対応する動作モードがHDD204に記憶された関連付テーブル62に含まれていない場合には、現在のバージョンに対応する動作モード、および当該動作モードの動作内容が入力されてもよい。例えば、現在の動作モードの動作内容に対応する処理をCPU201が実行するためのプログラムまたはデータが、動作モードと関連付けてCD−ROM209A等の記憶媒体に記憶される。ユーザーは、プログラムまたはデータが記憶されたCD−ROM209Aを外部記憶装置209に装着し、操作部207に読取を指示する操作を入力すれば、CPU201は、外部記憶装置209を介してCD−ROM209Aからプログラムまたはデータと動作モードとを読み出し、読み出したプログラムまたはデータを実行することにより、現在のバージョンに対応する動作モードを設定することができる。あるいは、インターネットに接続されたコンピューターからプログラムまたはデータをダウンロードし、ダウンロードしたプログラムまたはデータをCPU201が実行することにより、現在のバージョンに対応する動作モードを設定してもよい。
以上説明したように第2の実施の形態におけるPC200,200A,200Bは、OS層またはアプリケーション層が属するタスクが出力するデータの形式またはコマンドが、予め定められたデータ形式またはコマンドであるか否かを判定するので、OSプログラム61のバージョンが変更されたことを判定することができ、OSプログラム61の更新に対応してMFP100を制御することができる。
<第3の実施の形態>
図12は、第3の実施の形態におけるPC200が備えるCPU201が有する機能の一例を示すブロック図である。図12を参照して、第3の実施の形態におけるCPU201が有する機能が図4に示した機能と異なる点は、判定部54、テーブル更新部55が、判定部54C、テーブル更新部55Aに変更された点である。また、HDD204には、未知データコマンド情報64A、および補助暫定動作モードの動作内容に対応する処理をCPU201が実行するためのプログラムまたはデータが予め記憶されている。例えば、未知データコマンド情報64A、および、プログラムまたはデータは、MFP100をメンテナンスするサービスマンからCD−ROM等の記録媒体に記録されて提供され、ユーザーにより、補助暫定動作モードと関連付けてHDD204に記憶される。
第3の実施の形態における判定部54Cは、OSプログラム61の現在のバージョンが既知のバージョンよりも新しいか否かを判定するとともに、アプリケーションプログラムの現在のバージョンが既知のバージョンよりも新しいか否かを判定する。第3の実施の形態におけるアプリケーションプログラムは、処理プログラムの一例である。ここでは、判定部54Cは、識別情報取得部53から入力される識別情報に基づいて、現在のバージョンに対応するバージョン番号が、既知のバージョン番号よりも大きいか否かを判定し、現在のバージョンに対応するバージョン番号が、既知のバージョン番号よりも大きい場合にOSプログラム61の現在のバージョンが既知のバージョンよりも新しいと判定する。OSプログラム61の現在のバージョンが既知のバージョンよりも新しい場合、更新指示を外部装置制御部51、更新指示部56およびテーブル更新部55Aに出力する。なお、判定部54Cは、第1の実施の形態における第1の変形例と同様に、現在のバージョンの公開時期が、既知のバージョンの公開時期よりも遅い場合に、現在のバージョンが既知のバージョンよりも新しいと判定してもよい。また、判定部54Cは、第1の実施の形態における第2の変形例と同様に、ユーザーに対して問い合わせを行い、現在のバージョンが既知のバージョンよりも新しいとの回答を受け付けた場合に、現在のバージョンが既知のバージョンよりも新しいと判定してもよい。
判定部54Cは、OSプログラム61の現在のバージョンが既知のバージョンである場合、アプリケーション層に属するタスクが出力するデータの形式またはコマンドに基づいて、アプリケーションプログラムの現在のバージョンが既知のバージョンよりも新しいか否かを判定する。現在のバージョンは、PC200にインストールされたバージョンであり、CPU201は、現在のバージョンのアプリケーションプログラムを実行する。ここでは、アプリケーションプログラムの未知のバージョンに対応するデータ形式およびコマンドが未知データコマンド情報64AとしてHDD204に記憶される。アプリケーションプログラムの未知のバージョンに対応するデータ形式およびコマンドは、当該バージョンの公開に備えて、アプリケーションプログラムの供給元から予め通知される。
判定部54Cは、アプリケーション層に属するタスクが出力するデータの形式またはコマンドが、HDD204に記憶された未知データコマンド情報64Aに含まれない場合、アプリケーションプログラムの現在のバージョンが既知のバージョンであると判定し、既知バージョン識別情報を外部装置制御部51に出力する。一方、アプリケーション層に属するタスクが出力するデータの形式またはコマンドが、HDD204に記憶された未知データコマンド情報64Aに含まれる場合、判定部54Cは、アプリケーションプログラムの現在のバージョンが既知のバージョンよりも新しいと判定し、関連付テーブル62に含まれる関連付レコードのうち識別情報取得部53から入力される識別情報を含む関連付レコードを識別するためのレコード識別情報をテーブル更新部55Aに出力する。
例えば、アプリケーションプログラムのバージョンが異なると、アプリケーションプログラムの実行によって表示可能なUI画面に含まれる印刷設定の項目が異なる場合がある。そのため、MFP100に印刷を指示する際に参照すべき印刷設定の項目が、動作モードによって異なってもよい。また、アプリケーションプログラムのバージョンが異なると、アプリケーション層に属するタスクが出力するデータの形式が異なることがある。そのため、当該データをMFP100に送信する際のデータの圧縮形式が異なることがある。そのため、MFP100に印刷を指示する際のデータの圧縮形式が、動作モードによって異なってもよい。
テーブル更新部55Aは、判定部54Cから更新指示が入力される場合、更新指示に含まれるバージョン番号と、HDD204に記憶される暫定動作モードとを含む関連付レコードを生成し、関連付レコードを、HDD204に記憶されている関連付テーブル62に追加する。テーブル更新部55Aは、判定部54Cからレコード識別情報が入力される場合、関連付テーブル62に含まれる関連付レコードのうちレコード識別情報により識別される関連付レコードで定められる既知の動作モードを、補助暫定動作モードに変更する。補助暫定動作モードの動作内容に対応する処理をCPU201が実行するためのプログラムまたはデータは、例えば、MFP100をメンテナンスするサービスマンより提供され、補助暫定動作モードと関連付けてHDD204に記憶されている。このため、外部装置制御部51は、補助暫定動作モードで動作するので、新たなバージョンのアプリケーションプログラムを実行するタスクが出力するデータまたはコマンドに対応する処理を実行することができる。
図13は、第3の実施の形態における動作更新処理の流れの一例を示すフローチャートである。図13を参照して、第3の実施の形態における動作更新処理が図6に示した処理と異なる点は、ステップS03で「Yes」の場合の処理としてステップS51、ステップS52、ステップS53が追加された点である。その他の処理は、図6に示した処理と同じなので、ここでは説明を繰り返さない。
ステップS51において、CPU201は、アプリケーション層に属するタスクが出力したデータの形式またはコマンドが、アプリケーションプログラムの未知のバージョンに対応するか否かを判断する。具体的には、アプリケーション層に属するタスクが出力したデータの形式またはコマンドが、HDD204に記憶された未知データコマンド情報64Aに含まれる場合、アプリケーションプログラムの未知のバージョンに対応すると判断する。アプリケーション層に属するタスクが出力したデータの形式またはコマンドが、アプリケーションプログラムの未知のバージョンに対応する場合、処理をステップS53に進めるが、そうでなければ処理をステップS04に進める。
ステップS53においては、HDD204に記憶される関連付テーブル62を更新し、処理をステップS54に進める。具体的には、ステップS02で取得した識別情報に含まれるバージョン番号を含む関連付レコードで定められる既知の動作モードを、補助暫定動作モードに更新する。ステップS54においては、動作モードを補助暫定動作モードに設定し、処理を終了する。
以上説明したように第3の実施の形態におけるPC200,200A,200Bは、アプリケーションプログラムの現在のバージョンが既知のバージョンよりも新しいか否かを判定し、アプリケーションプログラムの現在のバージョンが既知のバージョンよりも新しい場合に、プリンタドライバの動作モードを補助暫定動作モードに設定して未知のバージョンに対して予め定められた処理を実行する。これにより、外部のサーバーからプリンタドライバの更新情報を取得することができない場合であっても、アプリケーションプログラムの未知のバージョンに対応する処理を実行することができる。その結果、アプリケーションプログラムの更新に対応してMFP100を制御することができる。
<第4の実施の形態>
図14は、第4の実施の形態におけるPC200が備えるCPU201が有する機能の一例を示すブロック図である。図14を参照して、第4の実施の形態におけるCPU201が有する機能が図4に示した機能と異なる点は、判定部54が、判定部54Dに変更された点、テーブル記憶部52、識別情報取得部53、テーブル更新部55、操作受付部57が、削除された点である。また、第4の実施の形態におけるHDD204には、関連付テーブル62が記憶されておらず、第2の実施の形態と同様に、未知データコマンド情報64が記憶されている。
第4の実施の形態における判定部54Dは、OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドに基づいて、OSプログラム61の現在のバージョンが既知のバージョンよりも新しいか否かを判定する。第4の実施の形態におけるOSプログラムは、処理プログラムの一例である。判定部54Dは、OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドが、HDD204に記憶された未知データコマンド情報64に含まれる場合、OSプログラム61の現在のバージョンが既知のバージョンよりも新しいと判定し、更新指示を外部装置制御部51および更新指示部56に出力する。判定部54Dは、OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドが、HDD204に記憶された未知データコマンド情報64に含まれていない場合、OSプログラム61の現在のバージョンが既知のバージョンと判定し、更新指示を出力することなく動作モードを既知の動作モードに維持する。
図15は、第4の実施の形態における動作更新処理の流れの一例を示すフローチャートである。図15を参照して、第4の実施の形態における動作更新処理が図6に示した処理と異なる点は、ステップS02、ステップS03、ステップS04、ステップS05、ステップS06、ステップS08が、ステップS61に変更された点である。その他の処理は、図6に示した処理と同じなので、ここでは説明を繰り返さない。
ステップS61においては、OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドが、OSプログラム61の未知のバージョンに対応するか否かを判断する。具体的には、OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドが、HDD204に記憶された未知データコマンド情報64に含まれるか否かを判断する。OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドが、HDD204に記憶された未知データコマンド情報64に含まれる場合、処理をステップS07に進め、そうでなければ処理を終了する。これにより、OS層またはアプリケーション層に属するタスクが出力するデータの形式またはコマンドが、HDD204に記憶された未知データコマンド情報64に含まれる場合には、動作モードが暫定制御モードに切り替えられ、HDD204に記憶された未知データコマンド情報64に含まれない場合には、動作モードが既知の動作モードに維持される。
以上説明したように、第4の実施の形態におけるPC200,200A,200Bは、OS層またはアプリケーション層が属するタスクが出力するデータの形式またはコマンドが、予め定められたデータ形式またはコマンドであるか否かを判定するので、OSプログラム61のバージョンが変更されたことを判定することができ、OSプログラム61の更新に対応してMFP100を制御することができる。
なお、第4の実施の形態におけるCPU201は、OSプログラム61の現在のバージョンが既知のバージョンよりも新しいか否かを判定し、OSプログラム61の現在のバージョンが既知のバージョンよりも新しい場合に、動作モードを暫定動作モードに切り替えるが、これに代えて、アプリケーションプログラムの現在のバージョンが既知のバージョンよりも新しいか否かを判定し、アプリケーションプログラムの現在のバージョンが既知のバージョンよりも新しい場合に、動作モードを予め定められた動作モードに切り替えてもよい。この場合におけるアプリケーションプログラムは、処理プログラムの一例である。この場合には、アプリケーションプログラムのバージョンが変更されたことを判定することができ、アプリケーションプログラムの更新に対応してMFP100を制御することができる。
なお、上述した実施の形態においては、外部装置の一例として、MFP100を説明したが、プリンターまたはファクシミリ装置等、PC200,200A,200Bが制御対象とする周辺装置であってもよい。
また、上述した実施の形態においては、プリントシステム1について説明したが、図6、図7、図9、図11、図13、図15に示した処理をPC200、200A、200Bに実行させる動作更新方法および、その動作更新方法をPC200、200A、200Bが備えるCPUに実行させる動作更新プログラムとして捉えることができるのは言うまでもない。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
<付記>
(1)前記外部装置制御手段は、前記処理プログラムを実行するタスクが出力するデータおよびコマンドを、前記外部装置が解釈可能なデータおよびコマンドに変換する変換手段を含む、請求項1〜9のいずれかに記載の情報処理装置。
(2)ユーザーによる操作を受け付ける操作受付手段と、
前記受け付けられた操作に従って前記関連付テーブルを更新する更新するテーブル更新手段と、をさらに備える、請求項7記載の情報処理装置。
(3)1以上の処理プログラムそれぞれのバージョン番号と、当該バージョン番号で特定されるバージョンに対応する処理と、を関連付けた関連付テーブルを記憶するテーブル記憶手段と、
前記取得された識別情報のバージョンが前記既知のバージョンよりも新しいと判定された場合に、未知のバージョンのバージョン番号と、前記未知のバージョンに対して予め定められた処理と、を関連付けることにより前記関連付テーブルを更新するテーブル更新手段と、をさらに備える、請求項7記載の情報処理装置。
(4)前記処理プログラムは、オペレーティングシステムプログラムを含む、請求項1〜9のいずれかに記載の情報処理装置。
(5)前記外部装置は画像を処理する画像処理装置を含む、請求項1〜9のいずれかに記載の情報処理装置。
1 プリントシステム、3 LAN、51 外部装置制御部、52 テーブル記憶部、53 識別情報取得部、54 判定部、54A,54B,54C,54D 判定部、55,55A テーブル更新部、57 操作受付部、56 更新指示部、59 回答受付部、61 OSプログラム、62 関連付テーブル、64,64A 未知データコマンド情報、100,200 MFP、114,203 RAM、110 メイン回路、111,201 CPU、112 通信I/F部、113,202,203 ROM、115,204 HDD、116 ファクシミリ部、117,209 外部記憶装置、118,209A CD−ROM、120 自動原稿搬送装置、130 原稿読取部、140 画像形成部、150 給紙部、160 操作パネル、161,206 表示部、163,207 操作部、165 タッチパネル、167 ハードキー部、200,200A,200B PC、205 通信部、R1,R2 関連付レコード

Claims (11)

  1. 外部装置に処理させるデータを出力する処理を定めた処理プログラムを実行するタスクが出力するデータに従って前記外部装置を制御する外部装置制御手段と、
    前記処理プログラムのバージョンが既知のバージョンよりも新しいか否かを判定する判定手段と、を備え、
    前記外部装置制御手段は、前記処理プログラムのバージョンが前記既知のバージョンと同じ場合に、前記既知のバージョンに対して予め定められた処理を実行し、前記処理プログラムのバージョンが前記既知のバージョンよりも新しいと判定された場合に、未知のバージョンに対して予め定められた処理を実行する、情報処理装置。
  2. 前記処理プログラムのバージョンを識別するための識別情報を取得する識別情報取得手段を、さらに備え、
    前記判定手段は、前記取得された識別情報により表されるバージョンが前記既知のバージョンよりも新しいか否かを判定する、情報処理装置。
  3. 前記識別情報は、前記バージョンに対応するバージョン番号を含み、
    前記判定手段は、前記取得された識別情報に含まれるバージョン番号が、前記既知のバージョンに対応するバージョン番号よりも大きいか否かを判定する、請求項2に記載の情報処理装置。
  4. 前記識別情報は、前記処理プログラムのバージョンの公開時期を含み、
    前記判定手段は、前記識別情報に含まれる公開時期が、前記既知のバージョンの公開時期よりも後であるか否かを判定する、請求項2または3に記載の情報処理装置。
  5. 前記判定手段は、前記処理プログラムを実行するタスクが出力するデータの形式が、予め定められた形式であるか否かを判定する、請求項1〜4のいずれかに記載の情報処理装置。
  6. 前記判定手段は、前記処理プログラムを実行するタスクが出力するコマンドが、予め定められたコマンドであるか否かを判定する、請求項1〜5のいずれかに記載の情報処理装置。
  7. 前記処理プログラムの1以上の既知のバージョンと、当該既知のバージョンに対応する処理と、を関連付けた関連付テーブルを記憶するテーブル記憶手段、をさらに備え、
    前記判定手段は、前記処理プログラムのバージョンが前記関連付テーブルに含まれるバージョンよりも新しいか否かを判定する、請求項1〜6のいずれかに記載の情報処理装置。
  8. 前記判定手段は、
    ユーザーに対して前記処理プログラムのバージョンが前記既知のバージョンよりも新しいか否かの問い合わせを行う問い合わせ手段と、
    前記問い合わせに対する回答を受け付ける回答受付手段と、を含む、請求項1〜7のいずれかに記載の情報処理装置。
  9. 前記処理プログラムのバージョンが前記既知のバージョンよりも新しいと判定された場合に、前記外部装置を前記未知のバージョンに対応させるために前記外部装置に更新を指示する更新指示手段をさらに備える、請求項1〜8のいずれかに記載の情報処理装置。
  10. 外部装置に処理させるデータを出力する処理を定めた処理プログラムを実行するタスクが出力するデータに従って前記外部装置を制御する外部装置制御手段を備えた情報処理装置で実行される動作更新方法であって、
    前記処理プログラムのバージョンが既知のバージョンよりも新しいか否かを判定する判定ステップと、
    前記処理プログラムのバージョンが前記既知のバージョンと同じ場合に、前記外部装置制御手段に前記既知のバージョンに対して予め定められた処理を実行させ、前記処理プログラムのバージョンが前記既知のバージョンよりも新しいと判定された場合に、前記外部装置制御手段に未知のバージョンに対して予め定められた処理を実行させる処理実行ステップと、を含む動作更新方法。
  11. 外部装置に処理させるデータを出力する処理を定めた処理プログラムを実行するタスクが出力するデータに従って前記外部装置を制御する外部装置制御手段を備えた情報処理装置を制御するコンピュータで実行される動作更新プログラムであって、
    前記処理プログラムのバージョンが既知のバージョンよりも新しいか否かを判定する判定ステップと、
    前記処理プログラムのバージョンが前記既知のバージョンと同じ場合に、前記外部装置制御手段に前記既知のバージョンに対して予め定められた処理を実行させ、前記処理プログラムのバージョンが前記既知のバージョンよりも新しいと判定された場合に、前記外部装置制御手段に未知のバージョンに対して予め定められた処理を実行させる処理実行ステップと、を前記コンピュータに実行させる動作更新プログラム。
JP2016127545A 2016-06-28 2016-06-28 情報処理装置、動作更新方法および動作更新プログラム Active JP6801258B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016127545A JP6801258B2 (ja) 2016-06-28 2016-06-28 情報処理装置、動作更新方法および動作更新プログラム
US15/636,068 US20170371645A1 (en) 2016-06-28 2017-06-28 Information processing apparatus, operation update method and operation update program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016127545A JP6801258B2 (ja) 2016-06-28 2016-06-28 情報処理装置、動作更新方法および動作更新プログラム

Publications (2)

Publication Number Publication Date
JP2018005322A true JP2018005322A (ja) 2018-01-11
JP6801258B2 JP6801258B2 (ja) 2020-12-16

Family

ID=60677486

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016127545A Active JP6801258B2 (ja) 2016-06-28 2016-06-28 情報処理装置、動作更新方法および動作更新プログラム

Country Status (2)

Country Link
US (1) US20170371645A1 (ja)
JP (1) JP6801258B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6987541B2 (ja) * 2017-06-16 2022-01-05 株式会社東芝 画像形成装置及び画像形成装置の制御方法

Also Published As

Publication number Publication date
JP6801258B2 (ja) 2020-12-16
US20170371645A1 (en) 2017-12-28

Similar Documents

Publication Publication Date Title
US9471261B2 (en) Image processing apparatus, display control method, and recording medium
KR100832955B1 (ko) 사용자의 의도에 따라 사용자 인터페이스를 디스플레이하는 장치, 그 방법 및 기억 매체
US20190095192A1 (en) Information processing apparatus and firmware update method
JP2010026562A (ja) 中継サーバ、中継方法および中継プログラム
JP6507614B2 (ja) 情報処理装置、記録システム、印刷プログラム、及び外部プログラム
US20130019160A1 (en) Application cooperation system including server and image processing apparatus, and application cooperation method
JP6558240B2 (ja) プログラム
JP6519164B2 (ja) 情報処理装置、記録システム、印刷プログラム、及び外部プログラム
US9207605B2 (en) Image forming apparatus, image forming system, application installation method, and non-transitory computer-readable recording medium encoded with application installation program
JP2010003100A (ja) データ処理装置、データ処理方法およびデータ処理プログラム
JP6641928B2 (ja) プログラム
JP2006246408A (ja) 遠隔操作システム及び画像形成装置
JP2018005295A (ja) プログラム及び携帯端末
JP6717402B2 (ja) 情報処理装置、記録システム、印刷プログラム、及び外部プログラム
JP6801258B2 (ja) 情報処理装置、動作更新方法および動作更新プログラム
US8988694B2 (en) Image forming apparatus, application executing method, and non-transitory computer-readable recording medium encoded with application executing program
JP5821600B2 (ja) 画像形成装置、設定方法および設定プログラム
JP7476541B2 (ja) 情報処理システム、制御装置、周辺装置制御方法および周辺装置制御プログラム
JP5585603B2 (ja) 画像処理装置、画像処理方法および画像処理プログラム
US8873077B2 (en) Image forming apparatus, application switching method, and non-transitory computer-readable recording medium encoded with application switching program
JP2022084118A (ja) スキャナ、制御プログラム
JP2007279988A (ja) 情報処理装置およびドライバプログラム
JP6825641B2 (ja) 出力指示プログラム、外部プログラム、情報処理装置、及びコンテンツ処理システム
JP6743946B2 (ja) 携帯端末及びプログラム
JP2023049338A (ja) インストーラプログラム、情報処理装置、ファイル配布方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190416

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200317

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200508

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201109

R150 Certificate of patent or registration of utility model

Ref document number: 6801258

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150