説明

画像処理装置及び再インストール方法

【課題】アプリケーションを再インストールした場合でも、アプリケーションに関するライセンス情報に含まれる動作制限情報を延長、又は加算しないようにすることを目的とする。
【解決手段】インストール手段と、インストール手段においてインストールされたライセンス情報に含まれるアプリケーションの動作制限情報を、閾値情報に設定する情報設定手段と、アプリケーションの動作に関する動作情報をカウントするカウント手段と、情報設定手段において設定された閾値情報及びカウント手段においてカウントされた動作情報に応じて、アプリケーションの動作を制限するアプリケーション動作制限手段と、再インストール手段において再インストールされたアプリケーションに関するライセンス情報に含まれるアプリケーションの動作制限情報を、閾値情報に設定しないよう制御する情報設定制御手段と、を有することによって課題を解決する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理装置及び再インストール方法に関する。
【背景技術】
【0002】
近年、複合機を始めとする画像処理装置において、JAVA(登録商標)等の技術を使用することにより、画像処理装置上において、所定のアプリケーション実行環境が整備されてきている。
【0003】
このようなアプリケーション実行環境を備えた画像処理装置では、エンドユーザは、必要とするアプリケーションを選択して購入し、インストールすることが可能であり、不要になった場合にはアンインストールすることができる。このため、アプリケーション実行環境とアプリケーションとのバージョンの組み合わせは膨大なものとなり、予め定められた機能のみが動作するアプリ実行環境と比較して、運用中に障害を発生する確立が高くなる可能性がある。このような障害発生時の復旧手段としては、従来から様々な取り組みが行われており、例えばアプリケーション更新時の障害復旧に関しては、旧バージョンに復旧する方法が提案されている(例えば、特許文献1参照)。
【0004】
一方、アプリケーションのライセンス情報として有効期限や所定機能(例えば、原稿の読み取り機能、ファクスやメール送信機能、文書のプリント機能)の上限動作回数を設定することができる画像処理装置がある。更に、ライセンス情報に、インストールする画像処理装置を一意に識別する情報等が格納され、他の画像処理装置では使用できないような仕組みが設けられている場合もある(例えば、特許文献2参照)。
【0005】
【特許文献1】特開平10−171635号公報
【特許文献2】特開2006−40217号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
アプリケーションのライセンス情報として有効期限や所定機能の上限動作回数が設定されている場合、有効期限や上限動作回数はインストール時にライセンス情報から不揮発性の記憶媒体に記録され、アプリケーション実行環境で管理される。
【0007】
ここで、障害復旧のために、バックアップとして保存していたライセンス情報を再利用して単純にアプリケーションの再インストールを行うと、再インストール時に再びライセンス情報から不揮発性の記憶媒体に有効期限等が記録(又は追加)される。その結果、有効期限、又は上限動作回数が延長されてしまう(又は加算されてしまう)問題が発生する。例えば、20日有効なアプリケーションをインストールした10日後に、アプリケーションの再インストールを行う。すると、再インストール時に20日間の情報が不揮発性の記録媒体に追加して記録され、有効期限が再び20日(又は追加された場合は30日間)となってしまう問題があった。
【0008】
これらの問題に関する解決策は、上述した特許文献1、特許文献2では開示されていない。
【0009】
本発明はこのような問題点に鑑みなされたもので、アプリケーションを再インストールした場合でも、アプリケーションに関するライセンス情報に含まれる動作制限情報を延長、又は加算しないようにすることを目的とする。
【課題を解決するための手段】
【0010】
そこで、本発明の画像処理装置は、画像処理に係るアプリケーション及び前記アプリケーションに関するライセンス情報をインストールするインストール手段と、前記インストール手段においてインストールされた前記ライセンス情報に含まれる前記アプリケーションの動作制限情報を、閾値情報に設定する情報設定手段と、前記アプリケーションの動作に関する動作情報をカウントするカウント手段と、前記情報設定手段において設定された閾値情報及び前記カウント手段においてカウントされた動作情報に応じて、前記アプリケーションの動作を制限するアプリケーション動作制限手段と、前記アプリケーションを再インストールする再インストール手段と、前記再インストール手段において再インストールされた前記アプリケーションに関する前記ライセンス情報に含まれる前記アプリケーションの動作制限情報を、前記閾値情報に設定しないよう制御する情報設定制御手段と、を有することを特徴とする。
【0011】
また、本発明は、画像処理に係るアプリケーション及び前記アプリケーションに関するライセンス情報をインストールするインストールステップと、前記インストールステップにおいてインストールされた前記ライセンス情報に含まれる前記アプリケーションの動作制限情報を、閾値情報に設定する情報設定ステップと、前記アプリケーションの動作に関する動作情報をカウントするカウントステップと、前記情報設定ステップにおいて設定された閾値情報及び前記カウントステップにおいてカウントされた動作情報に応じて、前記アプリケーションの動作を制限するアプリケーション動作制限ステップと、前記アプリケーションを再インストールする再インストールステップと、前記再インストールステップにおいて再インストールされた前記アプリケーションに関する前記ライセンス情報に含まれる前記アプリケーションの動作制限情報を、前記閾値情報に設定しないよう制御する情報設定制御ステップと、を有することを特徴とする。
【0012】
また、本発明は、プログラム及び記憶媒体としてもよい。
【発明の効果】
【0013】
本発明によれば、アプリケーションを再インストールした場合でも、アプリケーションに関するライセンス情報に含まれる動作制限情報を延長、又は加算しないようにすることができる。
【発明を実施するための最良の形態】
【0014】
以下、本発明の実施形態について図面に基づいて説明する。
【0015】
<実施形態1>
図1は、システム構成の一例を示す図である。
画像処理装置1001は、原稿を読み取り、様々な装置に送信する装置(コンピュータ)である。ファクシミリ1002は、画像処理装置1001が読み取ったデータを、公衆回線1009を介して受信しプリントする。ファイルサーバ/メールサーバ1003は、画像処理装置1001が読み取ったデータや、画像処理装置1001内部のデータを格納するサーバソフトウェアが動作しているコンピュータである。クライアントコンピュータ1004は、ファイルサーバ/メールサーバ1003に接続し、格納されているデータをダウンロードして表示するコンピュータである。プリンタ1005は、画像処理装置1001が読み取ったイメージデータやクライアントコンピュータ1004が生成するPDLデータを印刷する印刷装置である。ソフトウェア配信サーバ1006は、画像処理装置1001のROMプログラムやプログラム実行環境、更にはインストール可能なアプリケーションを保持し、配信する役割を担うコンピュータである。ライセンス管理サーバ1007は、ソフトウェア配信サーバ1006が保持するアプリケーションのライセンス、及び、画像処理装置1001の追加機能のライセンスを発行する役割を担うコンピュータである。
【0016】
ネットワーク1008は、画像処理装置1001、ファイルサーバ/メールサーバ1003、クライアントコンピュータ1004、プリンタ1005が接続されるネットワークである。一例としてはイーサネット(登録商標)であり企業や教育機関内に構築される。インターネット1010は、ソフトウェア配信サーバ1006、ライセンス管理サーバ1007が接続されるネットワークである。ネットワーク1008とインターネット1010とは不図示のゲートウェイを介して接続され、相互に情報の授受を行うことが可能である。
【0017】
図2は、画像処理装置1001に実装されたシステム(又はハードウェア)構成の一例を示す図である。
コントローラユニット2000は、画像入力デバイスであるスキャナ2070や画像出力デバイスであるプリンタ2095と接続し、一方ではネットワーク1008や公衆回線1009と接続することで、画像情報やデバイス情報の入出力を行う。CPU2001は、システム全体を制御するコントローラである。RAM2002は、システムのワークメモリであり、画像データを一時記憶するための画像メモリでもある。ROM2003は、ブートROMであり、システムのブートプログラムが格納されている。
【0018】
HDD2004は、ハードディスクドライブで、システムソフトウェア、アプリケーション、画像データを格納する。操作部I/F2006は、タッチパネルを有した操作部2012とのインターフェース部で、操作部2012に表示する画像データを操作部2012に対して出力する。また、操作部I/F2006は、操作部2012から本システム使用者が入力した情報を、CPU2001に伝える役割をする。Network I/F2010は、ネットワーク1008に接続し、情報の入出力を行う。MODEM2050は、公衆回線1009に接続し、情報の入出力を行う。SRAM2100は、高速動作可能な不揮発性の記録媒体である。RTC2110は、リアルタイムクロックであり、コントローラユニット2000に電源が入っていない状態でも現在の時刻をカウントし続ける処理を行う。
以上のデバイスがシステムバス2007上に配置される。
【0019】
Image Bus I/F2005は、システムバス2007と画像データを高速で転送する画像バス2008とを接続し、データ構造を変換するバスブリッジである。画像バス2008は、PCIバス又はIEEE1394で構成される。
画像バス2008上には以下のデバイスが配置される。
【0020】
RIP2060は、ラスターイメージプロセッサでありPDLコードをビットマップイメージに展開する。デバイスI/F部2020は、画像入出力デバイスであるスキャナ2070やプリンタ2095とコントローラユニット2000とを接続し、画像データの同期系/非同期系の変換を行う。スキャナ画像処理部2080は、入力画像データに対し補正、加工、編集を行う。プリンタ画像処理部2090は、プリント出力画像データに対して、プリンタの補正、解像度変換等を行う。画像回転部2030は、画像データの回転を行う。画像圧縮部2040は、多値画像データはJPEG、2値画像データはJBIG、MMR、MHの圧縮伸張処理を行う。
【0021】
図3は、画像処理装置1001のソフトウェア構成の一例を示す図である。なお、図3に示されるソフトウェアは、画像処理装置1001のコントローラユニット2000に実装されるものである。
【0022】
画像処理装置1001に内蔵されコントローラユニット2000によって処理されるソフトウェアは、所謂ファームウェアとして実装されており、CPU2001によって実行される。
【0023】
リアルタイムOS3001は、リアルタイムオペレーティングシステムであり、組み込みシステムの制御に最適化された各種資源管理のサービスと枠組みをその上で動作するソフトウェアに提供する。リアルタイムOSが提供する各種資源管理のサービスと枠組みとには、CPU2001による処理の実行コンテクストを複数管理することで複数の処理を実質的に並行動作させるマルチタスク(スレッド)管理がある。また、更に、タスク間の同期やデータ交換を実現するタスク間通信、メモリ管理、割り込み管理、各種のデバイスドライバ、ローカルインタフェースやネットワーク通信等の各種プロトコルの処理を実装したプロトコルスタック、等もある。
【0024】
コントローラプラットフォーム3002は、ファイルシステム3003やジョブ・デバイス制御3004、カウンタ(閾値情報)3005から構成される。
【0025】
ファイルシステム3003は、HDD2004やRAM2002等の記憶装置上に構築されたデータを格納するための機構である。ファイルシステム3003は、コントローラユニット2000が扱うジョブをスプールしたり各種データを保存したりするために用いられる。ジョブ・デバイス制御3004は、画像処理装置1001のハードウェアを制御し、また、画像処理装置1001の主にハードウェアが提供する基本機能(プリント、スキャン、通信、画像変換等)を利用するジョブを制御する。カウンタ3005は、SRAM2100に格納され、アプリケーション毎の有効期限や、プリント、スキャンの上限動作回数、カウンタ値を記憶する。
【0026】
システムサービス3006は、画像処理装置1001の稼働状況をモニタリングするモジュールである。また、システムサービス3006は、ネットワーク1008を介してソフトウェア配信サーバ1006から、ソフトウェア(アプリケーション)やライセンス(ライセンスファイル)をダウンロードする。
【0027】
アプリケーションプラットフォーム3007は、リアルタイムOS3001、コントローラプラットフォーム3002の機構を、後述するシステムアプリケーション3008や、追加可能なアプリケーション3011から利用可能とするためのミドルウェアである。
【0028】
システムアプリケーション3008は、アプリケーション管理3009、ウィンドウ管理3010から構成される。
アプリケーション管理3009は、アプリケーション3011をインストール、アンインストール、起動、停止するための管理モジュールである。ウィンドウ管理3010は、アプリケーション毎のウィンドウを管理し、選択されたアプリケーションのウィンドウを操作部2012へ表示する処理を行うためのモジュールである。
【0029】
アプリケーション3011は、アプリケーションプラットフォーム3007によって提供される機能を利用して、様々なビジネスモデルを実現する応用ソフトウェアである。
【0030】
図4は、HDD2004のディスクパーテション構成の一例を示す図である。
基本プログラムパーテション4001は、リアルタイムOS3001、コントローラプラットフォーム3002、システムサービス3006、アプリケーションプラットフォーム3007、システムアプリケーション3008を格納するためのパーテションである。
なお、このパーテションに格納されているサービスやアプリケーション等はシステムソフトウェアであって画像処理装置1001に予め搭載されているものである。
【0031】
一時利用パーテション4002は、ソフトウェア配信サーバよりダウンロードしたソフトウェアや、アプリケーションが生成するデータ等を一時格納するためのパーテションである。
【0032】
アプリケーション用パーテション4003は、アプリケーションプラットフォーム3007やシステムアプリケーション3008がその機能を利用可能とするために、基本プログラムパーテション4001より再配置されるパーテションである。更に、アプリケーション用パーテション4003は、アプリケーション管理3009によって追加インストールされたアプリケーション3011が格納されるパーテションでもある。
ライセンスバックアップ用パーテション4004は、アプリケーション3011をインストールする際に必要となるライセンスファイルをバックアップするためにパーテションである。
【0033】
図5は、アプリケーション3011のライセンスファイルの一例を示す図である。アプリケーションプラットフォーム3007上で動作するアプリケーションは全て同様の情報をもっているものとする。
アプリケーション名5001は、ライセンスファイルの対象となるアプリケーションの名称であり、図5では「かんたんコピー」であることを表している。アプリケーション識別子5002は、ライセンスファイルの対象となるアプリケーションの識別子であり、図5では「f7b8ac1c−895a−4905−86c7−40273fe0a531」であることを表している。この識別子はアプリケーションで重複することはなく、独自性を保証されているものである。動作制限情報の一例である有効期限5003は、ライセンスファイルの対象となるアプリケーションの有効期限であり、図5では30日間有効であることを表している。また、動作制限情報の一例であるプリント上限5004、スキャン上限5005は、ライセンスファイルの対象となるアプリケーションがプリント及びスキャン可能な上限値であり、図5ではそれぞれ1000枚であること表している。ライセンス情報5006は、ライセンスファイルの対象となるアプリケーションをインストールする際に必要な各種秘匿情報である。ライセンス情報5006が改竄等されていた場合、アプリケーション管理3009は、アプリケーション3011のインストールを許可せず、エラー終了させるように構成されている。
【0034】
図6は、アプリケーションをインストールする場合の処理の一例を示すフローチャートである。本フローチャートの処理は、画像処理装置1001のCPU2001において実行される。なお、本実施形態においては、アプリケーションはアプリケーション識別子を除き暗号化されており、復号するためのデータはライセンスファイルにより提供されるものとする。更にライセンスファイルは予め所定の暗号化が施され、画像処理装置1001内の所定の復号情報により復号されるものとする。更にライセンス取得用IDは、アプリケーション購入者が電子媒体や紙媒体等で予め取得しているものとする。
【0035】
S6001において、アプリケーション購入者がライセンス取得用IDを操作部2012において入力すると、画像処理装置1001は、前記ライセンス取得用IDをソフトウェア配信サーバ1006に送信する。ソフトウェア配信サーバ1006は、ライセンス取得用IDを基にアプリケーションファイルを特定し、ライセンス管理サーバ1007よりライセンスファイルを取得する。
【0036】
画像処理装置1001は、S6002においてアプリケーションファイルを受信し、S6003においてライセンスファイルを受信する。
次に、S6004おいて、画像処理装置1001は、S6002で受信したアプリケーションファイルからアプリケーション情報を抽出する。
【0037】
次に、S6005において、画像処理装置1001は、受信したライセンスファイルを画像処理装置1001内の所定の復号情報により復号化する。次に、S6006において、画像処理装置1001は、復号化したライセンスファイルからアプリケーション情報(図5の5001〜5005)を抽出する。
【0038】
S6007において、画像処理装置1001は、S6004とS6006とで抽出したアプリケーション情報の内、アプリケーション識別子が一致するか否かを判定する。一致しない場合、画像処理装置1001は、S6013に進み、エラーを表示し、図6に示す処理を終了する。一方、一致した場合、画像処理装置1001は、S6008へ進み、S6005で復号化したライセンスファイルよりアプリケーションファイルの復号情報(不図示)を取得し、S6002で受信したアプリケーションファイルを復号化する。
【0039】
次に、S6009において、画像処理装置1001は、アプリケーションファイルの復号化に成功したか否かを判定する。復号化に失敗した場合、画像処理装置1001は、S6013に進みエラーを表示し、図6に示す処理を終了する。一方、復号化に成功した場合、画像処理装置1001は、S6010に進み、アプリケーション管理3009を介してアプリケーションをHDD2004のアプリケーション用パーテション4003へ格納する。これにより、アプリケーションは実行可能な状態になる。
【0040】
次に、S6011において、画像処理装置1001は、S6006で抽出したアプリケーション情報に含まれる、アプリケーション識別子5002、有効期限5003、プリント上限5004、スキャン上限5005をカウンタ3005へ格納する(情報設定)。つまり、画像処理装置1001は、S6006で抽出したアプリケーション情報に含まれるアプリケーション識別子5002を、カウンタ3005のアプリケーション識別子へ格納(設定)する。また、画像処理装置1001は、S6006で抽出したアプリケーション情報に含まれる有効期限5003を、閾値情報の一例であるカウンタ3005の有効期限へ格納(設定)する。また、画像処理装置1001は、S6006で抽出したアプリケーション情報に含まれるプリント上限5004を、閾値情報の一例であるカウンタ3005のプリント上限へ格納(設定)する。また、画像処理装置1001は、S6006で抽出したアプリケーション情報に含まれるスキャン上限5005を、閾値情報の一例であるカウンタ3005のスキャン上限に格納(設定)する。
次に、S6012において、画像処理装置1001は、S6003で受信したライセンスファイル(又はS6005で復号化したライセンスファイル)をライセンスバックアップ用パーテション4004に格納して、図6に示す処理を終了する。
【0041】
図7は、図6のフローチャートの処理を実行する前のカウンタ3005の状態の一例を示す図である。図7の状態は、アプリケーションが一つも画像処理装置1001にインストールされてない初期状態のカウンタ3005を表している。
【0042】
図8は、図5に示したアプリケーション識別子をもつアプリケーションを、図6のフローチャートの処理に基づき、画像処理装置1001にインストールした直後のカウンタ3005の状態の一例を示す図である。アプリケーション識別子8001には「f7b8ac1c−895a−4905−86c7−40273fe0a531」が、有効期限8002には「30」が、プリント上限8003には「1000」が、スキャン上限8004には「1000」が登録されている。
【0043】
なお、画像処理装置1001は、アプリケーション識別子8001で識別されるアプリケーションがプリンタ2095を動作させた場合、プリントの回数(又はプリントの枚数)に応じてプリンタカウントのカウンタ値(動作情報)をカウントアップする。そして、画像処理装置1001は、カウントアップしたカウンタ値を、カウンタ3005のプリンタカウントに登録する。同様に、画像処理装置1001は、アプリケーション識別子8001で識別されるアプリケーションがスキャナ2070を動作させた場合、スキャンの回数(又はスキャンの枚数)に応じてスキャンカウントのカウンタ値(動作情報)をカウントアップする。そして、画像処理装置1001は、カウントアップしたカウンタ値を、カウンタ3005のスキャンカウントに登録する。また、画像処理装置1001は、アプリケーション識別子8001で識別されるアプリケーションがインストールされてからの日数(利用日数)をカウントし、カウンタ3005の期限カウントに登録する。
【0044】
画像処理装置1001は、例えば操作者からプリントの実行を要求された場合、プリント上限の値とプリンタカウントの値とを比較し、両者の値が等しくなった場合、プリントの実行(又はプリンタの利用)を制限、又は禁止する(アプリケーション動作制限)。同様に画像処理装置1001は例えば操作者からスキャンの実行を要求された場合、スキャン上限の値とスキャンカウントの値とを比較し、両者の値が等しくなった場合、スキャンの実行(又はスキャナの利用)を制限、又は禁止する(アプリケーション動作制限)。また、画像処理装置1001は、有効期限の値と期限カウントの値とを比較し、両者の値が等しくなった場合、アプリケーションの利用を制限、又は禁止する(アプリケーション動作制限)。
【0045】
図9は、CPU2001によって実行されるソフトウェアの正常時の起動シーケンスの一例を示した図である。
画像処理装置1001に電源を投入すると、CPU2001によってソフトウェアが実行され、コントローラプラットフォーム3002とアプリケーションプラットフォーム3007とシステムサービス3006とが起動される。コントローラプラットフォーム3002は、関連するサブタスクを起動し、システムサービス3006へ起動完了通知を行う。アプリケーションプラットフォーム3007は、関連するサブタスクとアプリケーション管理3009によって登録されたアプリケーションとを起動し、システムサービス3006へ起動完了通知を行う。システムサービス3006は、9001及び9002において起動完了通知を受信したことにより、画像処理装置1001の正常起動を確認する。
【0046】
図10は、CPU2001によって実行されるソフトウェアの異常時の起動シーケンスの一例を示した図である。なお、図10は、プログラム実行環境の動作不良を検知する一形態である。
図9と比較して、あるアプリの起動で異常停止したため、システムサービス3006は、アプリケーションプラットフォーム3007より通知されるべき10002の起動完了通知を受信することができない状態になっている。
【0047】
図11は、アプリケーション実行環境の異常を検知し、アプリケーション3011を再インストールする場合の処理の一例を示すフローチャートである。本フローチャートの処理は、画像処理装置1001のCPU2001において実行される。
【0048】
S11001において、画像処理装置1001に電源が投入されると、S11002においてシステムサービス3006が起動される。画像処理装置1001のシステムサービス3006は、S11003において、コントローラプラットフォーム3002及びアプリケーションプラットフォーム3007双方の起動完了通知があったか否かを判定する。何れかの起動完了通知が無い場合、画像処理装置1001のシステムサービス3006は、S11004へ進み、所定時間経過したか否かを判定し、経過していなければS11003へ処理を戻し、前記手順を繰り返す。一方、経過していていれば、システムサービス3006は、S11005へ処理を進める。S11005において、画像処理装置1001は、一時利用パーテション4002へアプリケーションデータをバックアップする。
【0049】
次に、S11006において、画像処理装置1001は、アプリケーションをアンインストールする。次に、S11007において、画像処理装置1001は、SRAM2100に格納されているアプリケーション再インストールフラグをONに設定する。次に、S11008において、画像処理装置1001は、再起動した後、S11002へ処理を戻し、前記手順を繰り返す。
【0050】
一方、S11003においてコントローラプラットフォーム3002及びアプリケーションプラットフォーム3007双方からの起動完了通知を受信した場合、システムサービス3006は、S11009へ進む。ここで、上述したように、S11005、S11006、S11007、S11008、S11002、S11003と進んできた場合、システムサービス3006は、S11003の判定において起動完了したと判定し、S11009に進む。
【0051】
S11009において、画像処理装置1001は、アプリケーション再インストールフラグがONであるか否かを判定する。OFFの場合、画像処理装置1001は、起動を完了し、起動処理を終了する。一方、ONの場合は、画像処理装置1001は、S11010へ進み、アプリケーションの再インストールを行う。なお、本処理に関しては後述の図12を用いてより詳細に説明を行う。アプリケーションの再インストール後、S11012において、画像処理装置1001は、アプリケーションを起動する。そして、S11013において、画像処理装置1001は、アプリケーション再インストールフラグをOFFにして、図11に示す処理を終了する。
【0052】
図12は、アプリケーションの再インストールする場合の処理の一例を示すフローチャートである。本フローチャートの処理は、画像処理装置1001のCPU2001において実行される。
S12001において、画像処理装置1001は、ライセンスバックアップ用パーテション4004に格納されているライセンスファイルに記述されているアプリケーション識別子5002をソフトウェア配信サーバ1006に送信する。
【0053】
次に、S12002において、画像処理装置1001は、前記送信したアプリケーション識別子5002に対応するアプリケーションファイルを受信する。次に、S12003において、画像処理装置1001は、ライセンスバックアップ用パーテション4004よりライセンスファイルを取得する。次に、S12004おいて、画像処理装置1001は、S12002で受信したアプリケーションファイルからアプリケーション情報を抽出する。次に、S12005において、画像処理装置1001は、取得したライセンスファイルを画像処理装置1001内の所定の復号情報(不図示)により復号化する。
【0054】
次に、S12006において、画像処理装置1001は、復号化したライセンスファイルからアプリケーション情報を抽出する。次に、S12007において、画像処理装置1001は、S12004とS12006とで抽出したアプリケーション情報の内、アプリケーション識別子が一致するかを判定する。一致しない場合、画像処理装置1001は、S12013に進みエラーを表示し、図12に示す処理を終了する。一方、一致した場合、画像処理装置1001は、S12008へ進み、S12005で復号化したライセンスファイルよりアプリケーションファイルの復号情報(不図示)を取得し、S12002で受信したアプリケーションファイルを復号化する。
【0055】
次に、S12009において、画像処理装置1001は、アプリケーションファイルの復号化に成功したか否かを判定する。復号化に失敗した場合、画像処理装置1001は、S12013に進みエラーを表示し、図12に示す処理を終了する。一方、復号化に成功した場合、画像処理装置1001は、S12010に進み、アプリケーション管理3009を介してアプリケーションがHDD2004のアプリケーション用パーテション4003へ格納し、図12に示す処理を終了する。これにより、アプリケーションは実行可能な状態になる。
【0056】
本フローチャートでは画像処理装置1001は、S12006で抽出したアプリケーション情報に含まれる、アプリケーション識別子5002、有効期限5003、プリント上限5004、スキャン上限5005をカウンタ3005へ格納しない(情報設定制御)。
【0057】
図13は、図11及び図12のフローチャートにおいてアプリケーションをアンインストールする直前とアプリケーションを再インストールした直後とのカウンタ3005の状態の一例を示す図である。
有効期限13001、プリント上限13003、スキャン上限13005の値は図8でアプリケーションをインストールした直後の値と同等である。期限カウント13002、プリンタカウント13004、スキャンカウント13006は、アプリケーションをアンインストールする直前のカウンタ値を保持している(情報設定制御)。
【0058】
<実施形態2>
実施形態2の基本的な図は、実施形態1の図1から図10までと、図12、図13は同様であるので説明の詳細は省略する。
図14は、アプリケーション実行環境の異常を検知し、アプリケーションプラットフォーム3007とアプリケーション3011とを再インストールする場合の処理の一例を示すフローチャートである。本フローチャートの処理は、画像処理装置1001のCPU2001において実行される。
【0059】
S14001からS14005までの処理は、図11のS11001からS11005までの処理と同様であるため説明は省略する。
S14006において、画像処理装置1001は、アプリケーション用パーテション4003を初期化し、アプリケーションをアンインストールする。また、画像処理装置1001は、基本プログラムパーテション4001より、アプリケーションプラットフォーム3007をアンインストールする。
【0060】
次に、S14007において、画像処理装置1001は、アプリケーションプラットフォーム3007の取得要求をソフトウェア配信サーバ1006へ送信する。次に、S14008において、画像処理装置1001は、アプリケーションプラットフォーム3007を受信する。
【0061】
次に、S14010において、画像処理装置1001は、受信したアプリケーションプラットフォーム3007を基本プログラムパーテション4001に展開し、インストールする。次に、S14011において、画像処理装置1001は、SRAM2100に格納されているアプリケーション再インストールフラグをONに設定する。次に、S14012において、画像処理装置1001は、再起動した後、S14002へ処理を戻し、前記手順を繰り返す。
【0062】
これ以降のS14013からS14016までの処理は図11のS11009からS11013までの処理と同様であるため説明を省略する。
本フローチャートの処理により、アプリケーションプラットフォーム3007とアプリケーション3011との双方が再インストールされるが、この場合も実施形態1の図13と同様にカウンタ3005の状態は保持される。
【0063】
<実施形態3>
実施形態1及び実施形態2では、画像処理装置1001は、ライセンスファイルのライセンスバックアップ用パーテション4004への格納をアプリケーションのインストール直後に行う様説明を行った(例えば図6のS6012等参照)。しかし、画像処理装置1001は、インストール時はアプリケーション用パーテション4003へライセンスファイルを格納しておき、異常を検知した後のリカバリ処理実行前にライセンスバックアップ用パーテション4004へ格納するようにしてもよい。
より具体的に説明すると、画像処理装置1001は、実施形態1では図11のS11006の直前、また実施形態2では図14のS14006の直前に、ライセンスファイルをライセンスバックアップ用パーテション4004へ格納するようにしてもよい。
【0064】
<その他の実施形態>
また、本発明の目的は、以下のようにすることによって達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体(又は記録媒体)を、システム或いは装置に供給する。そして、そのシステム或いは装置の中央演算処理手段(CPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行する。この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコードを記録した記憶媒体は本発明を構成することになる。
【0065】
また、システム或いは装置の前記中央演算処理手段が読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、システム或いは装置上で稼働しているオペレーティングシステム(OS)等が実際の処理の一部又は全部を行う。その処理によって上述した実施形態の機能が実現される場合も含まれる。
【0066】
更に、記憶媒体から読み出されたプログラムコードが、前記システム或いは装置に挿入された機能拡張カードや、接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって上述した実施形態の機能が実現される場合も含まれる。
【0067】
本発明を前記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【0068】
以上、上述した実施形態によれば、アプリケーション実行環境の動作不良が発生した場合、アプリケーション実行環境又はアプリケーションを自動で再インストールすることができる。更に、アプリケーション実行環境又はアプリケーションを自動で再インストールした場合もライセンス管理されたアプリケーションの有効期限や所定機能の上限動作回数を維持することができる。
【0069】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【0070】
【図1】システム構成の一例を示す図である。
【図2】画像処理装置1001に実装されたシステム(又はハードウェア)構成の一例を示す図である。
【図3】画像処理装置1001のソフトウェア構成の一例を示す図である。
【図4】HDD2004のディスクパーテション構成の一例を示す図である。
【図5】アプリケーション3011のライセンスファイルの一例を示す図である。
【図6】アプリケーションをインストールする場合の処理の一例を示すフローチャートである。
【図7】図6のフローチャートの処理を実行する前のカウンタ3005の状態の一例を示す図である。
【図8】図5に示したアプリケーション識別子をもつアプリケーションを、図6のフローチャートの処理に基づき、画像処理装置1001にインストールした直後のカウンタ3005の状態の一例を示す図である。
【図9】CPU2001によって実行されるソフトウェアの正常時の起動シーケンスの一例を示した図である。
【図10】CPU2001によって実行されるソフトウェアの異常時の起動シーケンスの一例を示した図である。
【図11】アプリケーション実行環境の異常を検知し、アプリケーション3011を再インストールする場合の処理の一例を示すフローチャートである。
【図12】アプリケーションの再インストールする場合の処理の一例を示すフローチャートである。
【図13】図11及び図12のフローチャートにおいてアプリケーションをアンインストールする直前とアプリケーションを再インストールした直後とのカウンタ3005の状態の一例を示す図である。
【図14】アプリケーション実行環境の異常を検知し、アプリケーションプラットフォーム3007とアプリケーション3011とを再インストールする場合の処理の一例を示すフローチャートである。
【符号の説明】
【0071】
1001 画像処理装置
2001 CPU
3005 カウンタ
3007 アプリケーションプラットフォーム
3011 アプリケーション

【特許請求の範囲】
【請求項1】
画像処理に係るアプリケーション及び前記アプリケーションに関するライセンス情報をインストールするインストール手段と、
前記インストール手段においてインストールされた前記ライセンス情報に含まれる前記アプリケーションの動作制限情報を、閾値情報に設定する情報設定手段と、
前記アプリケーションの動作に関する動作情報をカウントするカウント手段と、
前記情報設定手段において設定された閾値情報及び前記カウント手段においてカウントされた動作情報に応じて、前記アプリケーションの動作を制限するアプリケーション動作制限手段と、
前記アプリケーションを再インストールする再インストール手段と、
前記再インストール手段において再インストールされた前記アプリケーションに関する前記ライセンス情報に含まれる前記アプリケーションの動作制限情報を、前記閾値情報に設定しないよう制御する情報設定制御手段と、
を有することを特徴とする画像処理装置。
【請求項2】
アプリケーションに関するライセンス情報に含まれる前記動作制限情報は、前記アプリケーションの有効期限であり、
前記情報設定手段は、前記インストール手段においてインストールされた前記ライセンス情報に含まれる前記アプリケーションの有効期限を動作制限情報として閾値情報に設定し、
前記カウント手段は、前記動作情報として前記アプリケーションの利用日数をカウントし、
前記アプリケーション動作制限手段は、前記アプリケーションの有効期限及び前記アプリケーションの利用日数に応じて、前記アプリケーションの動作を制限することを特徴とする請求項1に記載の画像処理装置。
【請求項3】
アプリケーションに関するライセンス情報に含まれる前記動作制限情報は、前記アプリケーションの機能の上限動作回数であり、
前記情報設定手段は、前記インストール手段においてインストールされた前記ライセンス情報に含まれる前記アプリケーションの機能の上限動作回数を動作制限情報として閾値情報に設定し、
前記カウント手段は、前記動作情報として前記アプリケーションの機能の動作回数をカウントし、
前記アプリケーション動作制限手段は、前記アプリケーションの機能の上限動作回数及び前記アプリケーションの機能の動作回数に応じて、前記アプリケーションの動作を制限することを特徴とする請求項1に記載の画像処理装置。
【請求項4】
アプリケーションの起動に関する動作不良を検知する検知手段と、
前記検知手段において前記アプリケーションの起動に関する動作不良が検知された場合、アプリケーションをアンインストールするアンインストール手段と、
を更に有し、
前記再インストール手段は、前記アンインストール手段においてアンインストールされたアプリケーションを再インストールすることを特徴とする請求項1乃至3の何れか1項に記載の画像処理装置。
【請求項5】
画像処理に係るアプリケーション及び前記アプリケーションに関するライセンス情報をインストールするインストールステップと、
前記インストールステップにおいてインストールされた前記ライセンス情報に含まれる前記アプリケーションの動作制限情報を、閾値情報に設定する情報設定ステップと、
前記アプリケーションの動作に関する動作情報をカウントするカウントステップと、
前記情報設定ステップにおいて設定された閾値情報及び前記カウントステップにおいてカウントされた動作情報に応じて、前記アプリケーションの動作を制限するアプリケーション動作制限ステップと、
前記アプリケーションを再インストールする再インストールステップと、
前記再インストールステップにおいて再インストールされた前記アプリケーションに関する前記ライセンス情報に含まれる前記アプリケーションの動作制限情報を、前記閾値情報に設定しないよう制御する情報設定制御ステップと、
を有することを特徴とする再インストール方法。
【請求項6】
アプリケーションに関するライセンス情報に含まれる前記動作制限情報は、前記アプリケーションの有効期限であり、
前記情報設定ステップでは、前記インストールステップにおいてインストールされた前記ライセンス情報に含まれる前記アプリケーションの有効期限を動作制限情報として閾値情報に設定し、
前記カウントステップでは、前記動作情報として前記アプリケーションの利用日数をカウントし、
前記アプリケーション動作制限ステップでは、前記アプリケーションの有効期限及び前記アプリケーションの利用日数に応じて、前記アプリケーションの動作を制限することを特徴とする請求項5に記載の再インストール方法。
【請求項7】
アプリケーションに関するライセンス情報に含まれる前記動作制限情報は、前記アプリケーションの機能の上限動作回数であり、
前記情報設定ステップでは、前記インストールステップにおいてインストールされた前記ライセンス情報に含まれる前記アプリケーションの機能の上限動作回数を動作制限情報として閾値情報に設定し、
前記カウントステップでは、前記動作情報として前記アプリケーションの機能の動作回数をカウントし、
前記アプリケーション動作制限ステップでは、前記アプリケーションの機能の上限動作回数及び前記アプリケーションの機能の動作回数に応じて、前記アプリケーションの動作を制限することを特徴とする請求項5に記載の再インストール方法。
【請求項8】
アプリケーションの起動に関する動作不良を検知する検知ステップと、
前記検知ステップにおいて前記アプリケーションの起動に関する動作不良が検知された場合、アプリケーションをアンインストールするアンインストールステップと、
を更に有し、
前記再インストールステップでは、前記アンインストールステップにおいてアンインストールされたアプリケーションを再インストールすることを特徴とする請求項5乃至7の何れか1項に記載の再インストール方法。
【請求項9】
請求項5乃至8の何れか1項に記載の再インストール方法の各ステップをコンピュータに実行させることを特徴とするプログラム。
【請求項10】
請求項9に記載のプログラムを記憶したコンピュータにより読み取り可能な記憶媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2009−123100(P2009−123100A)
【公開日】平成21年6月4日(2009.6.4)
【国際特許分類】
【出願番号】特願2007−298397(P2007−298397)
【出願日】平成19年11月16日(2007.11.16)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】