(57)【要約】【課題】  従来、１つのファイルの中に多機種の画像形成装置用のアプリケーションに関する情報を保持するケースにおいて、インストール対象となった画像形成装置に適合したアプリケーションを適切に抽出し、インストールすることができなかった。【解決手段】  本発明の画像形成装置は、ネットワークを介して複数のアプリケーションを含むファイルを、複数の分割されたデータで順次受信し、該受信データにおいて、自装置に対応するアプリケーションであることを示す情報を検出する検出手段と、前記検出手段が自装置に対応するアプリケーションであることを示す情報を検出した際に、その後に受信される当該アプリケーションに関するデータを用いてインストール処理を行う制御手段とを有し、前記制御手段は自装置に対応するアプリケーションに関するデータ以外は読み捨てることを特徴とする。【選択図】  図５
2012164124.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して複数のアプリケーションを含むファイルを、複数の分割されたデータで順次に受信する受信手段と、
前記受信手段により受信したデータにおいて、自装置に対応するアプリケーションであることを示す情報を検出する検出手段と、
前記検出手段が自装置に対応するアプリケーションであることを示す情報を検出した際に、その後に前記受信手段により受信される当該アプリケーションに関するデータを用いてインストール処理を行う制御手段とを有し、
前記制御手段は、自装置に対応するアプリケーションに関するデータ以外の前記ファイルに基づき受信されるデータを読み捨てることを特徴とする画像形成装置。
【請求項２】
前記検出手段は、前記検出手段が自装置に対応するアプリケーションであることを示す情報を検出した際に、その後に前記受信手段により受信される当該アプリケーションに関するデータにおいて、自装置の状態に対応するアプリケーションであることを示す情報を検出し、
前記制御手段は、前記検出手段が自装置の状態に対応するアプリケーションであることを示す情報を検出した際に、その後に前記受信手段により受信される当該自装置の状態に対応するアプリケーションに関するデータを用いてインストール処理を行い、
さらに、前記制御手段は、当該自装置の状態に対応するアプリケーションに関するデータ以外の前記ファイルに基づき受信されるデータを読み捨てることを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記自装置の状態とは、フィニッシャー及びインサーターのいずれかの装着の状態を示すことを特徴とする請求項２に記載の画像形成装置。
【請求項４】
ネットワークを介して複数のアプリケーションを含むファイルを、複数の分割されたデータで順次に受信する受信工程と、
前記受信工程で受信したデータにおいて、自装置に対応するアプリケーションであることを示す情報を検出する検出工程と、
前記検出工程で自装置に対応するアプリケーションであることを示す情報を検出した際に、その後に前記受信工程で受信する当該アプリケーションに関するデータを用いてインストール処理を行う制御工程とを有し、
前記制御工程では、自装置に対応するアプリケーションに関するデータ以外の前記ファイルに基づき受信されるデータを読み捨てることを特徴とする制御方法。
【請求項５】
請求項１乃至３のいずれか１項に記載の手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アプリケーションをインストール可能な画像形成装置における、アプリケーションの管理技術に関する。
【背景技術】
【０００２】
複合機やプリンタなどの画像形成装置に、特定のアプリケーションをインストール、また実行するアプリケーション・プラットフォームを実装し、エンドユーザに対するソリューションを提供することが知られている。また、画像形成装置に接続されたＰＣ（パーソナルコンピューター）が、画像形成装置から取得した当該装置の識別情報を用いて、センター装置から最新の制御プログラムを取得して、その後、画像形成装置に制御プログラムをインストールする技術がある。（例えば、特許文献１参照。）
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−３０９１４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述された画像形成装置上で動作するアプリケーションは、プログラムの中で複数の機種を判別し、かつ、それぞれの機種に応じた処理を行うように構成されることが多い。すなわち、１つの実行ファイルの中で複数の機種に応じた処理を持っている。
【０００５】
一方、画像形成装置はＡ３サイズが扱える複合機から、Ａ４サイズの印刷のみが可能なプリンタまで存在する。加えて、これらの画像形成装置は、操作部にＳＶＧＡフルスクリーンが使えるものから、テキストベースの数行のＬＣＤしか使えないものまで様々である。そして、各機種において、アプリケーションが使えるメモリやＨＤＤに代表されるストレージのサイズは、大幅に異なる。したがって、Ａ３複合機上で動作可能なアプリケーションを、Ａ４プリンタ上にインストールし、且つ実行可能とするには、Ａ４プリンタのメモリ等の資源を増やす必要があり、コスト的に見合わなくなるという課題があった。また、市場においては、アプリケーションを運用する立場から、インストール単位となるアプリケーション・ファイルの一本化の要望は大きく、機種に応じてアプリケーション・ファイルを分けることは市場の要望に合わないという課題がある。
【０００６】
また、特許文献１の技術によると、画像形成装置の情報を取得し、画像形成装置に対応した制御プログラムを、ＰＣを介してインストールすることが開示されている。しかしながら、複数の機種などに応じた複数のアプリケーションが含まれるファイルを、記憶容量の少ない画像形成装置にダウンロードし、インストールを行うことに関しては想定していない。したがって、記憶容量の少ない画像形成装置においては、複数の機種などに応じた複数のアプリケーションが含まれるファイルを全て受信することができない場合には、インストール処理が失敗してしまう場合があった。
【課題を解決するための手段】
【０００７】
そこで、本発明の画像形成装置は、ネットワークを介して複数のアプリケーションを含むファイルを、複数の分割されたデータで順次に受信する受信手段と、前記受信手段により受信したデータにおいて、自装置に対応するアプリケーションであることを示す情報を検出する検出手段と、前記検出手段が自装置に対応するアプリケーションであることを示す情報を検出した際に、その後に前記受信手段により受信される当該アプリケーションに関するデータを用いてインストール処理を行う制御手段とを有し、前記制御手段は、自装置に対応するアプリケーションに関するデータ以外の前記ファイルに基づき受信されるデータを読み捨てることを特徴とする。
【発明の効果】
【０００８】
本発明によれば、１つのファイルの中に複数の機種の画像形成装置用のアプリケーションに関する情報を保持するケースにおいて、インストール対象の画像形成装置に適合したアプリケーションに関する情報を抽出し、適切にインストールすることが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本実施例におけるシステムの全体図である。
【図２】ＳＦＰ１０１の装置構成を示すブロック図である。
【図３】ＳＦＰ１０１の本発明のソフトウェアブロック図である。
【図４】本発明のアプリケーション・ファイルの構成図である
【図５】本発明のインストール時の処理を示すフローチャートである。
【図６】本発明の第２の実施形態のアプリケーション・ファイルの構成図である。
【図７】本発明の第２の実施形態における、インストール時の処理の一部を示すフローチャートである。
【図８】本発明の第３の形態のアプリケーション・ファイルである。
【図９】本発明の第３の実施形態における、インストール時の処理の一部を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１１】
（実施例１）
図１は、本実施例におけるシステムの全体図である。本システムでは、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）１０４により、画像形成装置であるＳＦＰ（Ｓｉｎｇｌｅ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）１０１、ＭＦＰ（Ｍｕｌｔｉ−ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）１０２、およびＰＣ１０３が通信可能に接続されている。
【００１２】
図２は、ＳＦＰ１０１の装置構成を示すブロック図である。ＣＰＵ２０９を含む制御部２０８は、ＳＦＰ１０１全体の動作を制御する。ＣＰＵ２０９は、ＲＯＭ２１０に記憶された制御プログラムを読み出して読取制御や送信制御などの各種制御処理を実行する。ＲＡＭ２１１は、ＣＰＵ２０９の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ２０７は、画像データや各種プログラムを記憶する。制御部２０８は機能部２０１と接続され、操作部２０２、プリンタ部２０３の動作を制御する。操作部２０２には、タッチパネル機能を有する液晶表示部やキーボードなどが備えられている。プリンタ部２０３は制御部２０８から入力された印刷すべき画像データを記録媒体上に印刷する。インターフェース部２０５は、制御部２０８をＬＡＮ１０４に接続し、ネットワーク上の図外の情報処理装置から印刷用の画像データを受信したり、操作部２０２で表示する画面データを受信したりする。なお、図外の情報処理装置から受信した印刷画像は画像メモリ２０６に一時的に格納され、制御部２０８を介してプリンタ部２０３において印刷される。
【００１３】
図３は、ＳＦＰ１０１のソフトウェアブロック図である。本ブロック図に示される各モジュールは、ＲＯＭ２１０あるいはＨＤＤ２０７に格納され、ＣＰＵ２０９によって実行されるものとする。
３０１は、ＯＳ層であり、一般的にはリアルタイムＯＳが使用されるが、昨今ではＬｉｎｕｘ（Ｌｉｎｕｘは登録商標）等の汎用ＯＳが使用されることもある。３０２は、Ｊａｖａ（Ｊａｖａは登録商標）に代表される仮想マシンであり、アプリケーションの実行環境を提供するものである。３０３は、アプリケーション・フレームワークであり、アプリケーションのライフサイクルを管理する機能を提供するものである。３０４は、インストーラ・サービスであり、後述のアプリケーションＡ，Ｂなど複数のアプリケーションを、アプリケーション・フレームワーク３０３に登録することでインストール処理を行うものである。３０５、３０６は、インストーラ・サービス３０４によってインストールされたアプリケーションであり、ＳＦＰ１０１上で様々な機能提供するものである。アプリケーション３０５，３０６は図外のＩ／Ｆを使用して、操作部２０２を介してユーザとやり取りを行うことが可能である。また、インターフェース部２０５を介して、ＰＣ１０３などからデータを受信し、プリンタ部２０４を使って印刷することも可能である。なお、インストーラ・サービス３０４は、ＰＣ１０３からブラウザを使用してアクセスされ、所定のアプリケーション・ファイルを受信するものとする。
【００１４】
図４は、本実施例におけるアプリケーション・ファイルの構成図である。４０１は、アプリケーション・ファイル全体を示すものである。４０２は、ＳＦＰ１０１に適合したアプリケーション部である。４０３は、ＭＦＰ１０２に適合したアプリケーション部である。アプリケーション・ファイル４０１の内部は、ＸＭＬ等のマークアップ言語を用い、ＳＦＰ用アプリケーション部４０２、ＭＦＰ用アプリケーション部４０３がそれぞれ識別可能に構成されているものとする。
【００１５】
図５は、ＳＦＰ１０１のインストーラ・サービス３０４のインストール時の処理を説明するためのフローチャートである。
Ｓ５０１では、インストーラ・サービス３０４が、インターフェース部２０５、ＬＡＮ１０４を介し、ＰＣ１０３から送信されたアプリケーション・ファイル４０１を、所定のサイズ分だけ読み込み、一時的に格納する。Ｓ５０２では、インストーラ・サービス３０４が、ＰＣ１０３から送信されたデータを全て読み込んだことをチェックする。本ステップで、データを受信が完了したと判定された場合は、本フローチャートの処理を終了する。
Ｓ５０３では、インストーラ・サービス３０４が、Ｓ５０１で読み込んだ所定のサイズのデータから、ＳＦＰ１０１用のデータの開始を示すタグ情報を検索する。Ｓ５０４は、インストーラ・サービス３０４が、Ｓ５０３でＳＦＰ１０１を示すタグが検出できたことをチェックする。本ステップでタグが検出できていなければＳ５０１に戻り、データの受信を継続する。
Ｓ５０５では、インストーラ・サービス３０４が、ＳＦＰ１０１用のアプリケーション部４０２を受信する。本ステップで、インストーラ・サービス３０４が、アプリケーション部４０２を受信し、ＨＤＤ２０７の所定の位置に格納する。Ｓ５０６では、インストーラ・サービス３０４が、ＳＦＰ１０１用のデータの終了を示すタグの検出を行う。データの終了を示すタグが検出できない場合はＳ５０５に戻り、アプリケーション部４０２の受信を繰り返す。
Ｓ５０７では、インストーラ・サービス３０４が、受信が完了したアプリケーション部４０２をインストールする。本ステップで、インストーラ・サービス３０４が、アプリケーション・フレームワーク３０３に、受信したアプリケーション部４０２を登録することにより、インストール処理を行う。
Ｓ５０８では、ＰＣ１０３からの送信されたアプリケーション・ファイル４０１を全て受信し終えたかを判定し、受信完了していれば（Ｓ５０８−Ｎｏ）、本処理を終了する。Ｓ５０９では、ＰＣ１０３から送信されたデータの残りのデータを読み捨てることで、ＭＦＰ１０２用のアプリケーション部４０３を破棄し、本処理を終了する。
【００１６】
本フローチャートで説明した処理により、アプリケーション・ファイル４０１の全体を、ＳＦＰ１０１のＨＤＤ２０７に格納する必要が無くなり、必要最小限で、且つ有効な情報のみを受信してインストール処理を行うことが可能となる。
【００１７】
（実施例２）
図６は、実施例２で用いるアプリケーション・ファイルの構成図である。
６０１は、アプリケーション・ファイル全体を示すものである。６０２は、ＳＦＰ１０１に適合したアプリケーション部である。６０３は、ＳＦＰ１０１において、Ｆｉｎｉｓｈｅｒが装着されていない状態に適合したアプリケーション部である。６０４は、ＳＦＰ１０１において、Ｆｉｎｉｓｈｅｒ（フィニッシャー）が装着された状態に適合したアプリケーション部である。６０５は、ＭＦＰ１０２に適合したアプリケーション部である。６０６は、ＭＦＰ１０２において、Ｆｉｎｉｓｈｅｒが装着されていない状態に適合したアプリケーション部である。６０７は、ＭＦＰ１０２において、Ｆｉｎｉｓｈｅｒ−Ａが装着された状態に適合したアプリケーション部である。６０８は、ＭＦＰ１０２において、Ｆｉｎｉｓｈｅｒ−Ｂが装着された状態に適合したアプリケーション部である。６０９は、ＭＦＰ１０２において、Ｆｉｎｉｓｈｅｒ−ＢとＩｎｓｅｒｔｅｒ（インサーター）が装着された状態に適合したアプリケーション部である。
【００１８】
図７は、実施例２における、ＳＦＰ１０１のインストーラ・サービス３０４の処理を説明するためのフローチャートである。本フローチャートは、図５に示したフローチャートのうち、Ｓ５０５〜Ｓ５０６までの処理を変更したものである。従って、本フローチャート以外のインストール時の処理の説明は割愛する。なお、ここではＳＦＰ１０１にＦｉｎｉｓｈｅｒが装着されていない場合の説明を行うものとする。
Ｓ５０５では、インストーラ・サービス３０４が、ＳＦＰ１０１用のアプリケーション部６０２を受信する。Ｓ７０２では、受信したデータからＳＦＰ１０１の状態を特定するタグ情報を検索する。
Ｓ７０３では、インストーラ・サービス３０４が、Ｓ７０２でＳＦＰ１０１の状態と一致するタグが検出できたかをチェックする。本ステップでタグが検出できていなければＳ７０１に戻り、データの受信を継続する。Ｓ７０４では、インストーラ・サービス３０４が、ＳＦＰ１０１のＦｉｎｉｓｈｅｒが未装着状態のアプリケーション部６０３を受信する。本ステップで、インストーラ・サービス３０４が、アプリケーション部６０３を受信し、ＨＤＤ２０７の所定の位置に格納する。
Ｓ５０６では、インストーラ・サービス３０４が、ＳＦＰ１０１のＦｉｎｉｓｈｅｒが未装着状態のアプリケーション部６０３のデータの終了を示すタグの検出を行う。データの終了を示すタグが検出できない場合はＳ７０４に戻り、アプリケーション部６０３の受信を繰り返す。
【００１９】
（実施例３）
本実施例では、実施例１および実施例２に記載のＰＣ１０３から送付されるアプリケーション・ファイル４０１、あるいはアプリケーション・ファイル６０１が、暗号化されているような場合に対応したものである。このようなケースでは、アプリケーション・ファイルの正当性を確認するために、アプリケーション・ファイルそのものは全て受信しなければならない。また、インストールする際に使用するアプリケーションの構成情報が、図８に示すように抽出対象毎に分離されているようなケースについても対応する。
図８は、実施例３で用いるアプリケーション・ファイルを示すものである。
８０１は、ＰＣ１０３から送信されるアプリケーション・ファイルの全体図である。８０２は、本アプリケーション全体として定義される構成情報（メイン）であり、例えば、アプリケーション名などが格納されているものとする。８０３は、ＳＦＰ１０１に適合したアプリケーション部である。８０４は、アプリケーション８０１として、ＳＦＰ１０１に特化した情報を保持する構成情報（サブ１）であり、ＳＦＰ１０１に適合したアプリケーションを抽出した際に、構成情報（メイン）８０２を補完する情報である。８０５は、ＭＦＰ１０２に適合したアプリケーション部である。８０６は、アプリケーション８０１として、ＭＦＰ１０２に特化した情報を保持する構成情報（サブ２）であり、ＭＦＰ１０２に適合したアプリケーションを抽出した際に、構成情報（メイン）８０２を補完する情報である。
【００２０】
図９は、実施例３における、ＳＦＰ１０１のインストーラ・サービス３０４の処理を説明するためのフローチャートである。
Ｓ９０１では、インストーラ・サービス３０４が、インターフェース部２０５、ＬＡＮ１０４を介し、ＰＣ１０３から送信されたアプリケーション・ファイル８０１を、所定のサイズ分、読み込みＨＤＤ２０７の所定の位置に格納する。Ｓ９０２では、インストーラ・サービス３０４がアプリケーション・ファイル８０１全体の受信が完了したことを確認し、未完了であればＳ９０１に戻る。
Ｓ９０３では、インストーラ・サービス３０４が、ＨＤＤ２０７に格納したアプリケーション・ファイル８０１からタグ情報による、構成情報（メイン）８０２、およびＳＦＰ１０１用アプリケーション部８０３の検索を行う。Ｓ９０４では、インストーラ・サービス３０４が、構成情報（メイン）８０２を検知したかを判定し、検知された場合はＳ９０５に進み、そうでなければＳ９０６に進む。Ｓ９０５では、インストーラ・サービス３０４が、ＨＤＤ２０７に格納されたアプリケーション・ファイル８０１から、構成情報（メイン）８０２を抽出する。抽出後のデータはＨＤＤ２０７の所定の位置に格納される。
Ｓ９０６では、インストーラ・サービス３０４が、ＳＦＰ１０１用のアプリケーション・データ部８０３を検知したかを判定する。検知した場合はＳ９０７に進み、そうでなければＳ９１４に進む。Ｓ９１４では、Ｓ９０３のタグ検索が完了したかを判定し、検索完了と判定した場合はＳ９１３に進み、そうでなければＳ９０３に戻りタグ情報の検索を繰り返す。
Ｓ９０７では、インストーラ・サービス３０４が、ＳＦＰ１０１用アプリケーション部８０３から構成情報（サブ）を示すタグ、あるいはＳＦＰ１０１用アプリケーション部８０３の終端の検索を行う。Ｓ９０８では、インストーラ・サービス３０４が、例えば構成情報（サブ）として、構成情報（サブ１）８０４を検知したかを判定し、検知した場合はＳ９０９に進み、そうでなければＳ９１０に進む。Ｓ９０９では、インストーラ・サービス３０４が、ＳＦＰ１０１用アプリケーション部８０３から構成情報（サブ１）８０４を抽出する。抽出後のデータはＨＤＤ２０７の所定の位置に格納される。
Ｓ９１０では、インストーラ・サービス３０４が、ＳＦＰ１０１用アプリケーション部８０３の終端を検知したかを判定し、検知した場合はＳ９１１に進み、そうでなければＳ９０７に戻り、上記の処理を繰り返す。
Ｓ９１１では、インストーラ・サービス３０４が、Ｓ９０５、Ｓ９０９で抽出した構成情報から、ＳＦＰ１０１用アプリケーション部に適した構成情報を再構築する。Ｓ９１２では、インストーラ・サービス３０４が、Ｓ９０６〜Ｓ９１０によって抽出されたＳＦＰ１０１用アプリケーション部８０３の実プログラム部を抽出し、Ｓ９１１で再構築された構成情報と共にプログラムのインストール処理を実行する。Ｓ９１３は、Ｓ９０１，９０２によりＨＤＤ２０７の所定の位置に格納したアプリケーション・ファイル８０１、およびＳ９０５、９０９でＨＤＤ２０７の所定の位置に格納した構成情報８０２、８０４を削除する。そして、本処理を終了する。
【００２１】
なお、アプリケーション・ファイルが暗号化されていない場合は、実施例１、２に記載されるような、アプリケーション・ファイル全体を必ずしも読み込まずに、必要無い部分を読み捨てる処理を行うように切り替えることも可能である。
本実施例により、アプリケーション・ファイルが暗号化等により、受信しながら適合部分を抽出できない場合であっても、適合部分のみを抽出し最適なサイズのアプリケーションをインストールすることが可能となる。
【図１】
2012164124.tif 000003
【図２】
2012164124.tif 000004
【図３】
2012164124.tif 000005
【図４】
2012164124.tif 000006
【図５】
2012164124.tif 000007
【図６】
2012164124.tif 000008
【図７】
2012164124.tif 000009
【図８】
2012164124.tif 000010
【図９】
2012164124.tif 000011