JP5686155B2 - Apparatus, information processing system, information processing method, program, and recording medium - Google Patents
Apparatus, information processing system, information processing method, program, and recording medium Download PDFInfo
- Publication number
- JP5686155B2 JP5686155B2 JP2013101128A JP2013101128A JP5686155B2 JP 5686155 B2 JP5686155 B2 JP 5686155B2 JP 2013101128 A JP2013101128 A JP 2013101128A JP 2013101128 A JP2013101128 A JP 2013101128A JP 5686155 B2 JP5686155 B2 JP 5686155B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- version
- function
- application
- jsdk
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Stored Programmes (AREA)
- Facsimiles In General (AREA)
- Control Or Security For Electrophotography (AREA)
- Accessory Devices And Overall Control Thereof (AREA)
Description
本発明は、機器、情報処理システム、情報処理方法、プログラム、SDメモリカード等の記録媒体に関する。 The present invention relates to a recording medium such as a device, an information processing system, an information processing method, a program, and an SD memory card.
近年、コピー機能とプリンタ機能とスキャナ機能とファクシミリ機能を備える複合機や融合機が市販されるようになった。複合機や融合機は、コピーやプリンタとして機能する場合には、画像を印刷用紙に印刷することになり、コピーやスキャナとして機能する場合には、画像を読取原稿から読み取ることになり、ファクシミリとして機能する場合には、画像を電話回線を介して他の機器と授受することになる。 In recent years, multifunction peripherals and multifunction peripherals having a copy function, a printer function, a scanner function, and a facsimile function have come to be marketed. When a multifunction device or multifunction device functions as a copy or a printer, it prints an image on printing paper. When it functions as a copy or a scanner, it reads an image from a read original, and functions as a facsimile. In the case of functioning, images are exchanged with other devices via a telephone line.
なお、特許文献1には、コピー機能とプリンタ機能とスキャナ機能とファクシミリ機能を備える画像形成装置に関する発明が開示されている。当該画像形成装置内には当該画像形成装置用のソフトウェアとして、アプリケーションに相当するソフトウェアやプラットフォームに相当するソフトウェアが存在している。更には、アプリケーションプログラムインタフェースやエンジンインタフェースが存在している。 Patent Document 1 discloses an invention relating to an image forming apparatus having a copy function, a printer function, a scanner function, and a facsimile function. In the image forming apparatus, software corresponding to an application and software corresponding to a platform exist as software for the image forming apparatus. Furthermore, there are application program interfaces and engine interfaces.
画像形成装置や画像形成装置用のアプリケーションには様々な機種や様々なバージョンが存在する。よって、あるバージョンのアプリケーションが、ある機種,あるバージョンの画像形成装置では正常に動作するのに、ある機種,あるバージョンの画像形成装置では正常に動作しないという事態が発生し得る。しかし、このような事態が頻発すると商品の信用が失墜してしまうため、このような事態はなるべく回避すべきである。 There are various models and various versions of image forming apparatuses and applications for image forming apparatuses. Accordingly, a situation may occur in which a certain version of an application operates normally on a certain model and a certain version of the image forming apparatus, but does not normally operate on a certain model and a certain version of the image forming apparatus. However, if such a situation occurs frequently, the credibility of the product will be lost, so such a situation should be avoided as much as possible.
本発明は、様々な機種や様々なバージョンが存在する機器や機器用のアプリケーションに関して、機器と機器用のアプリケーションの不適合に伴う不都合の発生を回避することを課題とする。 An object of the present invention is to avoid the occurrence of inconvenience due to incompatibility between a device and an application for a device regarding devices and devices for which various models and various versions exist.
そこで上記課題を解決するため、本発明は、アプリケーションプログラムを実行可能な機器であって、前記アプリケーションプログラムの動作のために利用する機能の情報を含む第一の情報と、当該機器において利用可能な機能の情報を含む第二の情報とを取得して、前記第一の情報と前記第二の情報とを照合することにより当該アプリケーションプログラムの実行の可否を判定する判定手段と、前記判定手段の判定結果に応じて当該アプリケーションプログラムの動作を制御する実行制御手段と、前記第一の情報と前記第二の情報に含まれる情報とに不一致が有る場合、前記アプリケーションプログラムの動作を制御するための条件が定義された第三の情報を参照し、当該第三の情報に基づく処理を実行する処理手段とを有することを特徴とする。 Accordingly, in order to solve the above-described problem, the present invention is a device that can execute an application program, and includes first information including information on a function used for the operation of the application program, and the device that can be used in the device. Determining means for acquiring second information including function information and determining whether the application program can be executed by comparing the first information with the second information; and When there is a discrepancy between the execution control unit that controls the operation of the application program according to the determination result and the information included in the first information and the second information, the control unit controls the operation of the application program. Processing means for executing processing based on the third information with reference to the third information in which the condition is defined To.
このような機器では、機器と機器用のアプリケーションの不適合に伴う不都合の発生を回避することができる。 In such a device, it is possible to avoid the occurrence of inconvenience due to the mismatch between the device and the application for the device.
また、上記課題を解決するため、本発明は、上記機器における情報処理方法、前記情報処理方法を前記機器に実行させるためのプログラム、又は前記プログラムを記録した記録媒体としてもよい。 In order to solve the above problems, the present invention may be an information processing method in the device, a program for causing the device to execute the information processing method, or a recording medium on which the program is recorded.
本発明は、様々な機種や様々なバージョンが存在する機器や機器用のアプリケーションに関して、機器と機器用のアプリケーションの不適合に伴う不都合の発生を回避することを可能にする。 The present invention makes it possible to avoid the occurrence of inconvenience due to incompatibility between a device and an application for a device regarding devices and devices for which various models and various versions exist.
図1は、本発明の実施例に該当する融合機101を表す。図1の融合機101は、種々のハードウェア111と、種々のソフトウェア112と、融合機起動部113により構成される。
FIG. 1 shows a
融合機101のハードウェア111としては、撮像部121と、印刷部122と、その他のハードウェア123が存在する。撮像部121は、読取原稿から画像(画像データ)を読み取るためのハードウェアである。印刷部122は、画像(画像データ)を印刷用紙に印刷するためのハードウェアである。
As the hardware 111 of the multi-function peripheral 101, there are an
融合機101のソフトウェア112としては、種々のアプリケーション131と、種々のプラットフォーム132が存在する。これらのプログラムは、UNIX(登録商標)等のOS(オペレーティングシステム)によりプロセス単位で並列的に実行される。
As the
アプリケーション131としては、コピー用のアプリケーションであるコピーアプリ141、プリンタ用のアプリケーションであるプリンタアプリ142、スキャナ用のアプリケーションであるスキャナアプリ143、ファクシミリ用のアプリケーションであるファクシミリアプリ144、ネットワークファイル用のアプリケーションであるネットワークファイルアプリ145が存在する。そしてさらに、Webページの閲覧用のソフトウェアであるWebブラウザ181、Webページの配信用のソフトウェアであるWebサーバソフト182、CSDKアプリ146やJSDKアプリ147の制御用のソフトウェアであるSDKアプリケーションサービス(SAS)183が存在する。
The
アプリケーション131は、専用のSDK(ソフトウェア開発キット)を使用して開発することができる。SDKを使用して開発したアプリケーション131をSDKアプリと呼ぶ。専用のSDKとしては、C言語でアプリケーション131を開発するための「CSDK」や、Java(登録商標)言語でアプリケーション131を開発するための「JSDK」が提供される。CSDKを使用して開発したアプリケーション131を「CSDKアプリ」と呼び、JSDKを使用して開発したアプリケーション131を「JSDKアプリ」と呼ぶ。図1の融合機101にも、CSDKアプリ146と、JSDKアプリ147が存在する。図1の融合機101にはさらに、Java(登録商標)言語で記述されたJSDKアプリ147とC言語で記述された他のソフトウェア112との仲介を行うソフトウェア112として、JSDKプラットフォーム148が存在する。
The
プラットフォーム132としては、種々のコントロールサービス151、システムリソースマネージャ152、種々のハンドラ153が存在する。コントロールサービス151としては、ネットワークコントロールサービス(NCS)161、ファクシミリコントロールサービス(FCS)162、デリバリコントロールサービス(DCS)163、エンジンコントロールサービス(ECS)164、メモリコントロールサービス(MCS)165、オペレーションパネルコントロールサービス(OCS)166、サーティフィケーションコントロールサービス(CCS)167、ユーザディレクトリコントロールサービス(UCS)168、システムコントロールサービス(SCS)169が存在する。ハンドラ153としては、ファクシミリコントロールユニットハンドラ(FCUH)171、イメージメモリハンドラ(IMH)172が存在する。
The
NCS161のプロセスは、ネットワーク通信の仲介を行う。FCS162のプロセスは、ファクシミリのAPIを提供する。DCS163のプロセスは、蓄積文書の配信処理に関する制御を行う。ECS164のプロセスは、撮像部121や印刷部122に関する制御を行う。MCS165のプロセスは、メモリやハードディスクドライブに関する制御を行う。OCS166のプロセスは、オペレーションパネルに関する制御を行う。CCS167のプロセスは、認証処理や課金処理に関する制御を行う。UCS168のプロセスは、ユーザ情報の管理に関する制御を行う。SCS169のプロセスは、システムの管理に関する制御を行う。
The process of the NCS 161 mediates network communication. The FCS 162 process provides a facsimile API. The process of the
アプリケーション131とプラットフォーム132の仲介を行うソフトウェア112として、仮想アプリケーションサービス(VAS)135が存在する。VAS135は、アプリケーション131をクライアントとするサーバプロセスとして動作すると共に、プラットフォーム132をサーバとするクライアントプロセスとして動作する。VAS135は、アプリケーション131から見てプラットフォーム132を隠蔽するラッピング機能を備え、プラットフォーム132のバージョンアップに伴うバージョン差を吸収する役割等を担う。
A virtual application service (VAS) 135 exists as
融合機起動部113は、融合機101の電源投入時に最初に実行される。これにより、UNIX(登録商標)等のOSが起動され、アプリケーション131やプラットフォーム132が起動される。これらのプログラムは、ハードディスクドライブやメモリカードに蓄積されており、ハードディスクドライブやメモリカードから再生されて、メモリに起動されることになる。
The
図2は、図1の融合機101に係るハードウェア構成図である。融合機101のハードウェア111としては、コントローラ201と、オペレーションパネル202と、ファクシミリコントロールユニット(FCU)203と、撮像部121と、印刷部122が存在する。
FIG. 2 is a hardware configuration diagram according to the
コントローラ201は、CPU211、ASIC212、NB221、SB222、MEM−P231、MEM−C232、HDD(ハードディスクドライブ)233、メモリカードスロット234、NIC(ネットワークインタフェースコントローラ)241、USBデバイス242、IEEE1394デバイス243、セントロニクスデバイス244により構成される。
The
CPU211は、種々の情報処理用のICである。ASIC212は、種々の画像処理用のICである。NB221は、コントローラ201のノースブリッジである。SB222は、コントローラ201のサウスブリッジである。MEM−P231は、融合機101のシステムメモリである。MEM−C232は、融合機101のローカルメモリである。HDD233は、融合機101のストレージである。メモリカードスロット234は、メモリカード235をセットするためのスロットである。NIC241は、MACアドレスによるネットワーク通信用のコントローラである。USBデバイス242は、USB規格の接続端子を提供するためのデバイスである。IEEE1394デバイス243は、IEEE1394規格の接続端子を提供するためのデバイスである。セントロニクスデバイス244は、セントロニクス仕様の接続端子を提供するためのデバイスである。
The
オペレーションパネル202は、オペレータが融合機101に入力を行うためのハードウェア(操作部)であると共に、オペレータが融合機101から出力を得るためのハードウェア(表示部)である。
The
図3は、図1の融合機101に係る外観図である。図3には、撮像部121の位置と、印刷部122の位置と、オペレーションパネル202の位置が図示されている。図3には更に、読取原稿のセット先となる原稿セット部301と、印刷用紙の給紙先となる給紙部302と、印刷用紙の排紙先となる排紙部303が図示されている。
FIG. 3 is an external view of the multi-function peripheral 101 of FIG. FIG. 3 shows the position of the
オペレーションパネル202は、図4のように、タッチパネル311と、テンキー312と、スタートボタン313と、リセットボタン314と、機能キー315と、初期設定ボタン316により構成される。タッチパネル311は、タッチ操作で入力を行うためのハードウェア(タッチ操作部)であると共に、画面表示で出力を得るためのハードウェア(画面表示部)である。テンキー312は、キー(ボタン)操作で数字入力を行うためのハードウェアである。スタートボタン313は、ボタン操作でスタート操作を行うためのハードウェアである。リセットボタン314は、ボタン操作でリセット操作を行うためのハードウェアである。機能キー315は、キー(ボタン)操作でCSDKアプリ146やJSDKアプリ147による操作画面を表示させるためのハードウェアである。初期設定ボタン316は、ボタン操作で初期設定画面を表示させるためのハードウェアである。
As shown in FIG. 4, the
原稿セット部301は、ADF(自動原稿搬送装置)321と、フラットベッド322と、フラットベッドカバー323により構成される。給紙部302は、4個の給紙トレイにより構成される。排紙部303は、1個の排紙トレイにより構成される。ADF321には、複数枚の読取原稿を重ねてセットすることができる。フラットベッド322には、読取原稿を下向きにセットする。
The
(JSDK)
図5は、図1のJSDKアプリ147とJSDKプラットフォーム148のクラス図である。JSDKアプリ147とJSDKプラットフォーム148は、全体で1プロセスとして、同一プロセス上で実行される。JSDKアプリ147とJSDKプラットフォーム148中の各ブロックは、それぞれこの1プロセス上のスレッドとして、スレッド単位で並列的に実行(マルチスレッド)される。JSDKアプリ147とJSDKプラットフォーム148は、Java(登録商標)コンパイラによりソースコードからバイトコードに一括翻訳されており、Java(登録商標)仮想マシンにより逐次実行される。JSDKアプリ147とJSDKプラットフォーム148は、Java(登録商標) 2 Micro EditionのPersonal Basis Profileをベースとする実装となっている。
(JSDK)
FIG. 5 is a class diagram of the
JSDKアプリ147としては、ユーザアプリ501と、JSDK GUI Manager511と、Task Bar Manager512等が存在する。
As the
ユーザアプリ501は、融合機101のユーザ(例えばベンダ)がJSDKを使用して開発したJSDKアプリである。JSDK GUI Manager511は、他のJSDKアプリ(ユーザアプリ501等)を操作対象とする操作画面の表示等を行うJSDKアプリである。Task Bar Manager512は、他のJSDKアプリ(ユーザアプリ501等)を操作対象とするタスクバーの表示等を行うJSDKアプリである。
The
ユーザアプリ501はここでは、スタンドアロンアプリケーションやアプレットと並ぶJava(登録商標)アプリケーションであるXletである。JSDK GUI Manager511とTask Bar Manager512はここでは、独自の拡張を施したXlet(XletEx)である。
Here, the
JSDKプラットフォーム148には、JSDK Main521と、JSDK Environment522と、Locale Manager523と、Xlet Manager531と、Multi Xlet Manager532と、JSDK Manager533と、Send Manager541と、Event Manager542と、System Event Manager543と、Panel Manager544と、Install Manager545と、Server/Client Manager546等のクラスが存在する。
The
JSDK Main521は、JSDKシステムの起動設定を行うクラスである。JSDK Environment522は、JSDKシステムの起動環境設定を行うクラスである。Locale Manager523は、国際化対応(言語指定)を行うクラスである。
The
Xlet Manager531は、1対1でXletのライフサイクルを管理するクラスである。ここでは、5個のXletのライフサイクルが1対1で5個のXlet Manager531によって管理される。Multi Xlet Manager532は、全てのXlet Manager531のライフサイクルを管理するクラスである。ここでは、5個のXlet Manager531のライフサイクルが全て1個のMulti Xlet Manager532によって管理される。JSDK Manager533は、JSDKシステム全体のライフサイクルを管理するクラスである。例えば、Multi Xlet Manager532,Send Manager541,Event Manager542,System Event Manager543,Panel Manager544,Install Manager545,Server/Client Manager546のライフサイクルが、JSDK Manager533によって管理される。
The
System Event Manager543は、図1のプラットフォーム132からのシステムイベント(電力モード等)の管理を行うクラスである。Panel Manager544は、1個のXletがオペレーションパネル202の画面を占有する際の調停等を行うクラスである。Install Manager545は、SDcardやWebからのインストールやアンインストールの管理を行うクラスである。
The System Event Manager 543 is a class that manages system events (power mode, etc.) from the
図5のJSDKシステムでは、APIとして、JSDK API551とJSDK API552等が存在する。なお、XletとXletExの差異として、オブジェクトにアクセスするのにJSDK API551の利用とJSDKプラットフォーム148へのアクセスが可能である点が挙げられる。図1の融合機101にはさらに、図5のJSDKシステムに係る要素として、C言語とJava(登録商標)言語のインタフェースとなるJSDK Session553とNative JSDK Session554等が存在する。図1の融合機101にはさらに、図5のJSDKシステムに係る要素として、Java(登録商標)コンパイラによりソースコードからバイトコードに一括翻訳されたJava(登録商標)プログラムを逐次実行するためのJava(登録商標)仮想マシンであるCVM(コンパクト仮想マシン)555等が存在する。
In the JSDK system of FIG. 5, there are
(JSDKアプリの起動制御)
以下、画像形成装置や画像形成装置用のアプリケーションの機種やバージョンについて解説した後、JSDKアプリ147の起動制御について説明する。
(Startup control of JSDK application)
Hereinafter, after explaining the model and version of the image forming apparatus and the application for the image forming apparatus, the activation control of the
図6により、画像形成装置や画像形成装置用のアプリケーションの機種やバージョンについて解説する。画像形成装置には、オフィス向けのカラー融合機、個人向けのモノクロ融合機、オフィス向けのデジタルプリンタ、個人向けのアナログプリンタ等の様々な機種が存在する。図1の融合機101も、様々な機種が存在する画像形成装置の一機種に相当する。当該融合機101のアプリケーション131やプラットフォーム132には、図6のように、ver1.0、ver1.1、ver1.2、ver2.0、ver3.0等の様々なバージョンが存在する。
The model and version of the image forming apparatus and application for the image forming apparatus will be described with reference to FIG. There are various types of image forming apparatuses such as an office color fusion machine, an individual monochrome fusion machine, an office digital printer, an individual analog printer, and the like. The
さて、当該融合機101のプラットフォーム132のバージョンをアップさせる場合、バージョンアップ前のプラットフォーム132とは適合していたアプリケーション131がバージョンアップ後のプラットフォーム132とは適合しなくなる事態は回避すべきである。そこで、当該融合機101のプラットフォーム132をバージョンをアップさせる場合には、当該融合機101のVAS135のバージョンもアップさせる事で、プラットフォーム132のバージョンアップ前後のバージョン差をVAS135に吸収させる事にしている。なお、当該融合機101では、当該融合機101のVAS135のバージョンをもって当該融合機101のバージョンとしている。
When the version of the
(1)第1実施例
図7は、JSDKアプリ147の起動制御の第1実施例に係る説明図である。
(1) First Example FIG. 7 is an explanatory diagram according to a first example of activation control of the
第1実施例では、図7のJSDKアプリ147を題材として説明する。図7のJSDKアプリ147は、SDメモリカードスロット234に挿入されたSDメモリカード235に記憶されている。SAS183は、図7のJSDKアプリ147を、SDメモリカードスロット234に挿入されたSDメモリカード235から融合機101内に起動させる事ができる。
In the first embodiment, the
図7のJSDKアプリ147は、ver1.0とver1.1とver1.2とver2.0とver3.0が存在するJSDKアプリのver2.0に相当するものとする。そして、図7のJSDKアプリ147のバージョンの「ver2.0」に対応するVAS135のバージョンは「ver3.0」であるものとする。したがって、図7のJSDKアプリ147は、VAS135のバージョンがver3.0以上ならば自身のバージョンと適合するので正常に動作することになるが、VAS135のバージョンがver3.0未満ならば自身のバージョンと適合しないので正常に動作しないことになる。
The
そこで、図7のJSDKアプリ147が融合機101内で起動した際、図7のJSDKアプリ147は、自身のバージョンと当該融合機101のバージョン(当該融合機101のVAS135のバージョン)とを照合して、自身のバージョンと当該融合機101のバージョンとが適合する場合は起動を継続し、自身のバージョンと当該融合機101のバージョンとが適合しない場合は起動を解除するものとする。
Therefore, when the
すなわち、図7のJSDKアプリ147は、当該融合機101のバージョンが、自身のバージョンと対応するバージョンである場合または自身のバージョンと対応するバージョンより新しいバージョンである場合は起動を継続し、当該融合機101のバージョンが、自身のバージョンと対応するバージョンより古いバージョンである場合は起動を解除することになる。
That is, the
これにより、融合機101とJSDKアプリ147の不適合に伴う不都合の発生を回避する事ができる。融合機101とJSDKアプリ147とが適合するか否かを、JSDKアプリ147が自身で確認し、融合機101とJSDKアプリ147とが適合しない場合には、JSDKアプリ147が自身で起動を解除するからである。起動制御の実行主体を融合機側ではなくアプリ側としているため、起動制御の対策分担が融合機のメーカーからアプリのベンダーに委任されていると言える。
As a result, it is possible to avoid the occurrence of inconvenience due to the incompatibility between the
ここで、融合機101のAPI(アプリケーションプログラムインタフェース)133について補足しておく。図1の融合機101では、アプリケーション131からプラットフォーム132への処理要求の授受には、予め定義されている関数により処理要求を受容するAPI133が利用される。融合機101のAPI133は、数百種類にも至る様々な種類のAPIにより構成される。図1の融合機101では、融合機101のバージョンの上位互換性を保障すべく、融合機101のバージョンアップに伴ってAPIの「追加」は行うが「削除」は行わないものとする。これにより、図7のJSDKアプリ147は、自身のバージョンと対応するバージョン以上のバージョンの融合機101とは適合する事になると共に、自身のバージョンと対応するバージョン未満のバージョンの融合機101とは適合しない事になる。
Here, a supplementary explanation will be given for the API (application program interface) 133 of the multi-function peripheral 101. In the
図8は、JSDKアプリ147の起動制御の第1実施例に係るフロー図である。
FIG. 8 is a flowchart according to the first example of the activation control of the
融合機101の電源が投入(S11)されると、融合機起動部113がSAS183を起動(S12)させる。続いて、SAS183がCVM555を起動(S13)させる。続いて、SAS183がCVM555を利用してJSDKアプリ147を起動(S14)させる。続いて、JSDKアプリ147は、融合機101内のVAS135のバージョンに係る情報を、融合機101内のVAS135から取得(S15)する。VAS135は自身のバージョンに係る情報を保持しているものとする。続いて、JSDKアプリ147は、自身のバージョンと融合機101内のVAS135のバージョンとを照合(S16)する。JSDKアプリ147は自身のバージョンに係る情報を保持しているものとする。そして、JSDKアプリ147は、自身のバージョンと融合機101内のVAS135のバージョンとが適合する場合(S17)には起動を継続(S18)し、自身のバージョンと融合機101内のVAS135のバージョンとが適合しない場合(S17)には起動を解除(S19)する。
When the power of the multi-function peripheral 101 is turned on (S11), the multi-function
(2)第2実施例
図9は、JSDKアプリ147の起動制御の第2実施例に係る説明図である。
(2) Second Example FIG. 9 is an explanatory diagram according to a second example of activation control of the
第2実施例では、図9のJSDKアプリ147を題材として説明する。図9のJSDKアプリ147は、SDメモリカードスロット234に挿入されたSDメモリカード235に記憶されている。SAS183は、図9のJSDKアプリ147を、SDメモリカードスロット234に挿入されたSDメモリカード235から融合機101内に起動させる事ができる。
In the second embodiment, the
図9Aの融合機101も図9Bの融合機101も図1の融合機101に相当するものとするが、図9Aの融合機101と図9Bの融合機101では機種が相違するものとする。図9Aの融合機101はカラー融合機であり、図9Bの融合機101はモノクロ融合機である。したがって、図9Aの融合機101と図9Bの融合機101ではサポートする機能の種類が相違する。大きい単位で言えば、図9Aの融合機101はモノクロコピー機能,カラーコピー機能,モノクロプリント機能,カラープリント機能等をサポートし、図9Bの融合機101はモノクロコピー機能,モノクロプリント機能等をサポートする。小さい単位で言えば、図9Aの融合機101はモノクロ向けのAPI,カラー向けのAPI等をサポートし、図9Bの融合機101はモノクロ向けのAPI等をサポートする。よって、図9A,BのJSDKアプリ147が図9A,Bの融合機101内でカラー向けの機能を利用しようとした場合、図9AのJSDKアプリ147は正常に動作することになるが、図9BのJSDKアプリ147は正常に動作しないことになる。
9A and 9B correspond to the
そこで、図9のJSDKアプリ147が融合機101内で起動した際、図9のJSDKアプリ147は、当該融合機101でサポートされている機能の種類を確認し、当該融合機101でサポートされていない機能についてはその利用を回避することで、当該融合機101でサポートされている機能のみを利用するものとする。
Therefore, when the
これにより、融合機101とJSDKアプリ147の不適合に伴う不都合の発生を回避する事ができる。融合機101でサポートされている機能の種類をJSDKアプリ147が自身で確認して、融合機101でサポートされていない機能についてはJSDKアプリ147が自身でその利用を回避するからである。JSDKアプリ147は、融合機101とJSDKアプリ147の不適合部分についてはその実行を回避する事で、融合機101とJSDKアプリ147の適合部分のみを実行する事になる。起動制御(起動の際の機能利用制御)の実行主体を融合機側ではなくアプリ側としているため、起動制御の対策分担が融合機のメーカーからアプリのベンダーに委任されていると言える。
As a result, it is possible to avoid the occurrence of inconvenience due to the incompatibility between the
ただし、図9のJSDKアプリ147は、画像形成装置でサポートされているか否かが画像形成装置の各機種で共通する「固定機能」については、当該融合機101でサポートされているか否かを確認せず、画像形成装置でサポートされているか否かが画像形成装置の各機種で相違する「拡張機能」についてのみ、当該融合機101でサポートされているか否かを確認するものとする。
However, the
なお、どの機能を「固定機能」としてどの機能を「拡張機能」とするかは任意である。例えば、画像形成装置の機種としてモノクロ融合機,カラー融合機,モノクロプリンタ,カラープリンタが想定される場合、モノクロプリント機能を「固定機能」として、カラープリント機能,モノクロコピー機能,カラーコピー機能,タッチパネル機能,ストレージ機能を「拡張機能」とすることが想定される。 Note that which function is a “fixed function” and which function is an “extended function” is arbitrary. For example, when a monochrome fusion machine, a color fusion machine, a monochrome printer, or a color printer is assumed as the model of the image forming apparatus, the monochrome print function is a “fixed function”, and the color print function, monochrome copy function, color copy function, touch panel It is assumed that the function and storage function are “extended functions”.
さらに、図9のJSDKアプリ147は、融合機101でサポートされていない機能についてその利用を回避する場合には、その事実をユーザインタフェースに反映させるようにしてもよい。例えば、カラーコピー機能の利用を回避する場合には、カラーコピー画面やカラーコピー開始ボタンを表示しないようにしてもよいし、カラーコピー画面やカラーコピー開始ボタンを操作するとエラーメッセージが表示されるようにしてもよい。
Furthermore, the
図10は、JSDKアプリ147の起動制御の第2実施例に係るフロー図である。
FIG. 10 is a flowchart according to the second embodiment of the startup control of the
融合機101の電源が投入(S21)されると、融合機起動部113がSAS183を起動(S22)させる。続いて、SAS183がCVM555を起動(S23)させる。続いて、SAS183がCVM555を利用してJSDKアプリ147を起動(S24)させる。続いて、JSDKアプリ147は、融合機101でサポートされている機能に係る情報を、融合機101内のVAS135から取得(S25)する。VAS135は画像形成装置の機種名と画像形成装置でサポートされている機能の種類との対応表を保持しているものとする。続いて、JSDKアプリ147は、融合機101でサポートされている機能の種類を確認(S26)する。そして、JSDKアプリ147は、融合機101でサポートされている機能(S27)についてはその利用を回避せず(S28)、融合機101でサポートされていない機能(S27)についてはその利用を回避する(S29)。
When the power of the multi-function peripheral 101 is turned on (S21), the multi-function
(3)第3実施例
図11は、JSDKアプリ147の起動制御の第3実施例に係る説明図である。
(3) Third Example FIG. 11 is an explanatory diagram according to a third example of activation control of the
第3実施例では、図11のJSDKアプリ147,CVM555A,CVM555Bを題材として説明する。図11のJSDKアプリ147,CVM555A,CVM555Bは、SDメモリカードスロット234に挿入されたSDメモリカード235に記憶されている。SAS183は、図11のJSDKアプリ147,CVM555A,CVM555Bを、SDメモリカードスロット234に挿入されたSDメモリカード235から融合機101内に起動させる事ができる。
In the third embodiment, the
画像形成装置の機種はここでは、2004年下半期機種群、2005年上半期機種群、2005年下半期機種群のように「機種群」として管理されているものとする。画像形成装置の開発を機種群単位で遂行するためである。よって、画像形成装置のJava(登録商標)の実行環境の変更も機種群単位で実施する。したがって、画像形成装置用のCVMのバージョンはここでは、2004年下半期機種群用CVM、2005年上半期機種群用CVM、2005年下半期機種群用CVMのように機種群単位で存在することになる。 The model of the image forming apparatus is assumed to be managed as a “model group” such as a model group in the second half of 2004, a model group in the first half of 2005, and a model group in the second half of 2005. This is because the development of the image forming apparatus is performed in units of model groups. Therefore, the Java (registered trademark) execution environment of the image forming apparatus is also changed for each model group. Accordingly, the CVM version for the image forming apparatus exists here in units of model groups such as CVM for the second half model group of 2004, CVM for the first half model group of 2005, and CVM for the second half model group of 2005.
一方、本発明者は、JSDKアプリ147、JSDKプラットフォーム148、CVM555を1枚のSDメモリカード235に格納して販売するビジネスモデルについて検討している。この場合に懸案となるのがCVM555の機種群依存性である。ある機種群をリリースするごとに、その機種群用のCVM555を搭載したその機種群用のSDメモリカード235をリリースする事にすると、N種類の機種群のリリース後にはN種類のSDメモリカード235を取り扱う事になり面倒だからである。
On the other hand, the inventor is considering a business model in which the
そこで、第3実施例では、ある機種群をリリースする場合には、その機種群がリリースされる迄にリリースされた全ての機種群のCVM555を1枚のSDメモリカード235に搭載したSDメモリカード235を、全ての機種群に共通のSDメモリカード235としてリリースする事にする。
Therefore, in the third embodiment, when a certain model group is released, an SD memory card in which CVM555 of all the model groups released until the model group is released is mounted on one
そして、第3実施例では、SAS183は、SDメモリカード235に記憶されているJSDKアプリ147を融合機101内に起動させる際、SDメモリカード235に記憶されている複数のバージョンのCVM555の内、当該融合機101の機種(機種群)と適合するバージョンのCVM555を自動選択して当該融合機101内に起動させるものとする。
In the third embodiment, when the
これにより、第3実施例では、複数のSDメモリカード235を取り扱う面倒から開放される事になる。ある機種群のリリース後には、その機種群に伴ってリリースされたSDメモリカード235だけを取り扱う事になるからである。また、第3実施例では、融合機101とJSDKアプリ147(SDメモリカード235)の不適合に伴う不都合の発生が回避される事になる。SDメモリカード235が共通化されていることで、SDメモリカード235の取り違えの問題が回避されているからである。
Thus, in the third embodiment, the trouble of handling a plurality of
図11を実例として詳細に説明する。図11のCVM555A,CVM555Bは2004年下半期機種群用CVM,2005年上半期機種群用CVMに相当する。すなわち、図11のSDメモリカード235は、2005年度上半期機種群に伴ってリリースされたSDメモリカード235に相当する。そして、図11の融合機101は2005年上半期機種群に属する機種の画像形成装置に相当する。したがって、図11のSAS183は、SDメモリカード235に記憶されているJSDKアプリ147を融合機101内に起動させる際、SDメモリカード235に記憶されている複数のバージョンのCVM555の内、当該融合機101の機種群「2005年上半期機種群」と適合するバージョン「2005年上半期機種群用CVM」のCVM555を自動選択して当該融合機101内に起動させるものとする。
FIG. 11 will be described in detail using an example. CVM555A and CVM555B in FIG. 11 correspond to the CVM for the second half model group in 2004 and the CVM for the first half model group in 2005. In other words, the
図12は、JSDKアプリ147の起動制御の第3実施例に係るフロー図である。
FIG. 12 is a flowchart according to the third embodiment of the activation control of the
融合機101の電源が投入(S31)されると、融合機起動部113がSAS183を起動(S32)させる。続いて、SAS183は、融合機101の機種名(機種群名)に係る情報を、融合機101内のVAS135から取得(S33)する。VAS135は融合機101の機種名(機種群名)に係る情報を保持しているものとする。続いて、SAS183は、SDメモリカード235に記憶されている複数のバージョンのCVM555の内、融合機101の機種(機種群)と適合するバージョンのCVM555を自動選択(S34)して融合機101内に起動(S35)させる。続いて、SAS183は、自動選択して起動させたそのCVM555を利用して、SDメモリカード235に記憶されているJSDKアプリ147を融合機101内に起動(S36)させる。
When the power of the multi-function peripheral 101 is turned on (S31), the multi-function
(4)第4実施例
図13は、JSDKアプリ147の起動制御の第4実施例に係る説明図である。
(4) Fourth Example FIG. 13 is an explanatory diagram according to a fourth example of activation control of the
第4実施例は、図13のJSDKアプリ147及びバージョンコントローラ136等を題材として説明する。図13のJSDKアプリ147は、SDメモリカードスロット234に挿入されたSDメモリカード235に記憶されている。一方、バージョンコントローラ136は、JSDKアプリ147が利用する機能と、融合機101においてサポートされている機能との不整合を調整するプログラムであり、SDメモリカード235、非図示のUSBメモリ、非図示のフラッシュメモリ、HDD233、又はイントラネット若しくはインターネット等のネットワークを介して接続されている他のコンピュータにおける記憶媒体上等、書き換え可能な記憶媒体に格納されており、更新可能とされている。なお、SAS183は、SDKアプリ147やバージョンコントローラ136等を融合機101内に起動させる事ができる。
The fourth embodiment will be described using the
図14は、JSDKアプリ147の起動制御の第4実施例に係るフロー図である。
FIG. 14 is a flowchart according to the fourth example of the activation control of the
融合機101の電源が投入(S41)されると、融合機起動部113がSAS183を起動(S42)させる。続いて、SAS183がCVM555とバージョンコントローラ136とを起動させる(S43、S44)。更に、SAS183は、CVM555を利用してJSDKアプリ147を起動(S45)させる。
When the power of the multi-function peripheral 101 is turned on (S41), the multi-function
続いて、バージョンコントローラ147は、融合機101でサポートされている機能に係る情報(以下、「機器サポート情報」という。)を、融合機101内のVAS135から取得(S46)すると共に、JSDKアプリ147が利用する機能に係る情報(以下、「アプリ利用情報」という。)をJSDKアプリ147より取得する(S47)。
Subsequently, the
図15は、機器サポート情報の例を示す図である。図15において、機器サポート情報600は、XML形式で記述された例が示されているが、その記述形式は特定のものに限定されない。
FIG. 15 is a diagram illustrating an example of device support information. In FIG. 15, an example in which the
機器サポート情報600において、「inf_version」要素601は、当該機器サポート情報600が従う文法(構造)のバージョン(「1.2」)を示す(以下「機器サポート情報バージョン」という。)。また、「function_list」要素602は、融合機101がサポートしている機能のリストを示す。当該リスト内では、各機能のバージョン情報が示されている。例えば、「copy」要素6021には、融合機101に現在実装されているコピーアプリ141のバージョン(「1.03」)が示されている。また「CVM」要素6024には、融合機101に現在実装されているCVM555のバージョン(「1.01」)が示されている。
In the
また、図16は、アプリ利用情報の例を示す図である。 FIG. 16 is a diagram illustrating an example of application usage information.
図16のアプリ利用情報700は、図15の機器サポート情報600と同様の文法(構造)にしたがう。すなわち、アプリ利用情報700において、「inf_version」要素701は、当該アプリ利用情報700が従う文法(構造)のバージョン(「1.3」)を示す(以下「アプリ利用情報バージョン」という。)。また、「function_list」要素702は、JSDKアプリ147が利用する機能とそのバージョン情報とのリストを示す。例えば、「CVM」要素7021には、JSDKアプリ147が使用するCVM555のバージョン(「1.02」)が示されている。
The
続いて、バージョンコントローラ136は、機器サポート情報バージョンとアプリ利用情報バージョンとに基づいて、自らが当該機器サポート情報600及当該アプリ利用情報700とを解釈可能か否かを判定する(S48)。すなわち、機器サポート情報600やアプリ利用情報700の文法(構造)は、拡張等によって更新される可能性があり、バージョンコントローラ136には解釈できないタグ等が追加されている場合もあるからである。本実施例では、アプリ利用情報バージョンの方が新しいため、バージョンコントローラ136は、少なくともアプリ利用情報バージョン(「1.3」)以上のバージョンを解釈可能である必要がある。なお、バージョンコントローラ136には、当該バージョンコントローラ136が解釈可能なバージョンが組み込まれている。したがって、当該組み込まれているバージョンが、機器サポート情報バージョンとアプリ利用情報バージョンとの少なくともいずれか一方より古い場合(S48でYes)、バージョンコントローラ136は、自らは、機器サポート情報又はアプリ利用情報に対して古いものと判定し、その旨をSAS183に通知する。当該通知を受けたSAS183は、当該機器サポート情報バージョン及びアプリ利用情報バージョンに対応可能なバージョンコントローラ136を、例えば、ネットワークを介した所定のサーバよりダウンロードする。これによって、バージョンコントローラ13は自動的に更新される(S49)。但し、バージョンコントローラ136は、ユーザによって手動で更新されてもよい。手動による更新の場合、ユーザからの指示は、オペレーションパネル202やWebページ等を介して入力される。
Subsequently, the
ステップS47又はS49に続いてステップS50に進み、バージョンコントローラ136は、機器サポート情報600とアプリ利用情報700とを照合することにより、JSDK147アプリが利用する機能が、融合機101でサポートされているか否かを判定する(S50)。例えば、アプリ利用情報700においてリストアップされている機能が、機器サポート情報600においてリストアップされている機能に含まれており、かつ、機器における当該機能のバージョンがアプリが利用するバージョンと同じであるか新しい場合、当該機能は、融合機101でサポートされていると判定される。この場合、JSDKアプリ147は、当該機能の利用を回避しない(S51)。
Progressing to step S50 following step S47 or S49, the
一方、上記以外の場合、すなわち、アプリ利用情報700においてリストアップされている機能が機器サポート情報600においてリストアップされていないか、又は、機器サポート情報600にリストアップされていたとしても、機器における当該機能のバージョンが、アプリが利用するバージョンより古い場合、当該機能は、融合機101でサポートされていないと判定される。この場合、ステップS52に進み、バージョンコントローラ136は、アクション情報を融合機101内の記録媒体より取得する(S52)。
On the other hand, in other cases, that is, even if the functions listed in the
図17は、アクション情報の例を示す図である。 FIG. 17 is a diagram illustrating an example of action information.
図17のアクション情報800は、アプリ利用情報と機器サポート情報とに不一致が生じた場合に実行すべき処理が定義されている情報である。すなわち、アクション情報800の「action_list」要素801には、機能毎に実行すべき定義が「action」要素として定義されている。
The
例えば、「copy」要素8012や「CVM」要素8013に含まれている「action」要素の値は、「upadte」とされている。これは、当該機能にかかるプログラムをダウンロード等によって更新することにより、JSDKアプリ147に対応させることを意味する。なお、この場合、ダウンロード元を識別するための情報等も記述されうるが、図17においては便宜上省略されている。また、「scan」要素8012に含まれている「action」要素の値は、「ignore」とされている。これは、当該機能については、例えば、アプリケーション側と不整合があっても融合機101側での更新は行わず、アプリケーションの機能を制限することを意味する。
For example, the value of the “action” element included in the “copy”
したがって、ステップS52に続いて実行されるステップS53では、アクション情報800に応じた処理が実行される。
Therefore, in step S53 executed subsequent to step S52, processing corresponding to the
なお、アクション情報800に従って融合機101側の機能を更新する際、バージョンコントローラ136は、融合機101の例えばフラッシュメモリ等の内部に記録されている、プロセス間の依存関係を示す情報(以下「プロセス依存情報」という。)に基づいて、更新する機能が依存関係を有する情報を同時に更新するようにしてもよい。
When the function on the
図18は、プロセス依存情報を概念的に示す図である。 FIG. 18 is a diagram conceptually showing process-dependent information.
図18のプロセス依存情報900では、矢印の元のプロセス(機能)が、矢印の先のプロセス(機能)に対して依存関係を有していることを示す。例えば、コピーアプリ141は、SCS169及びMCS165に依存関係を有している。また、CVM555は、VAS135に依存関係を有している。なお、図18において、プロセス依存情報900は、ツリー構造によって概念的に表現されているが、例えば、XML形式によって当該ツリー構造を表現してもよい。また、プロセス(機能)が更新されて、依存関係が更新される場合は、当該プロセス依存情報900も更新するようにするとよい。そうするためには、プロセス毎に、当該プロセスが依存関係を有するプロセスを特定するための情報を付加するようにすればよい。
The
ここで、ステップS47においてバージョンコントローラ136が、JSDKアプリ147よりアプリ利用情報700を取得するための仕組みについて詳述する。一般的に、Java(登録商標)のプログラムは、「.java」という拡張子の付いたソースファイルがコンパイルされることにより、当該ソースファイル内に定義されたクラスごとに「.class」という拡張子の付いたクラスファイルが生成される。そして、一つ以上のソースファイルより生成されたクラスファイルを機能単位でアーカイブ化し、「.jar」という拡張子の付いたjarファイルが生成される。当該jarファイルには、その一部に当該jarファイルの単位でのバージョン情報を管理する仕組みがある。したがって、このjarファイル単位でのバージョン情報に基づいて、アプリ利用情報が生成されてもよい。但し、jarファイル単位では、その内部に含まれているクラス単位によるバージョンまでは識別できない。したがって、クラス単位でのバージョンの識別が必要な場合は、各クラスのバージョンを示すようなクラスを別途定義し、jarファイルに含めておけばよい。そうすることにより、当該バージョンを示すクラスにjarファイルの外部よりアクセスすることで各クラスのバージョンを識別することができ、より細かい単位でのアプリ利用情報を作成することができる。
Here, the mechanism for the
上述したように、第4の実施例の融合機101によれば、アプリケーションが利用したい機能と融合機101がサポートしている機能との整合性の判断主体(バージョンコントローラ136)が、更新可能な構成とされているため、当該整合性を判断するために必要なプロトコル(アプリ利用情報や機器サポート情報等)に更新があった場合でも、当該バージョンコントローラ136を更新することで、柔軟に対応することができる。また、融合機101においてサポートされていない機能があった場合は、可能な範囲で当該機能を補充したり更新したりすることができるため、ユーザにとってより利便性の高いサービスを提供することができる。さらに、融合機101においてサポートされていない機能があった場合は、アクション情報900に基づいて、その後の動作が判断される。したがって、機能毎に柔軟な対処を行うことができる。
As described above, according to the multi-function peripheral 101 of the fourth embodiment, the consistency determination entity (version controller 136) between the function desired to be used by the application and the function supported by the multi-function peripheral 101 can be updated. Because it is configured, even if there is an update to the protocol (application usage information, device support information, etc.) required to determine the consistency, it can be flexibly handled by updating the
101 融合機
111 ハードウェア
112 ソフトウェア
113 融合機起動部
121 撮像部
122 印刷部
123 その他のハードウェア
131 アプリケーション
132 プラットフォーム
133 アプリケーションプログラムインタフェース
134 エンジンインタフェース
135 仮想アプリケーションサービス
136 バージョンコントローラ
141 コピーアプリ
142 プリンタアプリ
143 スキャナアプリ
144 ファクシミリアプリ
145 ネットワークファイルアプリ
146 CSDKアプリ
147 JSDKアプリ
148 JSDKプラットフォーム
151 コントロールサービス
152 システムリソースマネージャ
153 ハンドラ
161 ネットワークコントロールサービス
162 ファクシミリコントロールサービス
163 デリバリコントロールサービス
164 エンジンコントロールサービス
165 メモリコントロールサービス
166 オペレーションパネルコントロールサービス
167 サーティフィケーションコントロールサービス
168 ユーザディレクトリコントロールサービス
169 システムコントロールサービス
171 ファクシミリコントロールユニットハンドラ
172 イメージメモリハンドラ
181 Webブラウザ
182 Webサーバソフト
183 SDKアプリケーションサービス
201 コントローラ
202 オペレーションパネル
203 ファクシミリコントロールユニット
211 CPU
212 ASIC
221 NB
222 SB
231 MEM−P
232 MEM−C
233 HDD
234 メモリカードスロット
235 メモリカード
241 NIC
242 USBデバイス
243 IEEE1394デバイス
244 セントロニクスデバイス
301 原稿セット部
302 給紙部
303 排紙部
311 タッチパネル
312 テンキー
313 スタートボタン
314 リセットボタン
315 機能キー
316 初期設定ボタン
321 ADF
322 フラットベッド
323 フラットベッドカバー
501 ユーザアプリ
511 JSDK GUI Manager
512 Task Bar Manager
521 JSDK Main
522 JSDK Environment
523 Locale Manager
531 Xlet Manager
532 Multi Xlet Manager
533 JSDK Manager
541 Send Manager
542 Event Manager
543 System Event Manager
544 Panel Manager
545 Install Manager
546 Server/Client Manager
547 Authentication Manager
551 JSDK API
552 JSDK API
553 JSDK Session
554 Native JSDK Session
555 CVM
DESCRIPTION OF
212 ASIC
221 NB
222 SB
231 MEM-P
232 MEM-C
233 HDD
234
242
322
512 Task Bar Manager
521 JSDK Main
522 JSDK Environment
523 Local Manager
531 Xlet Manager
532 Multi Xlet Manager
533 JSDK Manager
541 Send Manager
542 Event Manager
543 System Event Manager
544 Panel Manager
545 Install Manager
546 Server / Client Manager
547 Authentication Manager
551 JSDK API
552 JSDK API
553 JSDK Session
554 Native JSDK Session
555 CVM
Claims (8)
前記アプリケーションプログラムが利用する各機能の識別情報及び該機能のバージョンを示す第一の情報と、当該機器において利用可能な各機能の識別情報及び該機能のバージョンを示す第二の情報とを取得して、前記第一の情報と前記第二の情報とを照合することにより、前記アプリケーションプログラムが利用する各機能について、前記第一の情報に示されているバージョン以上のバージョンを当該機器が有しているか否かを判定する判定手段と、
前記判定手段が前記第一の情報又は前記第二の情報の構造に対応していない場合に、前記第一の情報及び前記第二の情報の構造に対応可能なように前記判定手段を更新する更新手段とを有し、
前記判定手段は、前記第一の情報に示されているバージョン以上のバージョンを当該機器が有していないと判定された第一の機能が有る場合に、機能の識別情報ごとに前記アプリケーションプログラムが利用するバージョンを当該機器が有していない場合に実行すべき処理が定義された第三の情報において、前記第一の機能に対して定義されている処理を実行する、
ことを特徴とする機器。 A device capable of executing an application program,
The first information indicating the identification information of each function used by the application program and the version of the function, and the second information indicating the identification information of each function available in the device and the version of the function are acquired. The device has a version higher than the version indicated in the first information for each function used by the application program by collating the first information with the second information. Determining means for determining whether or not
When the determination means does not correspond to the structure of the first information or the second information, the determination means is updated so as to be compatible with the structure of the first information and the second information. Updating means,
When the determination unit has a first function determined that the device does not have a version equal to or higher than the version indicated in the first information, the application program is set for each function identification information. In the third information in which processing to be executed when the device does not have a version to be used is defined, the processing defined for the first function is executed.
Equipment characterized by that.
前記更新手段は、前記第一の情報のバージョン又は前記第二の情報のバージョンに前記判定手段が対応していない場合に、前記第一の情報のバージョン及び前記第二の情報のバージョンに対応可能なように前記判定手段を更新する請求項1記載の機器。 Each of the first information and the second information includes information indicating each version,
The update means can correspond to the version of the first information and the version of the second information when the determination means does not correspond to the version of the first information or the version of the second information. The apparatus according to claim 1, wherein the determination unit is updated.
前記アプリケーションプログラムが利用する各機能の識別情報及び該機能のバージョンを示す第一の情報と、当該機器において利用可能な各機能の識別情報及び該機能のバージョンを示す第二の情報とを取得して、前記第一の情報と前記第二の情報とを照合することにより、前記アプリケーションプログラムが利用する各機能について、前記第一の情報に示されているバージョン以上のバージョンを当該機器が有しているか否かを判定する判定手順と、
前記判定手順が前記第一の情報又は前記第二の情報の構造に対応していない場合に、前記第一の情報及び前記第二の情報の構造に対応可能なように前記判定手順を更新する更新手順とを有し、
前記判定手順は、前記第一の情報に示されているバージョン以上のバージョンを当該機器が有していないと判定された第一の機能が有る場合に、機能の識別情報ごとに前記アプリケーションプログラムが利用するバージョンを当該機器が有していない場合に実行すべき処理が定義された第三の情報において、前記第一の機能に対して定義されている処理を実行する、
ことを特徴とする情報処理方法。 An information processing method executed by a device capable of executing an application program,
The first information indicating the identification information of each function used by the application program and the version of the function, and the second information indicating the identification information of each function available in the device and the version of the function are acquired. The device has a version higher than the version indicated in the first information for each function used by the application program by collating the first information with the second information. A determination procedure for determining whether or not
When the determination procedure does not correspond to the structure of the first information or the second information, the determination procedure is updated so as to be compatible with the structure of the first information and the second information. An update procedure,
In the determination procedure, when there is a first function determined that the device does not have a version equal to or higher than the version indicated in the first information, the application program is set for each function identification information. In the third information in which processing to be executed when the device does not have a version to be used is defined, the processing defined for the first function is executed.
An information processing method characterized by the above.
前記アプリケーションプログラムが利用する各機能の識別情報及び該機能のバージョンを示す第一の情報と、当該機器において利用可能な各機能の識別情報及び該機能のバージョンを示す第二の情報とを取得して、前記第一の情報と前記第二の情報とを照合することにより、前記アプリケーションプログラムが利用する各機能について、前記第一の情報に示されているバージョン以上のバージョンを当該機器が有しているか否かを判定する判定手順と、
前記判定手順が前記第一の情報又は前記第二の情報の構造に対応していない場合に、前記第一の情報及び前記第二の情報の構造に対応可能なように前記判定手順を更新する更新手順とを実行させ、
前記判定手順は、前記第一の情報に示されているバージョン以上のバージョンを当該機器が有していないと判定された第一の機能が有る場合に、機能の識別情報ごとに前記アプリケーションプログラムが利用するバージョンを当該機器が有していない場合に実行すべき処理が定義された第三の情報において、前記第一の機能に対して定義されている処理を実行するプログラム。 To a device that can execute application programs,
The first information indicating the identification information of each function used by the application program and the version of the function, and the second information indicating the identification information of each function available in the device and the version of the function are acquired. The device has a version higher than the version indicated in the first information for each function used by the application program by collating the first information with the second information. A determination procedure for determining whether or not
When the determination procedure does not correspond to the structure of the first information or the second information, the determination procedure is updated so as to be compatible with the structure of the first information and the second information. Update procedure,
In the determination procedure, when there is a first function determined that the device does not have a version equal to or higher than the version indicated in the first information, the application program is set for each function identification information. A program for executing processing defined for the first function in the third information in which processing to be executed when the device does not have a version to be used is defined.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013101128A JP5686155B2 (en) | 2005-03-31 | 2013-05-13 | Apparatus, information processing system, information processing method, program, and recording medium |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005102852 | 2005-03-31 | ||
JP2005102852 | 2005-03-31 | ||
JP2013101128A JP5686155B2 (en) | 2005-03-31 | 2013-05-13 | Apparatus, information processing system, information processing method, program, and recording medium |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011173599A Division JP5333545B2 (en) | 2005-03-31 | 2011-08-09 | Apparatus, information processing system, information processing method, program, and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013164866A JP2013164866A (en) | 2013-08-22 |
JP5686155B2 true JP5686155B2 (en) | 2015-03-18 |
Family
ID=44192148
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011015554A Active JP4876188B2 (en) | 2005-03-31 | 2011-01-27 | Image forming apparatus, information processing method, program, and recording medium |
JP2011173599A Active JP5333545B2 (en) | 2005-03-31 | 2011-08-09 | Apparatus, information processing system, information processing method, program, and recording medium |
JP2013101128A Expired - Fee Related JP5686155B2 (en) | 2005-03-31 | 2013-05-13 | Apparatus, information processing system, information processing method, program, and recording medium |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011015554A Active JP4876188B2 (en) | 2005-03-31 | 2011-01-27 | Image forming apparatus, information processing method, program, and recording medium |
JP2011173599A Active JP5333545B2 (en) | 2005-03-31 | 2011-08-09 | Apparatus, information processing system, information processing method, program, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (3) | JP4876188B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6226709B2 (en) * | 2013-11-15 | 2017-11-08 | キヤノン株式会社 | Image forming apparatus, control method therefor, and program |
JP7116292B2 (en) | 2017-09-26 | 2022-08-10 | 富士通株式会社 | Information processing device, information processing system and program |
JP7488507B2 (en) * | 2020-03-06 | 2024-05-22 | 京セラドキュメントソリューションズ株式会社 | Electronic devices and programs |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04358169A (en) * | 1991-05-28 | 1992-12-11 | Tokyo Electric Co Ltd | Electrophotographic copying device |
JPH10171634A (en) * | 1996-12-05 | 1998-06-26 | Fuji Xerox Co Ltd | Information processing terminal and program updating system |
JPH10232774A (en) * | 1997-02-19 | 1998-09-02 | Hitachi Ltd | Edition managing system for translation execution system |
JP2001051857A (en) * | 1999-08-04 | 2001-02-23 | Fujitsu Ten Ltd | Method for software execution on network terminal |
JP3578266B2 (en) * | 2000-01-06 | 2004-10-20 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Application launch method, software product for application launch |
JP4365148B2 (en) * | 2002-07-19 | 2009-11-18 | 株式会社リコー | Image forming apparatus, wrapping processing method, and program |
JP2004129220A (en) * | 2002-07-31 | 2004-04-22 | Ricoh Co Ltd | Image forming apparatus and version check method |
JP3962679B2 (en) * | 2002-12-05 | 2007-08-22 | キヤノン株式会社 | Printing control method and apparatus |
JP2004312711A (en) * | 2003-03-25 | 2004-11-04 | Ricoh Co Ltd | Image forming apparatus and method for operating image forming apparatus by using remote application |
JP4200837B2 (en) * | 2003-03-28 | 2008-12-24 | コニカミノルタホールディングス株式会社 | Image forming apparatus and image forming program / driver management system |
JP2005038011A (en) * | 2003-07-15 | 2005-02-10 | Canon Inc | Network system and its control method |
-
2011
- 2011-01-27 JP JP2011015554A patent/JP4876188B2/en active Active
- 2011-08-09 JP JP2011173599A patent/JP5333545B2/en active Active
-
2013
- 2013-05-13 JP JP2013101128A patent/JP5686155B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011101422A (en) | 2011-05-19 |
JP4876188B2 (en) | 2012-02-15 |
JP2012018680A (en) | 2012-01-26 |
JP2013164866A (en) | 2013-08-22 |
JP5333545B2 (en) | 2013-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4704245B2 (en) | Image forming apparatus, information processing method, program, and recording medium | |
JP4597834B2 (en) | Image forming apparatus, information processing method, information processing program, and recording medium | |
JP4625343B2 (en) | Image forming apparatus, terminal apparatus, information processing method, information processing program, and recording medium | |
US7812978B2 (en) | Application executing method, information processing apparatus, image forming apparatus, terminal equipment, information processing method and computer-readable storage medium | |
US8432562B2 (en) | Image processing apparatus, method, program, and computer readable recording medium for controlling operation switching and displaying at occurrence of error conditions | |
US8767244B2 (en) | Image forming apparatus, information processing apparatus, information processing method, information processing program and storage medium | |
JP4843386B2 (en) | Apparatus, information processing method, information processing program, and recording medium | |
US20060140658A1 (en) | Image forming apparatus, install method, and computer readable recording medium where an install program is recorded | |
JP5664692B2 (en) | Electronic device, image forming apparatus, information processing method, information processing program, and recording medium | |
JP5686155B2 (en) | Apparatus, information processing system, information processing method, program, and recording medium | |
JP2007048270A (en) | Image forming apparatus, information processing apparatus, information processing method, information processing program and recording medium | |
JP2009140347A (en) | Information processor, image forming apparatus, image processing method, program, and recording medium | |
JP2013101632A (en) | Information processing apparatus, image forming apparatus, information processing method, and system | |
JP4459033B2 (en) | Image forming apparatus, terminal apparatus, information processing method, information processing program, and recording medium | |
JP2005269439A (en) | Image forming apparatus, information processing method, information processing program, and recording medium | |
JP5565439B2 (en) | Apparatus, information processing method, information processing program, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140121 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140131 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140701 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140821 |
|
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: 20141224 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150106 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5686155 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |