(57)【特許請求の範囲】
【請求項１】
プログラムが対応する実行環境及び前記プログラムのインストール先の実行環境のうちの少なくとも一方の実行環境が複数あり、
前記プログラムが対応する実行環境のバージョンを示すバージョン情報を前記プログラムから取得し、
前記プログラムが対応する実行環境と前記プログラムのインストール先の実行環境とに基づいて前記プログラムのインストールの可否を判定し、前記インストールの可否の判定の結果に基づいて前記プログラムをインストールする第１の動作、
及び前記プログラムが対応する実行環境と前記プログラムのインストール先の実行環境とに基づいて前記プログラムの実行の可否を判定し、前記実行の可否の判定の結果に基づいて前記プログラムを実行する第２の動作、
のうちの少なくとも一方の動作を行う制御部を備え、
前記第１の動作は、前記バージョン情報が示すバージョンの少なくとも１つと実行環境のバージョンの少なくとも１つとが合致する場合に前記プログラムをインストールすることであり、
前記第２の動作は、前記バージョン情報が示すバージョンの少なくとも１つと実行環境のバージョンの少なくとも１つとが合致する場合に前記プログラムを実行することである、
画像形成装置。
【請求項２】
前記プログラムを対応する実行環境が複数あり、前記プログラムのインストール先の実行環境が複数ある、請求項１に記載の画像形成装置。
【請求項３】
プログラムのインストール先の実行環境が、前記プログラムが対応する実行環境でない場合、前記インストール先の実行環境に対応するように前記プログラムのコードを書き換えて、前記プログラムをインストールする第３の動作、
プログラムのインストール先の実行環境が、前記プログラムが対応する実行環境でない場合、前記インストール先の実行環境に対応するように前記プログラムのコードを書き換えて、前記プログラムを実行する第４の動作、
のうちの少なくとも一方の動作を行う制御部を備える画像形成装置。
【請求項４】
前記第３の動作は、インストール先の実行環境に対応するように前記プログラムを変更できなかった場合、前記プログラムをインストールせず、
前記第４の動作は、前記インストール先の実行環境に対応するように前記プログラムを変更することができなかった場合、前記プログラムを実行しない、請求項３に記載の画像形成装置。
【請求項５】
プログラムが対応する実行環境及び前記プログラムのインストール先の実行環境のうちの少なくとも一方の実行環境が複数あり、
前記プログラムが対応する実行環境のバージョンを示すバージョン情報を前記プログラムから取得し、
前記プログラムが対応する実行環境と前記プログラムのインストール先の実行環境とに基づいて前記プログラムのインストールの可否を判定し、前記インストールの可否の判定の結果に基づいて前記プログラムをインストールする第１の動作、
及び前記プログラムが対応する実行環境と前記プログラムのインストール先の実行環境とに基づいて前記プログラムの実行の可否を判定し、前記実行の可否の判定の結果に基づいて前記プログラムを実行する第２の動作、
のうちの少なくとも一方の動作を行い、
前記第１の動作は、前記バージョン情報が示すバージョンの少なくとも１つと実行環境のバージョンの少なくとも１つとが合致する場合に前記プログラムをインストールすることであり、
前記第２の動作は、前記バージョン情報が示すバージョンの少なくとも１つと実行環境のバージョンの少なくとも１つとが合致する場合に前記プログラムを実行することである、
画像形成装置の制御方法。
【請求項６】
プログラムのインストール先の実行環境が、前記プログラムが対応する実行環境でない場合、前記インストール先の実行環境に対応するように前記プログラムのコードを書き換えて、前記プログラムをインストールする第３の動作、
プログラムのインストール先の実行環境が、前記プログラムが対応する実行環境でない場合、前記インストール先の実行環境に対応するように前記プログラムのコードを書き換えて、前記プログラムを実行する第４の動作、
のうちの少なくとも一方の動作を行う、画像形成装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、画像形成装置及び画像形成装置の制御方法に関する。
【背景技術】
【０００２】
ＭＦＰ（multifunction peripheral）などの画像形成装置では、アプリケーションソフトウェアを実行するための実行環境などのバージョンアップが行われる場合がある。また、画像形成装置は、機種又は出荷時期の違いなどによって実行環境のバージョンが異なる場合がある。なお、実行環境は、後方互換性を持たないバージョンアップが行われることなどがある。このため、このような画像形成装置では、実行環境のバージョン間での互換性が得られず、インストールされたアプリケーションソフトウェアなどを実行できなかったり、実行しても意図しない挙動をしたりする場合などがある。例として、プログラミング言語において後方互換性を持たないバージョンアップが行われることでこのようなことが起こる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−２２９２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の実施形態が解決しようとする課題は、他の実行環境との互換性を持たない実行環境が存在する場合でもプログラムを正常に動作させる画像形成装置及び画像形成装置の制御方法を提供することである。
【課題を解決するための手段】
【０００５】
実施形態の画像形成装置は、プログラムが対応する実行環境及び前記プログラムのインストール先の実行環境のうちの少なくとも一方の実行環境が複数ある。実施形態の画像形成装置は、前記プログラムが対応する実行環境のバージョンを示すバージョン情報を前記プログラムから取得し、第１の動作及び第２の動作のうち少なくとも一方の動作を行う制御部を備える。第１の動作は、前記プログラムが対応する実行環境と前記プログラムのインストール先の実行環境とに基づいて前記プログラムのインストールの可否を判定し、前記インストールの可否の判定の結果に基づいて前記プログラムをインストールする。第２の動作は、前記プログラムが対応する実行環境と前記プログラムのインストール先の実行環境とに基づいて前記プログラムの実行の可否を判定し、前記実行の可否の判定の結果に基づいて前記プログラムを実行する。前記第１の動作は、前記バージョン情報が示すバージョンの少なくとも１つと実行環境のバージョンの少なくとも１つとが合致する場合に前記プログラムをインストールすることである。前記第２の動作は、前記バージョン情報が示すバージョンの少なくとも１つと実行環境のバージョンの少なくとも１つとが合致する場合に前記プログラムを実行することである。
【図面の簡単な説明】
【０００６】
【図１】第１実施形態〜第５実施形態に係る画像形成装置の要部回路構成を示すブロック図。
【図２】図１中のプロセッサーによる第１実施形態〜第３実施形態に係る制御処理のフローチャート。
【図３】図１中のプロセッサーによる第４実施形態に係る制御処理のフローチャート。
【図４】図１中のプロセッサーによる第５実施形態に係る制御処理のフローチャート。
【図５】第６実施形態に係る画像形成システム及び当該画像形成システムに含まれる画像形成装置の要部回路構成を示すブロック図。
【図６】図６中のプロセッサーによる第６実施形態に係る制御処理のフローチャート。
【発明を実施するための形態】
【０００７】
以下、いくつかの実施形態に係る画像形成装置について図面を用いて説明する。
〔第１実施形態〕
図１は、第１実施形態に係る画像形成装置１０の要部回路構成を示すブロック図である。画像形成装置１０は、紙又は樹脂製のシート状の記録媒体などに画像を形成することで印刷を行う機能を有する。また、画像形成装置１０は、シート状の記録媒体などに形成された画像を読み取ることでスキャンを行う機能を有する。また、画像形成装置１０は、シート状の記録媒体などに形成された画像を読み取って、別のシート状の記録媒体に当該画像を印刷することでコピーを行う機能を有する。その他、画像形成装置１０は、様々な機能を備える。画像形成装置１０は、一例として、ＭＦＰである。画像形成装置１０は、プロセッサー１１、ＲＯＭ（read-only memory）１２、ＲＡＭ（random-access memory）１３、補助記憶デバイス１４、通信インターフェース１５、タッチパネル１６、画像形成部１７、画像読取部１８及びバス１９を含む。
【０００８】
プロセッサー１１は、画像形成装置１０の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。当該コンピューターは、制御部の一例である。プロセッサー１１は、ＲＯＭ１２又は補助記憶デバイス１４などに記憶されたシステムソフトウェア、アプリケーションソフトウェア又はファームウェアなどのプログラムに基づいて、画像形成装置１０の各種の機能を実現するべく各部を制御する。プロセッサー１１は、例えば、ＣＰＵ（central processing unit）、ＭＰＵ（micro processing unit）、ＳｏＣ（system on a chip）、ＤＳＰ（digital signal processor）又はＧＰＵ（graphics processing unit）などである。あるいは、プロセッサー１１は、これらの組み合わせである。プロセッサー１１は、制御部の一例である。
【０００９】
ＲＯＭ１２は、プロセッサー１１を中枢とするコンピューターの主記憶部分に相当する。ＲＯＭ１２は、専らデータの読み出しに用いられる不揮発性メモリである。ＲＯＭ１２は、上記のプログラムの他、プロセッサー１１が各種の処理を行う上で使用するデータ又は各種の設定値などを記憶する。
【００１０】
ＲＡＭ１３は、プロセッサー１１を中枢とするコンピューターの主記憶部分に相当する。ＲＡＭ１３は、データの読み書きに用いられるメモリである。ＲＡＭ１３は、プロセッサー１１が各種の処理を行う上で一時的に使用するデータを記憶しておく、いわゆるワークエリアなどとして利用される。
【００１１】
補助記憶デバイス１４は、プロセッサー１１を中枢とするコンピューターの補助記憶部分に相当する。補助記憶デバイス１４は、例えばＥＥＰＲＯＭ（electric erasable programmable read-only memory）、ＨＤＤ（hard disk drive）又はＳＳＤ（solid state drive）などである。補助記憶デバイス１４は、上記のプログラムの他、プロセッサー１１が各種の処理を行う上で使用するデータ、プロセッサー１１での処理によって生成されたデータ又は各種の設定値などを保存する。なお、画像形成装置１０は、補助記憶デバイス１４に代えて、あるいは補助記憶デバイス１４に加えて、メモリカード又はＵＳＢ（Universal Serial Bus）メモリなどの記憶媒体を挿入可能なカードスロットなどのインターフェースを備えていてもよい。
【００１２】
ＲＯＭ１２又は補助記憶デバイス１４などに記憶されるプログラムは、後述する制御処理に関して記述した制御プログラムを含む。一例として、画像形成装置１０は、制御プログラムがＲＯＭ１２又は補助記憶デバイス１４に記憶された状態で画像形成装置１０の管理者などへと譲渡される。しかしながら、画像形成装置１０は、後述する制御処理に関して記述した制御プログラムがＲＯＭ１２又は補助記憶デバイス１４に記憶されない状態で当該管理者などに譲渡されても良い。また、画像形成装置１０は、別の制御プログラムがＲＯＭ１２又は補助記憶デバイス１４に記憶された状態で当該管理者などに譲渡されても良い。そして、後述する制御処理に関して記述した制御プログラムが別途に当該管理者などへと譲渡され、当該管理者又はサービスマンなどによる操作の下にＲＯＭ１２又は補助記憶デバイス１４へと書き込まれても良い。このときの制御プログラムの譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記録媒体に記録して、あるいはネットワークを介したダウンロードにより実現できる。
【００１３】
また、補助記憶デバイス１４などに記憶されるプログラムは、画像形成装置１０の機能などを追加するアプリケーションソフトウェア（以下「内蔵アプリケーション」という。）を含む。一例として、画像形成装置１０は、内蔵アプリケーションがＲＯＭ１２又は補助記憶デバイス１４に記憶されない状態で画像形成装置１０の管理者などへと譲渡される。そして、別途に当該管理者などへと譲渡される内蔵アプリケーションが、当該管理者又はサービスマンなどによる操作の下に補助記憶デバイス１４などへと書き込まれる。しかしながら、画像形成装置１０は、内蔵アプリケーションがＲＯＭ１２又は補助記憶デバイス１４に記憶された状態で当該管理者などへと譲渡されても良い。内蔵アプリケーションの譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記録媒体に記録して、あるいはネットワークを介したダウンロードにより実現できる。
内蔵アプリケーションは、画像形成装置１０にインストールされた実行環境上で動作する。画像形成装置１０にインストールされた内蔵アプリケーションは、対応する実行環境のバージョンを示すバージョン情報が含まれる。
【００１４】
画像形成装置１０には、内蔵アプリケーションを実行するための実行環境がインストールされる。実行環境は、例えば、内蔵アプリケーションを実行するための、特定のプログラミング言語で記述されたプログラムを実行するためのランタイムなどを含む。インストールされた当該実行環境は、ＲＯＭ１２又は補助記憶デバイス１４に記憶される。ＲＯＭ１２又は補助記憶デバイス１４は、インストールされた実行環境のバージョンも記憶する。
一例として、画像形成装置１０は、特定の実行環境がインストールされた状態で画像形成装置１０の管理者などへと譲渡される。画像形成装置１０は、当該特定の実行環境とは別のバージョンの実行環境が当該管理者などへと譲渡され、当該管理者又はサービスマンなどによる操作の下に当該別のバージョンの実行環境へのバージョンアップ又は上書きインストールが行われても良い。このときの実行環境の譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記録媒体に記録して、あるいはネットワークを介したダウンロードにより実現できる。
【００１５】
通信インターフェース１５は、画像形成装置１０がネットワーク又は通信ケーブルなどを介して他の機器などと通信するためのインターフェースである。
タッチパネル１６は、画像形成装置１０の操作者に各種情報を通知するための画面を表示する表示デバイスとして機能する。また、タッチパネル１６は、当該操作者によるタッチ操作を受け付ける入力デバイスとして機能する。
【００１６】
画像形成部１７は、紙又は樹脂等のシート状の記録媒体などに画像などを形成する。このために、画像形成部１７は、例えば、レーザープリンター又はインクジェットプリンターなどのプリンターを備える。
【００１７】
画像読取部１８は、紙等のシート状の記録媒体などから画像を読み取る。このために、画像読取部１８は、スキャナーなどを備える。当該スキャナーは、例えば、ＣＣＤ（charge-coupled device）イメージセンサーなどの撮像素子を備える光学縮小方式である。あるいは例えば、当該スキャナーは、ＣＭＯＳ（complementary metal-oxide-semiconductor）イメージセンサーなどの撮像素子を備える密着センサー（ＣＩＳ（contact image sensor））方式である。あるいは、当該スキャナーは、その他の公知の方式であっても良い。
【００１８】
バス１９は、コントロールバス、アドレスバス及びデータバスなどを含み、画像形成装置１０の各部で授受される信号を伝送する。
【００１９】
以下、第１実施形態に係る画像形成装置１０の動作を図２に基づいて説明する。なお、以下の動作説明における処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。図２は、画像形成装置１０のプロセッサー１１による制御処理のフローチャートである。プロセッサー１１は、ＲＯＭ１２又は補助記憶デバイス１４などに記憶された制御プログラムに基づいてこの制御処理を実行する。
【００２０】
図２のＡｃｔ１において画像形成装置１０のプロセッサー１１は、内蔵アプリケーションをインストールするように指示する操作が行われたか否かを判定する。プロセッサー１１は、内蔵アプリケーションをインストールするように指示する操作が行われないならば、Ａｃｔ１においてＮｏと判定してＡｃｔ２へと進む。
【００２１】
Ａｃｔ２においてプロセッサー１１は、インストール済みの内蔵アプリケーションを実行するように指示する操作が行われたか否かを判定する。プロセッサー１１は、内蔵アプリケーションを実行するように指示する操作が行われないならば、Ａｃｔ２においてＮｏと判定してＡｃｔ３へと進む。かくして、プロセッサー１１は、内蔵アプリケーションをインストールするように指示する操作が行われるか、内蔵アプリケーションを実行するように指示する操作が行われるまでＡｃｔ１及びＡｃｔ２を繰り返す。
【００２２】
画像形成装置１０の管理者又はサービスマンなどは、画像形成装置１０に内蔵アプリケーションをインストールしたい場合、例えば、画像形成装置１０が当該内蔵アプリケーションのインストールに必要なインストールパッケージなどにアクセスできるようにする。なお、画像形成装置１０の管理者又はサービスマンなどは、画像形成装置１０の操作者の例である。画像形成装置１０がインストールパッケージなどにアクセスできるようにするために、サービスマンなどは、例えば、当該インストールパッケージなどを記憶しているＵＳＢメモリなどを画像形成装置１０に接続する。あるいは例えば、サービスマンなどは、当該インストールパッケージなどを記憶しているＰＣ（personal computer）などを、例えば、通信インターフェース１５及びネットワークを介して画像形成装置１０に接続する。そして、サービスマンなどは、タッチパネル１６を操作するなどして、当該内蔵アプリケーションをインストールするよう画像形成装置１０に指示する。この指示には、例えば、インストールパッケージなどの場所を示す情報が含まれる。
なお、上記のインストールパッケージは、当該インストールパッケージでインストールされる内蔵アプリケーションが対応する実行環境のバージョンを示すバージョン情報を含む。
プロセッサー１１は、Ａｃｔ１及びＡｃｔ２の待受状態にあるときに内蔵アプリケーションをインストールするように指示する操作が行われたならば、Ａｃｔ１においてＹｅｓと判定してＡｃｔ３へと進む。
Ａｃｔ３においてプロセッサー１１は、インストールパッケージを展開する。当該インストールパッケージは、例えば、Ａｃｔ１の処理において受けた指示に含まれる情報で示された場所にあるものである。プロセッサー１１は、Ａｃｔ３の処理の後、Ａｃｔ４へと進む。
【００２３】
Ａｃｔ４においてプロセッサー１１は、Ａｃｔ３で展開したインストールパッケージからバージョン情報を取得する。プロセッサー１１は、Ａｃｔ４の処理の後、Ａｃｔ５へと進む。
【００２４】
Ａｃｔ５においてプロセッサー１１は、Ａｃｔ４で取得したバージョン情報が示すバージョンと、画像形成装置１０にインストールされた実行環境のバージョンとが合致するか否かを判定する。プロセッサー１１は、バージョンが合致しないならば、Ａｃｔ５においてＮｏと判定してＡｃｔ６へと進む。
【００２５】
Ａｃｔ６においてプロセッサー１１は、Ａｃｔ３でインストールパッケージを展開した内蔵アプリケーションのインストールを中止する。プロセッサー１１は、Ａｃｔ６の処理の後、Ａｃｔ１へと戻る。
【００２６】
対して、プロセッサー１１は、Ａｃｔ５においてバージョンが合致したならば、Ｎｏと判定してＡｃｔ７へと進む。
Ａｃｔ７においてプロセッサー１１は、Ａｃｔ３でインストールパッケージを展開した内蔵アプリケーションをインストールする。プロセッサー１１は、Ａｃｔ７の処理の後、Ａｃｔ１へと戻る。
以上より、Ａｃｔ５の処理は、プログラムが対応する実行環境と当該プログラムのインストール先の実行環境とに基づいて当該プログラムのインストールの可否を判定する処理である。そして、Ａｃｔ７の処理は、当該インストールの可否の判定の結果に基づいて当該プログラムをインストールする処理である。したがって、Ａｃｔ５及びＡｃｔ７の処理は、第１の動作の一例である。
【００２７】
画像形成装置１０の利用者は、画像形成装置１０にインストールされた内蔵アプリケーションを使用したい場合、タッチパネル１６などを操作して、当該内蔵アプリケーションを実行するよう画像形成装置１０に指示する。
プロセッサー１１は、Ａｃｔ１及びＡｃｔ２の待受状態にあるときに内蔵アプリケーションを実行するように指示する操作が行われたならば、Ａｃｔ２においてＹｅｓと判定してＡｃｔ８へと進む。
【００２８】
Ａｃｔ８においてプロセッサー１１は、Ａｃｔ２の処理において実行するように指示された内蔵アプリケーションから、当該内蔵アプリケーションが対応する実行環境のバージョンを示すバージョン情報を取得する。プロセッサー１１は、Ａｃｔ８の処理の後、Ａｃｔ９へと進む。
【００２９】
Ａｃｔ９においてプロセッサー１１は、Ａｃｔ８で取得したバージョン情報が示すバージョンと、画像形成装置１０にインストールされた実行環境のバージョンとが合致するか否かを判定する。プロセッサー１１は、バージョンが合致しないならば、Ａｃｔ９においてＮｏと判定してＡｃｔ１０へと進む。
【００３０】
Ａｃｔ１０においてプロセッサー１１は、Ａｃｔ２の処理において実行するように指示された内蔵アプリケーションの実行を中止する。また、プロセッサー１１は、内蔵アプリケーションを起動できない旨、及び内蔵アプリケーションを更新するように促す旨を示す画像を表示するようにタッチパネル１６に指示する。この指示を受けて、タッチパネル１６は、当該画像を表示する。Ａｃｔ１０の処理の後、Ａｃｔ１へと戻る。
【００３１】
対して、プロセッサー１１は、Ａｃｔ９においてバージョンが合致したならば、Ｎｏと判定してＡｃｔ１１へと進む。
Ａｃｔ１１においてプロセッサー１１は、Ａｃｔ２の処理において実行するように指示された内蔵アプリケーションを実行する。プロセッサー１１は、Ａｃｔ１１の処理の後、Ａｃｔ１へと戻る。
以上より、Ａｃｔ９の処理は、プログラムが対応する実行環境と当該プログラムのインストール先の実行環境とに基づいて当該プログラムの実行の可否を判定する処理である。そして、Ａｃｔ１１の処理は、当該実行の可否の判定の結果に基づいて当該プログラムを実行する処理である。したがって、Ａｃｔ９及びＡｃｔ１１の処理は、第２の動作の一例である。
【００３２】
第１実施形態の画像形成装置１０は、インストールしようとする内蔵アプリケーションが対応する実行環境が、画像形成装置１０にインストールされていない場合、当該内蔵アプリケーションをインストールしない。対応する実行環境がインストールされていない画像形成装置１０で内蔵アプリケーションを実行した場合、当該内蔵アプリケーションは、意図しない動作をする可能性が、対応する実行環境がインストールされている場合に比べて高いと言える。したがって、画像形成装置１０は、意図しない動作をする可能性が高い内蔵アプリケーションをインストールさせないことにより、内蔵アプリケーションの意図しない動作を防ぐことができる。
また、第１実施形態の画像形成装置１０は、インストール済みの内蔵アプリケーションが対応する実行環境が画像形成装置１０にインストールされていない場合、当該内蔵アプリケーションを実行しない。したがって、画像形成装置１０は、内蔵アプリケーションの意図しない動作を防ぐことができる。また、画像形成装置１０は、画像形成装置１０にインストールされた実行環境のバージョンがバージョンアップなどによって変更される場合がある。この場合において、バージョンアップ前には実行環境が対応していた内蔵アプリケーションが新たなバージョンの実行環境に対応しなくなることがある。この場合にも、画像形成装置１０は、当該内蔵アプリケーションを実行しない。したがって、画像形成装置１０は、インストール済みの内蔵アプリケーションの意図しない動作を防ぐことができる。画像形成装置１０は、内蔵アプリケーションのインストール及びバージョンアップなどを、サービスマンなどの手によって行う場合が多い。したがって、正常な動作をする保証が無い内蔵アプリケーションを動作させないことは、サービスマンに係るコストなどの観点から有用である。
【００３３】
〔第２実施形態〕
以下、第２実施形態に係る画像形成装置１０について説明する。第２実施形態に係る画像形成装置１０は、第１実施形態に係る画像形成装置１０と同様の構成なので、構成の説明を省略する。
第２実施形態に係る画像形成装置１０の動作を第１実施形態と同様に図２に基づいて説明する。ただし、第１実施形態と同様の処理などについては、説明を省略する場合がある。
第２実施形態では、内蔵アプリケーションは、複数のバージョンの実行環境に対応する。複数のバージョンの実行環境に対応するため、当該内蔵アプリケーションのインストールパッケージなどに含まれるバージョン情報は、複数のバージョンを示す。
【００３４】
第２実施形態では、Ａｃｔ５においてプロセッサー１１は、Ａｃｔ４で取得したバージョン情報が示す複数のバージョンのうちのいずれかが、画像形成装置１０にインストールされた実行環境のバージョンと合致するか否かを確認する。
【００３５】
第２実施形態では、Ａｃｔ７においてプロセッサー１１は、Ａｃｔ５で合致したバージョンに対応するように内蔵アプリケーションをインストールする。このときインストールされる内蔵アプリケーションは、使用されている関数などによっては、当該選択されたバージョンの実行環境だけでなく、他のバージョンの実行環境にも対応する場合がある。したがって、インストールされた内蔵アプリケーションに含まれるバージョン情報は、当該選択されたバージョンを含む１又は複数のバージョンを示す。
【００３６】
第２実施形態では、Ａｃｔ９においてプロセッサー１１は、Ａｃｔ８で取得した実行環境のバージョンが示す複数のバージョンのうちのいずれかと、画像形成装置１０にインストールされた実行環境のバージョンとが合致するか否かを判定する。
【００３７】
第２実施形態の画像形成装置１０は、第１実施形態の画像形成装置１０と同様の効果が得られる。
画像形成装置１０は、出荷時期又はバージョンアップの実施の有無などに応じて、インストールされている実行環境のバージョンは様々である。したがって、従来は、サービスマンなどは、画像形成装置１０に内蔵アプリケーションをインストールさせたい場合、様々なバージョンに合わせた複数の内蔵アプリケーションを用意する必要があった。第２実施形態の画像形成装置１０は、複数のバージョンの実行環境に対応する内蔵アプリケーションを、画像形成装置１０にインストールされた実行環境のバージョンに合わせてインストールする。したがって、画像形成装置１０は、他の実行環境との互換性を持たない実行環境のバージョンが存在する場合でも内蔵アプリケーションを正常に動作させることができる。このため、サービスマンなどは、画像形成装置１０に内蔵アプリケーションをインストールさせたい場合に、様々なバージョンの実行環境に合わせた複数の内蔵アプリケーションを用意する必要がない。
【００３８】
〔第３実施形態〕
以下、第３実施形態に係る画像形成装置１０について説明する。第３実施形態に係る画像形成装置１０は、第１実施形態に係る画像形成装置１０と同様の構成なので、構成の説明を省略する。
第３実施形態に係る画像形成装置１０の動作を第１実施形態と同様に図２に基づいて説明する。ただし、第１実施形態と同様の処理などについては、説明を省略する場合がある。
第３実施形態では、第２実施形態と同様に、内蔵アプリケーションは、複数のバージョンの実行環境に対応する。
【００３９】
第３実施形態では、Ａｃｔ５においてプロセッサー１１は、Ａｃｔ４で取得したバージョン情報が示す複数のバージョンのうちのいずれかが、画像形成装置１０にインストールされた実行環境のバージョンと合致するか否かを確認する。
【００４０】
第３実施形態では、Ａｃｔ７においてプロセッサー１１は、Ａｃｔ５で合致したバージョンに対応するように内蔵アプリケーションをインストールする。このとき、プロセッサー１１は、画像形成装置１０にインストールされたバージョンの実行環境だけでなく、他のバージョンの実行環境でも動作するように内蔵アプリケーションをインストールする。したがって、インストールされた内蔵アプリケーションに含まれるバージョン情報は、複数のバージョンを示す。なお、内蔵アプリケーションは、複数のバージョンに対応するため、実行環境のバージョンに応じて異なる動作をする場合がある。
【００４１】
第３実施形態では、Ａｃｔ９においてプロセッサー１１は、Ａｃｔ８で取得した実行環境のバージョンが示す複数のバージョンのうちのいずれかと、画像形成装置１０にインストールされた実行環境のバージョンとが合致するか否かを判定する。
【００４２】
第３実施形態では、Ａｃｔ１１においてプロセッサー１１は、画像形成装置１０にインストールされた実行環境のバージョンに対応するように内蔵アプリケーションを実行する。
【００４３】
第３実施形態の画像形成装置１０は、第１実施形態の画像形成装置１０と同様の効果が得られる。
また、第３実施形態の画像形成装置１０は、複数のバージョンの実行環境に対応する内蔵アプリケーションをインストールする。そして、画像形成装置１０は、当該内蔵アプリケーションを、画像形成装置１０にインストールされた実行環境のバージョンに合わせて実行する。したがって、第３実施形態の画像形成装置１０は、第２実施形態の画像形成装置１０と同様の効果が得られる。また、インストールされた内蔵アプリケーションは、実行環境のバージョンに応じて異なる動作を行うことで複数のバージョンの実行環境に対応している。したがって、当該内蔵アプリケーションは、実行環境のバージョンに応じた異なる動作を行わない内蔵アプリケーションに比べて、画像形成装置１０の実行環境のバージョンがバージョンアップなどによって変化した場合でも正常に動作する可能性が高い。
【００４４】
〔第４実施形態〕
以下、第４実施形態に係る画像形成装置１０について説明する。第４実施形態に係る画像形成装置１０は、第１実施形態〜第３実施形態に係る画像形成装置１０と同様の構成なので、構成の説明を省略する。
ただし、第４実施形態の画像形成装置１０は、複数のバージョンの実行環境がインストールされている。また、第４実施形態の画像形成装置１０は、図２に示す制御処理に代えて図３に示す制御処理に係るプログラムを記憶する。
以下、第４実施形態に係る画像形成装置１０の動作を図３に基づいて説明する。なお、以下の動作説明における処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。図３は、画像形成装置１０のプロセッサー１１による制御処理のフローチャートである。プロセッサー１１は、ＲＯＭ１２又は補助記憶デバイス１４などに記憶された制御プログラムに基づいてこの制御処理を実行する。なお、図３において図２と同様の処理については、同一の符号を付している。また、第１実施形態〜第３実施形態と同様の処理などについては、説明を省略する場合がある。
第４実施形態では、内蔵アプリケーションは、１又は複数のバージョンの実行環境に対応する。
【００４５】
Ａｃｔ２１においてプロセッサー１１は、Ａｃｔ４で取得したバージョン情報が示すいずれかのバージョンと、画像形成装置１０にインストールされた複数の実行環境のうちのいずれかのバージョンとが合致するか否かを判定する。プロセッサー１１は、バージョンが合致しないならば、Ａｃｔ２１においてＮｏと判定してＡｃｔ６へと進む。対して、プロセッサー１１は、バージョンが合致するならば、Ａｃｔ２１においてＹｅｓと判定してＡｃｔ２２へと進む。
【００４６】
Ａｃｔ２２においてプロセッサー１１は、Ａｃｔ５で合致したバージョンの実行環境ののうちの１つを、インストールする内蔵アプリケーションを動作させる実行環境として選択する。なお、合致したバージョンが複数ある場合には、プロセッサー１１は、その中から優先度の最も高いバージョンの実行環境を選択する。優先度は、例えば最新のバージョンほど高い。あるいは例えば、優先度は、安定して動作するバージョンほど高い。あるいは例えば、優先度は、画像形成装置１０の管理者などが設定することが可能であっても良い。プロセッサー１１は、Ａｃｔ２２の処理の後、Ａｃｔ２３へと進む。
【００４７】
Ａｃｔ２３においてプロセッサー１１は、Ａｃｔ２２で選択したバージョンの実行環境で動作するように内蔵アプリケーションをインストールする。インストールされた内蔵アプリケーションに含まれるバージョン情報は、１又は複数のバージョンを示す。プロセッサー１１は、Ａｃｔ２３の処理の後、Ａｃｔ１へと戻る。
以上より、Ａｃｔ２１〜Ａｃｔ２３の処理は、第１の動作の一例である。
【００４８】
Ａｃｔ２４においてプロセッサー１１は、Ａｃｔ８で取得したバージョン情報が示すいずれかのバージョンと、画像形成装置１０にインストールされた複数の実行環境のうちのいずれかのバージョンとが合致するか否かを判定する。プロセッサー１１は、バージョンが合致しないならば、Ａｃｔ２４においてＮｏと判定してＡｃｔ１０へと進む。対して、プロセッサー１１は、バージョンが合致するならば、Ａｃｔ２４においてＹｅｓと判定してＡｃｔ２５へと進む。
【００４９】
Ａｃｔ２５においてプロセッサー１１は、Ａｃｔ９で合致したバージョンの実行環境のうちの１つを選択する。このとき選択するバージョンは、実行しようとしている内蔵アプリケーションのインストール時に選択したバージョンと同一であることが好ましい。あるいは例えば、プロセッサー１１は、Ａｃｔ９で合致したバージョンのうち最も優先殿他界バージョンの実行環境を選択する。プロセッサー１１は、Ａｃｔ２５の処理の後、Ａｃｔ２６へと進む。
【００５０】
Ａｃｔ２６においてプロセッサー１１は、Ａｃｔ２５で選択したバージョンの実行環境を実行する。そして、プロセッサー１１は、当該実行環境上で内蔵アプリケーションを実行する。プロセッサー１１は、Ａｃｔ２６の処理の後、Ａｃｔ１へと戻る。
以上より、Ａｃｔ２４〜Ａｃｔ２６の処理は、第２の動作の一例である。
【００５１】
第４実施形態の画像形成装置１０は、第１実施形態の画像形成装置１０と同様の効果が得られる。
第４実施形態の画像形成装置１０は、複数のバージョンの実行環境を実装している。そして、画像形成装置１０は、内蔵アプリケーションが対応しているバージョンに応じて当該内蔵アプリケーションを動作させる実行環境を変える。したがって、画像形成装置１０は、画像形成装置１０に実装されたうちのいずれかのバージョンに対応する内蔵アプリケーションであれば、正常に動作させることができる。
【００５２】
以上の実施形態より、内蔵アプリケーションが複数のバージョンの実行環境に対応しているか、画像形成装置１０に複数の実行環境がインストールされていれば、実施形態の画像形成装置１０は、以下の効果が得られる。すなわち、画像形成装置１０は、他の実行環境との互換性を持たない実行環境のバージョンが存在する場合でも内蔵アプリケーションを正常に動作させることができる。また、これにより、サービスマンなどは、画像形成装置１０に内蔵アプリケーションをインストールさせたい場合に、様々なバージョンに合わせた複数の内蔵アプリケーションを用意する必要がない。
【００５３】
〔第５実施形態〕
以下、第５実施形態に係る画像形成装置１０について説明する。第５実施形態に係る画像形成装置１０は、第１実施形態〜第４実施形態に係る画像形成装置１０と同様の構成なので、構成の説明を省略する。
第５実施形態の画像形成装置１０は、第４実施形態のように複数のバージョンの実行環境がインストールされていても良いし、第１実施形態〜第３実施形態のように１つのバージョンの実行環境がインストールされていても良い。第５実施形態の画像形成装置１０は、図２又は図３に示す制御処理に代えて図４に示す制御処理に係るプログラムを記憶する。
以下、第５実施形態に係る画像形成装置１０の動作を図４に基づいて説明する。なお、以下の動作説明における処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。図４は、画像形成装置１０のプロセッサー１１による制御処理のフローチャートである。プロセッサー１１は、ＲＯＭ１２又は補助記憶デバイス１４などに記憶された制御プログラムに基づいてこの制御処理を実行する。
第５実施形態では、内蔵アプリケーションは、１又は複数のバージョンの実行環境に対応する。
【００５４】
第５実施形態では、プロセッサー１１は、Ａｃｔ２１でＮｏと判定したならば、Ａｃｔ３１へと進む。
【００５５】
Ａｃｔ３１においてプロセッサー１１は、インストールしようとしている内蔵アプリケーションのコードを変換して、当該内蔵アプリケーションを、画像形成装置１０にインストールされた実行環境のうちのいずれかのバージョンで動作可能にすることを試みる。プロセッサー１１は、画像形成装置１０にインストールされた実行環境が複数ある場合、例えば、その中で最も優先度の高いバージョンの実行環境で動作するようにコードの変換を試みる。プロセッサー１１は、Ａｃｔ３１の処理の後、Ａｃｔ３２へと進む。
プロセッサー１１は、コードの変換を、例えば、以下のようにする。すなわち、プロセッサー１１は、実行環境に含まれるランタイムに係るプログラム言語において関数の仕様が変更されており、且つ内蔵アプリケーションのコードに当該関数が使われている場合、当該関数を当該仕様変更に応じたものに書き換える。
【００５６】
Ａｃｔ３２においてプロセッサー１１は、Ａｃｔ３１の処理によって所望のバージョンの実行環境で動作可能なように内蔵アプリケーションのコードを変換することに成功したか否かを判定する。プロセッサー１１は、内蔵アプリケーションのコードを変換することに成功しなかったならば、Ａｃｔ３２においてＮｏと判定してＡｃｔ６へと進む。対して、プロセッサー１１は、内蔵アプリケーションのコードを変換することに成功したならば、Ａｃｔ３２においてＹｅｓと判定してＡｃｔ３３へと進む。
【００５７】
Ａｃｔ３３においてプロセッサー１１は、Ａｃｔ３１の処理でコードが変換された内蔵アプリケーションをインストールする。当該内蔵アプリケーションに含まれるバージョン情報は、コードの変換によって動作可能となった動作環境のバージョンを示す。プロセッサー１１は、Ａｃｔ３３の処理の後、Ａｃｔ１へと戻る。
以上より、Ａｃｔ３１〜Ａｃｔ３３の処理は、プログラムのインストール先の実行環境が、当該プログラムが対応する実行環境でない場合、当該インストール先の実行環境に対応するように当該プログラムを変更して、当該プログラムをインストールする第３の動作の一例である。
【００５８】
Ａｃｔ３４においてプロセッサー１１は、実行しようとしている内蔵アプリケーションのコードを変換して、当該アプリケーションを、画像形成装置１０にインストールされた実行環境のうちのいずれかのバージョンで動作可能にすることを試みる。プロセッサー１１は、画像形成装置１０にインストールされた実行環境が複数ある場合、例えば、その中で最も優先度の高いバージョンの実行環境で動作するようにコードの変換を試みる。プロセッサー１１は、Ａｃｔ３４の処理の後、Ａｃｔ３５へと進む。
【００５９】
Ａｃｔ３５においてプロセッサー１１は、Ａｃｔ３１の処理によって所望のバージョンの実行環境で動作可能なように内蔵アプリケーションのコードを変換することに成功したか否かを判定する。プロセッサー１１は、内蔵アプリケーションのコードを変換することに成功しなかったならば、Ａｃｔ３５においてＮｏと判定してＡｃｔ１０へと進む。対して、プロセッサー１１は、内蔵アプリケーションのコードを変換することに成功したならば、Ａｃｔ３５においてＹｅｓと判定してＡｃｔ３６へと進む。
【００６０】
Ａｃｔ３６においてプロセッサー１１は、Ａｃｔ３１でコードを変換した内蔵アプリケーションに含まれるバージョン情報を更新して、コードの変換によって動作可能となった動作環境のバージョンを示すようにする。プロセッサー１１は、Ａｃｔ３６の処理の後、Ａｃｔ３７へと進む。
以上より、Ａｃｔ３４〜Ａｃｔ３６の処理は、プログラムのインストール先の実行環境が、当該プログラムが対応する実行環境でない場合、当該インストール先の実行環境に対応するように当該プログラムを変更して、当該プログラムを実行する第４の動作の一例である。
【００６１】
Ａｃｔ３７においてプロセッサー１１は、Ａｃｔ３６で更新されたバージョン情報で示されるバージョンの実行環境を実行する。プロセッサー１１は、当該実行環境上で内蔵アプリケーションを実行する。プロセッサー１１は、Ａｃｔ３７の処理の後、Ａｃｔ１へと戻る。
【００６２】
第５実施形態の画像形成装置１０は、内蔵アプリケーションが、画像形成装置１０にインストールされているバージョンの実行環境に対応していない場合、当該内蔵アプリケーションのコードを変換して、当該実行環境に対応させる。したがって、画像形成装置１０は、実装している実行環境に対応していない内蔵アプリケーションであっても、コード変換によって当該実行環境に対応させることができる。これにより、画像形成装置１０は、他の実行環境との互換性を持たない実行環境のバージョンが存在する場合でも内蔵アプリケーションを正常に動作させることができる。
【００６３】
〔第６実施形態〕
以下、第６実施形態に係る画像形成装置１０について説明する。
図５は、画像形成システム１及び画像形成システムに含まれる画像形成装置１０の要部回路構成を示すブロック図である。画像形成システム１は、画像形成装置１０及びサーバー２０を含む。画像形成装置１０及びサーバー２０は、ネットワークＮＷに接続されている。ネットワークＮＷは、典型的にはインターネットを含む通信網である。ネットワークＮＷは、イントラネットなどのプライベートネットワークを含む通信網であってもよい。
第６実施形態に係る画像形成装置１０は、第１実施形態〜第５実施形態に係る画像形成装置１０と同様の構成なので、構成の説明を省略する。
サーバー２０は、複数の内蔵アプリケーションを、それぞれ複数のバージョン記憶している。サーバー２０は、当該内蔵アプリケーションを画像形成装置１０に送信する機能を有する。
【００６４】
以下、第６実施形態に係る画像形成装置１０の動作を図６に基づいて説明する。なお、以下の動作説明における処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。図６は、画像形成装置１０のプロセッサー１１による制御処理のフローチャートである。プロセッサー１１は、ＲＯＭ１２又は補助記憶デバイス１４などに記憶された制御プログラムに基づいてこの制御処理を実行する。
プロセッサー１１は、実行環境を含むシステムソフトウェアのアップデートを行う場合、図６に示す制御処理を開始する。
【００６５】
図６のＡｃｔ４１においてプロセッサー１１は、システムソフトウェアのアップデートを行う。プロセッサー１１は、Ａｃｔ４１の処理の後、Ａｃｔ４２へと進む。
Ａｃｔ４２においてプロセッサー１１は、インストール済みの内蔵アプリケーションを列挙する。プロセッサー１１は、Ａｃｔ４２の処理の後、Ａｃｔ４３へと進む。
【００６６】
Ａｃｔ４３においてプロセッサー１１は、Ａｃｔ４２で列挙した内蔵アプリケーションの中に、Ａｃｔ４４の処理で未だ選択されていないものがあるか否かを判定する。プロセッサー１１は、未選択の内蔵アプリケーションがあるならば、Ａｃｔ４３においてＹｅｓと判定してＡｃｔ４４へと進む。
【００６７】
Ａｃｔ４４においてプロセッサー１１は、Ａｃｔ４２で列挙した内蔵アプリケーションの中から、未だ選択していない内蔵アプリケーションを１つ選択する。プロセッサー１１は、Ａｃｔ４４の処理の後、Ａｃｔ４５へと進む。
【００６８】
Ａｃｔ４５においてプロセッサー１１は、Ａｃｔ４４で選択した内蔵アプリケーションに含まれるバージョン情報を取得する。プロセッサー１１は、Ａｃｔ４５の処理の後、Ａｃｔ４６へと進む。
【００６９】
Ａｃｔ４６においてプロセッサー１１は、Ａｃｔ４５で取得したバージョン情報と、画像形成装置１０にインストールされた複数の実行環境のうちのいずれかのバージョンとが合致するか否かを判定する。プロセッサー１１は、バージョンが合致するならば、Ａｃｔ４６においてＮｏと判定してＡｃｔ４３へと戻る。対して、プロセッサー１１は、バージョンが合致しないならば、Ａｃｔ４６においてＮｏと判定してＡｃｔ４７へと進む。
【００７０】
Ａｃｔ４７においてプロセッサー１１は、サーバー２０に対して送信するリクエストを生成する。当該リクエストは、画像形成装置１０にインストールされた実行環境のバージョンを示すバージョン情報と、Ａｃｔ４３で選択した内蔵アプリケーションを特定する特定情報と、Ａｃｔ４４で取得したバージョン情報とを含む。そして、プロセッサー１１は、生成した当該リクエストをサーバー２０に送信するように通信インターフェース１５に対して指示する。この指示を受けて通信インターフェース１５は、当該リクエストをサーバー２０に送信する。送信された当該リクエストは、サーバー２０によって受信される。プロセッサー１１は、Ａｃｔ４７の処理の後、Ａｃｔ４８へと進む。
【００７１】
リクエストを受信したサーバー２０は、記憶している内蔵アプリケーションの中に、特定情報で特定される内蔵アプリケーションの、画像形成装置１０にインストールされた実行環境に対応するバージョンがあるか否かを確認する。サーバー２０は、対応するバージョンがあったならば、当該バージョンの内蔵アプリケーションを含むレスポンスを画像形成装置１０に送信する。対して、対応するバージョンが無かったならば、サーバー２０は、対応するバージョンが無かった旨を示す情報を含むレスポンスを画像形成装置１０に送信する。
【００７２】
Ａｃｔ４８においてプロセッサー１１は、通信インターフェース１５によって当該レスポンスが受信されるのを待ち受けている。プロセッサー１１は、当該レスポンスが受信されたならば、Ａｃｔ４８においてＹｅｓと判定してＡｃｔ４９へと進む。
【００７３】
Ａｃｔ４９においてプロセッサー１１は、Ａｃｔ４８で受信されたリクエストを参照して、対応するバージョンがあるか否かを判定する。プロセッサー１１は、対応するバージョンがないならば、Ａｃｔ４９においてＮｏと判定してＡｃｔ４３へと戻る。対して、プロセッサー１１は、受信したリクエストを参照して、対応するバージョンがあるならば、Ａｃｔ４９においてＹｅｓと判定してＡｃｔ５０へと進む。
【００７４】
Ａｃｔ５０においてプロセッサー１１は、Ａｃｔ４４で選択した内蔵アプリケーションを、Ａｃｔ４８で受信されたリクエストに含まれる内蔵アプリケーションを用いてバージョンアップさせる。プロセッサー１１は、Ａｃｔ５０の処理の後、Ａｃｔ４３へと戻る。
かくして、プロセッサー１１は、インストール済みの内蔵アプリケーションそれぞれについて、Ａｃｔ４４〜Ａｃｔ５０の処理を行う。そして、プロセッサー１１は、Ａｃｔ４３の処理において、未選択の内蔵アプリケーションがないならば、Ｙｅｓと判定して図６に示す処理を終了する。
【００７５】
第６実施形態の画像形成装置１０は、画像形成装置１０にインストールされた実行環境のバージョンに対応しない内蔵アプリケーションがインストールされている場合、サーバー２０から内蔵アプリケーションを取得して更新を行う。サーバー２０から取得する内蔵アプリケーションは、画像形成装置１０にインストールされた実行環境に対応するバージョンのものである。したがって、画像形成装置１０は、実装している実行環境に対応していない内蔵アプリケーションであっても、更新を行なうことで当該実行環境に対応させることができる。これにより、画像形成装置１０は、他の実行環境との互換性を持たない実行環境のバージョンが存在する場合でも内蔵アプリケーションを正常に動作させることができる。また、画像形成装置１０は、内蔵アプリケーションがバージョン情報を含まない場合であっても、コードを変換することができれば当該内蔵アプリケーションを正常に動作させることができる。
【００７６】
上記の実施形態は以下のような変形も可能である。
画像形成装置１０は、内蔵アプリケーションをインストールした後も当該内蔵アプリケーションのインストールパッケージを記憶しておいても良い。そして、その後に、画像形成装置１０は、実行環境がバージョンアップされるなどして、当該インストールされた内蔵アプリケーションが当該実行環境に対応しなくなった場合、当該インストールパッケージを用いて、内蔵アプリケーションを当該実行環境に対応するようにアップデートしても良い。プロセッサー１１は、当該アップデート処理を、Ａｃｔ１０に代えて行う。そして、プロセッサー１１は、当該アップデート処理の後、Ａｃｔ１１へと進む。
【００７７】
上記の実施形態では、バージョンの異なる実行環境間での内蔵アプリケーションの動作について述べた。しかしながら、実施形態は、種類の異なる実行環境間での内蔵アプリケーションの動作についても適用可能である。
【００７８】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
以下に本願の出願当初の特許請求の範囲に記載された発明を付記する。
[Ｃ１]  プログラムが対応する実行環境及び前記プログラムのインストール先の実行環境のうちの少なくとも一方の実行環境が複数あり、
前記プログラムが対応する実行環境と前記プログラムのインストール先の実行環境とに基づいて前記プログラムのインストールの可否を判定し、前記インストールの可否の判定の結果に基づいて前記プログラムをインストールする第１の動作、
及び前記プログラムが対応する実行環境と前記プログラムのインストール先の実行環境とに基づいて前記プログラムの実行の可否を判定し、前記実行の可否の判定の結果に基づいて前記プログラムを実行する第２の動作、
のうちの少なくとも一方の動作を行う制御部を備える画像形成装置。
[Ｃ２]  前記プログラムを対応する実行環境が複数あり、前記プログラムのインストール先の実行環境が複数ある、Ｃ１に記載の画像形成装置。
[Ｃ３]  プログラムのインストール先の実行環境が、前記プログラムが対応する実行環境でない場合、前記インストール先の実行環境に対応するように前記プログラムを変更して、前記プログラムをインストールする第３の動作、
プログラムのインストール先の実行環境が、前記プログラムが対応する実行環境でない場合、前記インストール先の実行環境に対応するように前記プログラムを変更して、前記プログラムを実行する第４の動作、
のうちの少なくとも一方の動作を行う制御部を備える画像形成装置。
[Ｃ４]  前記第３の動作は、インストール先の実行環境に対応するように前記プログラムを変更できなかった場合、前記プログラムをインストールせず、
前記第４の動作は、前記インストール先の実行環境に対応するように前記プログラムを変更することができなかった場合、前記プログラムを実行しない、Ｃ３に記載の画像形成装置。
[Ｃ５]  プログラムが対応する実行環境及び前記プログラムのインストール先の実行環境のうちの少なくとも一方の実行環境が複数あり、
前記プログラムが対応する実行環境と前記プログラムのインストール先の実行環境とに基づいて前記プログラムのインストールの可否を判定し、前記インストールの可否の判定の結果に基づいて前記プログラムをインストールする第１の動作、
及び前記プログラムが対応する実行環境と前記プログラムのインストール先の実行環境とに基づいて前記プログラムの実行の可否を判定し、前記実行の可否の判定の結果に基づいて前記プログラムを実行する第２の動作、
のうちの少なくとも一方の動作を行う、画像形成装置の制御方法。
[Ｃ６]  プログラムのインストール先の実行環境が、前記プログラムが対応する実行環境でない場合、前記インストール先の実行環境に対応するように前記プログラムを変更して、前記プログラムをインストールする第３の動作、
プログラムのインストール先の実行環境が、前記プログラムが対応する実行環境でない場合、前記インストール先の実行環境に対応するように前記プログラムを変更して、前記プログラムを実行する第４の動作、
のうちの少なくとも一方の動作を行う、画像形成装置の制御方法。
【符号の説明】
【００７９】
１０……画像形成装置、１１……プロセッサー、１２……ＲＯＭ、１３……ＲＡＭ、１４……補助記憶デバイス、１５……通信インターフェース、１６……タッチパネル、１７……画像形成部、１８……画像読取部、１９……バス
【図１】
0006987541.tif 000002
【図２】
0006987541.tif 000003
【図３】
0006987541.tif 000004
【図４】
0006987541.tif 000005
【図５】
0006987541.tif 000006
【図６】
0006987541.tif 000007