JP5333545B2 - 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 PDF

Info

Publication number
JP5333545B2
JP5333545B2 JP2011173599A JP2011173599A JP5333545B2 JP 5333545 B2 JP5333545 B2 JP 5333545B2 JP 2011173599 A JP2011173599 A JP 2011173599A JP 2011173599 A JP2011173599 A JP 2011173599A JP 5333545 B2 JP5333545 B2 JP 5333545B2
Authority
JP
Japan
Prior art keywords
information
function
application program
application
version
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.)
Active
Application number
JP2011173599A
Other languages
Japanese (ja)
Other versions
JP2012018680A (en
Inventor
勉 大石
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2011173599A priority Critical patent/JP5333545B2/en
Publication of JP2012018680A publication Critical patent/JP2012018680A/en
Application granted granted Critical
Publication of JP5333545B2 publication Critical patent/JP5333545B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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.

そこで上記課題を解決するため、本発明は、アプリケーションプログラムを追加可能な機器であって、前記アプリケーションプログラムは、当該アプリケーションプログラムに関する第一の情報を有し、当該機器内で起動すると、当該機器の情報である第二の情報を取得して、前記第一の情報と前記第二の情報とを照合することにより当該アプリケーションプログラムの実行の可否を判定する判定手段と、前記判断手段の判定結果に応じて当該アプリケーションプログラムの動作を制御する実行制御手段とをし、前記アプリケーションプログラムは、当該機器の機種名に対応付けて保持されている、当該機器の機種に応じて相違する機能の種類のうち当該機器が有している機能の種類を当該機器より取得して、当該機器の機種に応じて相違する機能の種類に関しては、取得された種類に係る機能のみを利用可能とすることを特徴とする。
Therefore, in order to solve the above-described problem, the present invention is a device to which an application program can be added. The application program has first information related to the application program , and when the device starts up in the device, The second information, which is information, is obtained by comparing the first information with the second information to determine whether the application program can be executed. depending possess an execution control means for controlling the operation of the application program, the application program in association with the model name of the device is held, the types of functions which differ depending on the model of the device The type of function that the device has is acquired from the device, and differs according to the model of the device. Regarding the type of that function, characterized by available only a function of the acquired type.

このような機器では、機器と機器用のアプリケーションの不適合に伴う不都合の発生を回避することができる。   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 image 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 shows a multi-function machine corresponding to an embodiment of the present invention. 図1の融合機に係るハードウェア構成図である。It is a hardware block diagram concerning the compound machine of Drawing 1. 図1の融合機に係る外観図である。It is an external view which concerns on the compound machine of FIG. オペレーションパネルを表す。Represents the operation panel. 図1のJSDKアプリとJSDKプラットフォームのクラス図である。It is a class diagram of the JSDK application and JSDK platform of FIG. 画像形成装置や画像形成装置用のアプリケーションの機種やバージョンについて解説するための解説図である。It is an explanatory diagram for explaining the image forming apparatus and the model and version of an application for the image forming apparatus. JSDKアプリの起動制御の第1実施例に係る説明図である。It is explanatory drawing which concerns on 1st Example of starting control of a JSDK application. JSDKアプリの起動制御の第1実施例に係るフロー図である。It is a flowchart which concerns on 1st Example of starting control of a JSDK application. JSDKアプリの起動制御の第2実施例に係る説明図である。It is explanatory drawing which concerns on 2nd Example of starting control of a JSDK application. JSDKアプリの起動制御の第2実施例に係るフロー図である。It is a flowchart which concerns on 2nd Example of starting control of a JSDK application. JSDKアプリの起動制御の第3実施例に係る説明図である。It is explanatory drawing which concerns on 3rd Example of starting control of a JSDK application. JSDKアプリの起動制御の第3実施例に係るフロー図である。It is a flowchart which concerns on 3rd Example of starting control of a JSDK application. JSDKアプリの起動制御の第4実施例に係る説明図である。It is explanatory drawing which concerns on 4th Example of starting control of a JSDK application. JSDKアプリの起動制御の第4実施例に係るフロー図である。It is a flowchart which concerns on 4th Example of starting control of a JSDK application. 機器サポート情報の例を示す図である。It is a figure which shows the example of apparatus support information. アプリ利用情報の例を示す図である。It is a figure which shows the example of application usage information. アクション情報の例を示す図である。It is a figure which shows the example of action information. プロセス依存情報を概念的に示す図である。It is a figure which shows process dependence information notionally.

図1は、本発明の実施例に該当する融合機101を表す。図1の融合機101は、種々のハードウェア111と、種々のソフトウェア112と、融合機起動部113により構成される。   FIG. 1 shows a compound machine 101 corresponding to an embodiment of the present invention. The compound machine 101 shown in FIG. 1 includes various hardware 111, various software 112, and a compound machine starting unit 113.

融合機101のハードウェア111としては、撮像部121と、印刷部122と、その他のハードウェア123が存在する。撮像部121は、読取原稿から画像(画像データ)を読み取るためのハードウェアである。印刷部122は、画像(画像データ)を印刷用紙に印刷するためのハードウェアである。   As the hardware 111 of the multi-function peripheral 101, there are an imaging unit 121, a printing unit 122, and other hardware 123. The imaging unit 121 is hardware for reading an image (image data) from a read original. The printing unit 122 is hardware for printing an image (image data) on printing paper.

融合機101のソフトウェア112としては、種々のアプリケーション131と、種々のプラットフォーム132が存在する。これらのプログラムは、UNIX(登録商標)等のOS(オペレーティングシステム)によりプロセス単位で並列的に実行される。   As the software 112 of the multi-function peripheral 101, there are various applications 131 and various platforms 132. These programs are executed in parallel on a process basis by an OS (Operating System) such as UNIX (registered trademark).

アプリケーション131としては、コピー用のアプリケーションであるコピーアプリ141、プリンタ用のアプリケーションであるプリンタアプリ142、スキャナ用のアプリケーションであるスキャナアプリ143、ファクシミリ用のアプリケーションであるファクシミリアプリ144、ネットワークファイル用のアプリケーションであるネットワークファイルアプリ145が存在する。そしてさらに、Webページの閲覧用のソフトウェアであるWebブラウザ181、Webページの配信用のソフトウェアであるWebサーバソフト182、CSDKアプリ146やJSDKアプリ147の制御用のソフトウェアであるSDKアプリケーションサービス(SAS)183が存在する。   The application 131 includes a copy application 141 that is a copy application, a printer application 142 that is a printer application, a scanner application 143 that is a scanner application, a facsimile application 144 that is a facsimile application, and a network file application. There is a network file application 145. Further, a web browser 181 that is web page browsing software, a web server software 182 that is web page distribution software, an SDK application service (SAS) that is software for controlling the CSDK application 146 and the JSDK application 147. 183 exists.

アプリケーション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 application 131 can be developed using a dedicated SDK (software development kit). An application 131 developed using the SDK is called an SDK application. As the dedicated SDK, “CSDK” for developing the application 131 in C language and “JSDK” for developing the application 131 in Java (registered trademark) language are provided. An application 131 developed using CSDK is called a “CSDK application”, and an application 131 developed using JSDK is called a “JSDK application”. The MFP 101 in FIG. 1 also has a CSDK application 146 and a JSDK application 147. 1 further includes a JSDK platform 148 as software 112 that mediates between the JSDK application 147 written in the Java (registered trademark) language and the other software 112 written in the C language.

プラットフォーム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 platform 132 includes various control services 151, a system resource manager 152, and various handlers 153. The control service 151 includes a network control service (NCS) 161, a facsimile control service (FCS) 162, a delivery control service (DCS) 163, an engine control service (ECS) 164, a memory control service (MCS) 165, and an operation panel control service. There are (OCS) 166, a certification control service (CCS) 167, a user directory control service (UCS) 168, and a system control service (SCS) 169. As the handler 153, there are a facsimile control unit handler (FCUH) 171 and an image memory handler (IMH) 172.

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 DCS 163 performs control related to the distribution processing of the stored document. The process of the ECS 164 performs control related to the imaging unit 121 and the printing unit 122. The process of the MCS 165 controls the memory and hard disk drive. The process of the OCS 166 performs control related to the operation panel. The process of the CCS 167 performs control related to authentication processing and billing processing. The process of the UCS 168 performs control related to management of user information. The process of the SCS 169 performs control related to system management.

アプリケーション131とプラットフォーム132の仲介を行うソフトウェア112として、仮想アプリケーションサービス(VAS)135が存在する。VAS135は、アプリケーション131をクライアントとするサーバプロセスとして動作すると共に、プラットフォーム132をサーバとするクライアントプロセスとして動作する。VAS135は、アプリケーション131から見てプラットフォーム132を隠蔽するラッピング機能を備え、プラットフォーム132のバージョンアップに伴うバージョン差を吸収する役割等を担う。   A virtual application service (VAS) 135 exists as software 112 that mediates between the application 131 and the platform 132. The VAS 135 operates as a server process using the application 131 as a client, and also operates as a client process using the platform 132 as a server. The VAS 135 has a wrapping function that hides the platform 132 when viewed from the application 131, and plays a role of absorbing version differences associated with version upgrades of the platform 132.

融合機起動部113は、融合機101の電源投入時に最初に実行される。これにより、UNIX(登録商標)等のOSが起動され、アプリケーション131やプラットフォーム132が起動される。これらのプログラムは、ハードディスクドライブやメモリカードに蓄積されており、ハードディスクドライブやメモリカードから再生されて、メモリに起動されることになる。   The MFP starter 113 is executed first when the MFP 101 is turned on. As a result, an OS such as UNIX (registered trademark) is activated, and the application 131 and the platform 132 are activated. These programs are stored in the hard disk drive or the memory card, and are reproduced from the hard disk drive or the memory card and activated in the memory.

図2は、図1の融合機101に係るハードウェア構成図である。融合機101のハードウェア111としては、コントローラ201と、オペレーションパネル202と、ファクシミリコントロールユニット(FCU)203と、撮像部121と、印刷部122が存在する。   FIG. 2 is a hardware configuration diagram according to the MFP 101 of FIG. The hardware 111 of the multi-function peripheral 101 includes a controller 201, an operation panel 202, a facsimile control unit (FCU) 203, an imaging unit 121, and a printing unit 122.

コントローラ201は、CPU211、ASIC212、NB221、SB222、MEM−P231、MEM−C232、HDD(ハードディスクドライブ)233、メモリカードスロット234、NIC(ネットワークインタフェースコントローラ)241、USBデバイス242、IEEE1394デバイス243、セントロニクスデバイス244により構成される。   The controller 201 includes a CPU 211, ASIC 212, NB221, SB222, MEM-P231, MEM-C232, HDD (hard disk drive) 233, memory card slot 234, NIC (network interface controller) 241, USB device 242, IEEE 1394 device 243, and Centronics device. 244.

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 CPU 211 is an IC for various information processing. The ASIC 212 is an IC for various image processing. The NB 221 is a north bridge of the controller 201. The SB 222 is a south bridge of the controller 201. The MEM-P 231 is a system memory of the multifunction machine 101. The MEM-C 232 is a local memory of the multifunction machine 101. The HDD 233 is a storage of the multifunction machine 101. The memory card slot 234 is a slot for setting the memory card 235. The NIC 241 is a controller for network communication using a MAC address. The USB device 242 is a device for providing a USB standard connection terminal. The IEEE 1394 device 243 is a device for providing a connection terminal of the IEEE 1394 standard. The Centronics device 244 is a device for providing a Centronics specification connection terminal.

オペレーションパネル202は、オペレータが融合機101に入力を行うためのハードウェア(操作部)であると共に、オペレータが融合機101から出力を得るためのハードウェア(表示部)である。   The operation panel 202 is hardware (operation unit) for an operator to input to the multifunction machine 101 and hardware (display unit) for the operator to obtain an output from the multifunction machine 101.

図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 imaging unit 121, the position of the printing unit 122, and the position of the operation panel 202. FIG. 3 further illustrates a document setting unit 301 that is a setting destination of a read document, a paper feeding unit 302 that is a printing paper feeding destination, and a paper discharging unit 303 that is a printing paper discharging destination. .

オペレーションパネル202は、図4のように、タッチパネル311と、テンキー312と、スタートボタン313と、リセットボタン314と、機能キー315と、初期設定ボタン316により構成される。タッチパネル311は、タッチ操作で入力を行うためのハードウェア(タッチ操作部)であると共に、画面表示で出力を得るためのハードウェア(画面表示部)である。テンキー312は、キー(ボタン)操作で数字入力を行うためのハードウェアである。スタートボタン313は、ボタン操作でスタート操作を行うためのハードウェアである。リセットボタン314は、ボタン操作でリセット操作を行うためのハードウェアである。機能キー315は、キー(ボタン)操作でCSDKアプリ146やJSDKアプリ147による操作画面を表示させるためのハードウェアである。初期設定ボタン316は、ボタン操作で初期設定画面を表示させるためのハードウェアである。   As shown in FIG. 4, the operation panel 202 includes a touch panel 311, a numeric keypad 312, a start button 313, a reset button 314, a function key 315, and an initial setting button 316. The touch panel 311 is hardware (touch operation unit) for inputting by a touch operation and hardware (screen display unit) for obtaining an output by screen display. The numeric keypad 312 is hardware for inputting numbers by operating keys (buttons). The start button 313 is hardware for performing a start operation by a button operation. The reset button 314 is hardware for performing a reset operation by a button operation. The function key 315 is hardware for displaying an operation screen by the CSDK application 146 or the JSDK application 147 by a key (button) operation. The initial setting button 316 is hardware for displaying an initial setting screen by button operation.

原稿セット部301は、ADF(自動原稿搬送装置)321と、フラットベッド322と、フラットベッドカバー323により構成される。給紙部302は、4個の給紙トレイにより構成される。排紙部303は、1個の排紙トレイにより構成される。ADF321には、複数枚の読取原稿を重ねてセットすることができる。フラットベッド322には、読取原稿を下向きにセットする。   The document setting unit 301 includes an ADF (automatic document feeder) 321, a flat bed 322, and a flat bed cover 323. The paper feed unit 302 includes four paper feed trays. The paper discharge unit 303 includes a single paper discharge tray. A plurality of read originals can be set on the ADF 321 in an overlapping manner. On the flat bed 322, the read original is set downward.

(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 application 147 and the JSDK platform 148 of FIG. The JSDK application 147 and the JSDK platform 148 are executed on the same process as one process as a whole. Each block in the JSDK application 147 and the JSDK platform 148 is executed in parallel (multithread) in units of threads as threads on one process. The JSDK application 147 and the JSDK platform 148 are collectively translated from source code to bytecode by a Java (registered trademark) compiler, and sequentially executed by a Java (registered trademark) virtual machine. The JSDK application 147 and the JSDK platform 148 are implemented based on the Personal Basis Profile of Java (registered trademark) 2 Micro Edition.

JSDKアプリ147としては、ユーザアプリ501と、JSDK GUI Manager511と、Task Bar Manager512等が存在する。   As the JSDK application 147, there are a user application 501, a JSDK GUI Manager 511, a Task Bar Manager 512, and the like.

ユーザアプリ501は、融合機101のユーザ(例えばベンダ)がJSDKを使用して開発したJSDKアプリである。JSDK GUI Manager511は、他のJSDKアプリ(ユーザアプリ501等)を操作対象とする操作画面の表示等を行うJSDKアプリである。Task Bar Manager512は、他のJSDKアプリ(ユーザアプリ501等)を操作対象とするタスクバーの表示等を行うJSDKアプリである。   The user application 501 is a JSDK application developed by a user (for example, a vendor) of the MFP 101 using JSDK. The JSDK GUI Manager 511 is a JSDK application that displays an operation screen for other JSDK applications (such as the user application 501). The Task Bar Manager 512 is a JSDK application that displays a task bar that operates on another JSDK application (such as the user application 501).

ユーザアプリ501はここでは、スタンドアロンアプリケーションやアプレットと並ぶJava(登録商標)アプリケーションであるXletである。JSDK GUI Manager511とTask Bar Manager512はここでは、独自の拡張を施したXlet(XletEx)である。   Here, the user application 501 is an Xlet that is a Java (registered trademark) application along with a stand-alone application or an applet. Here, the JSDK GUI Manager 511 and the Task Bar Manager 512 are Xlet (XletEx) with a unique extension.

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 platform 148, the JSDK Main521, a JSDK Environment522, the Locale Manager523, the Xlet Managers, the Multi Xlet Manager532, a JSDK Manager533, and Send Manager541, and Event Manager542, the System Event Manager543, and Panel Manager544, Install Manager545 And a class such as Server / Client Manager 546 exists.

JSDK Main521は、JSDKシステムの起動設定を行うクラスである。JSDK Environment522は、JSDKシステムの起動環境設定を行うクラスである。Locale Manager523は、国際化対応(言語指定)を行うクラスである。   The JSDK Main 521 is a class that performs startup setting of the JSDK system. The JSDK Environment 522 is a class for setting the startup environment of the JSDK system. The Local Manager 523 is a class that performs internationalization (language designation).

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 Xlet Manager 531 is a class that manages the Xlet life cycle on a one-to-one basis. Here, the life cycle of five Xlets is managed by five Xlet Managers 531 on a one-to-one basis. The Multi Xlet Manager 532 is a class that manages the life cycle of all Xlet Managers 531. Here, the life cycle of the five Xlet Managers 531 is all managed by one Multi Xlet Manager 532. The JSDK Manager 533 is a class that manages the life cycle of the entire JSDK system. For example, the life cycle of Multi Xlet Manager 532, Send Manager 541, Event Manager 542, System Event Manager 543, Panel Manager 544, Install Manager 545, Server / Client Manager 546 is managed by JSDK 33.

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 platform 132 of FIG. The Panel Manager 544 is a class that performs arbitration when one Xlet occupies the screen of the operation panel 202. The Install Manager 545 is a class that manages installation and uninstallation from SDcard and Web.

図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 API 551 and JSDK API 552 as APIs. Note that the difference between Xlet and XletEx is that the JSDK API 551 can be used and the JSDK platform 148 can be accessed to access the object. Further, the MFP 101 shown in FIG. 1 includes a JSDK Session 553 and a Native JSDK Session 554 that serve as interfaces between the C language and the Java (registered trademark) language as elements relating to the JSDK system shown in FIG. 1 further includes a Java (registered trademark) program for sequentially executing a Java (registered trademark) program translated from source code into bytecode by a Java (registered trademark) compiler as an element related to the JSDK system of FIG. There is a CVM (compact virtual machine) 555 which is a (registered trademark) virtual machine.

(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 JSDK application 147 will be described.

図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 multifunction machine 101 in FIG. 1 also corresponds to one model of an image forming apparatus in which various models exist. The application 131 and the platform 132 of the multi-function peripheral 101 have various versions such as ver1.0, ver1.1, ver1.2, ver2.0, and ver3.0 as shown in FIG.

さて、当該融合機101のプラットフォーム132のバージョンをアップさせる場合、バージョンアップ前のプラットフォーム132とは適合していたアプリケーション131がバージョンアップ後のプラットフォーム132とは適合しなくなる事態は回避すべきである。そこで、当該融合機101のプラットフォーム132をバージョンをアップさせる場合には、当該融合機101のVAS135のバージョンもアップさせる事で、プラットフォーム132のバージョンアップ前後のバージョン差をVAS135に吸収させる事にしている。なお、当該融合機101では、当該融合機101のVAS135のバージョンをもって当該融合機101のバージョンとしている。   When the version of the platform 132 of the MFP 101 is upgraded, it should be avoided that the application 131 that is compatible with the platform 132 before the upgrade is not compatible with the platform 132 after the upgrade. Therefore, when upgrading the version of the platform 132 of the MFP 101, the VAS 135 absorbs the version difference between before and after the upgrade of the platform 132 by increasing the version of the VAS 135 of the MFP 101. . In the multi-function peripheral 101, the version of the multi-function apparatus 101 is the version of the VAS 135 of the multi-function apparatus 101.

(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 JSDK application 147.

第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 JSDK application 147 of FIG. 7 will be described as a theme. The JSDK application 147 in FIG. 7 is stored in the SD memory card 235 inserted in the SD memory card slot 234. The SAS 183 can activate the JSDK application 147 in FIG. 7 from the SD memory card 235 inserted into the SD memory card slot 234 into the multi-function peripheral 101.

図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 JSDK application 147 of FIG. 7 corresponds to ver2.0 of the JSDK application in which ver1.0, ver1.1, ver1.2, ver2.0, and ver3.0 exist. The version of the VAS 135 corresponding to the version “ver2.0” of the JSDK application 147 in FIG. 7 is assumed to be “ver3.0”. Therefore, the JSDK application 147 of FIG. 7 operates normally because it matches the version of the VAS 135 if the version of the VAS 135 is greater than or equal to 3.0. However, if the version of the VAS 135 is less than version 3.0, the JSDK application 147 It will not work properly because it does not fit.

そこで、図7のJSDKアプリ147が融合機101内で起動した際、図7のJSDKアプリ147は、自身のバージョンと当該融合機101のバージョン(当該融合機101のVAS135のバージョン)とを照合して、自身のバージョンと当該融合機101のバージョンとが適合する場合は起動を継続し、自身のバージョンと当該融合機101のバージョンとが適合しない場合は起動を解除するものとする。   Therefore, when the JSDK application 147 in FIG. 7 is activated in the multifunction peripheral 101, the JSDK application 147 in FIG. 7 compares the version of the multifunction peripheral 101 with the version of the multifunction peripheral 101 (the version of the VAS 135 of the multifunction peripheral 101). If the version of the MFP 101 and the version of the MFP 101 match, the activation is continued. If the version of the MFP 101 does not match the version of the MFP 101, the activation is canceled.

すなわち、図7のJSDKアプリ147は、当該融合機101のバージョンが、自身のバージョンと対応するバージョンである場合または自身のバージョンと対応するバージョンより新しいバージョンである場合は起動を継続し、当該融合機101のバージョンが、自身のバージョンと対応するバージョンより古いバージョンである場合は起動を解除することになる。   That is, the JSDK application 147 of FIG. 7 continues to be activated when the version of the fusion machine 101 is a version corresponding to its own version or a version newer than the version corresponding to its own version. If the version of the machine 101 is older than the version corresponding to its own version, the activation is cancelled.

これにより、融合機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 MFP 101 and the JSDK application 147. The JSDK application 147 checks whether or not the MFP 101 and the JSDK application 147 are compatible. If the MFP 101 and the JSDK application 147 are not compatible, the JSDK application 147 cancels the activation by itself. Because. Since the execution subject of activation control is the application side rather than the multifunction machine side, it can be said that the division of activation control countermeasures is delegated from the multifunction machine manufacturer to the application vendor.

ここで、融合機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 compound machine 101 of FIG. 1, an API 133 that receives a processing request using a predefined function is used to exchange a processing request from the application 131 to the platform 132. The API 133 of the compound machine 101 is composed of various types of APIs up to several hundred types. In the compound machine 101 of FIG. 1, in order to ensure upward compatibility of the version of the compound machine 101, it is assumed that the API is “added” but not “deleted” with the version upgrade of the compound machine 101. As a result, the JSDK application 147 in FIG. 7 is compatible with the fusion machine 101 having a version higher than the version corresponding to its own version, and with the fusion machine 101 having a version lower than the version corresponding to its own version. It will not fit.

図8は、JSDKアプリ147の起動制御の第1実施例に係るフロー図である。   FIG. 8 is a flowchart according to the first example of the activation control of the JSDK application 147.

融合機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 apparatus starting unit 113 starts the SAS 183 (S12). Subsequently, the SAS 183 activates the CVM 555 (S13). Subsequently, the SAS 183 activates the JSDK application 147 using the CVM 555 (S14). Subsequently, the JSDK application 147 acquires information related to the version of the VAS 135 in the multi-function peripheral 101 from the VAS 135 in the multi-function apparatus 101 (S15). It is assumed that the VAS 135 holds information related to its version. Subsequently, the JSDK application 147 collates its own version with the version of the VAS 135 in the multi-function peripheral 101 (S16). It is assumed that the JSDK application 147 holds information related to its version. When the JSDK application 147 matches the version of the VAS 135 in the MFP 101 (S17), the JSDK application 147 continues to start (S18), and the version of the VAS 135 in the MFP 101 If is not suitable (S17), the activation is canceled (S19).

(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 JSDK application 147.

第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 JSDK application 147 in FIG. 9 will be described as a theme. The JSDK application 147 in FIG. 9 is stored in the SD memory card 235 inserted in the SD memory card slot 234. The SAS 183 can activate the JSDK application 147 in FIG. 9 from the SD memory card 235 inserted into the SD memory card slot 234 into the multi-function peripheral 101.

図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 multifunction machine 101 in FIG. 1, but the models of the multifunction machine 101 in FIG. 9A and the multifunction machine 101 in FIG. 9B are different. 9A is a color fusion machine, and the fusion machine 101 in FIG. 9B is a monochrome fusion machine. Accordingly, the types of functions supported by the multifunction machine 101 in FIG. 9A and the multifunction machine 101 in FIG. 9B are different. In large units, the MFP 101 in FIG. 9A supports monochrome copy function, color copy function, monochrome print function, color print function, etc., and the MFP 101 in FIG. 9B supports monochrome copy function, monochrome print function, etc. To do. Speaking in small units, the MFP 101 in FIG. 9A supports monochrome API, color API, and the like, and the MFP 101 in FIG. 9B supports monochrome API and the like. Therefore, when the JSDK application 147 in FIGS. 9A and 9B tries to use the function for color in the multi-function peripheral 101 in FIGS. 9A and 9B, the JSDK application 147 in FIG. 9A operates normally. The JSDK application 147 will not operate normally.

そこで、図9のJSDKアプリ147が融合機101内で起動した際、図9のJSDKアプリ147は、当該融合機101でサポートされている機能の種類を確認し、当該融合機101でサポートされていない機能についてはその利用を回避することで、当該融合機101でサポートされている機能のみを利用するものとする。   Therefore, when the JSDK application 147 in FIG. 9 is activated in the multi-function peripheral 101, the JSDK application 147 in FIG. 9 confirms the types of functions supported by the multi-function apparatus 101 and is supported by the multi-function apparatus 101. It is assumed that only functions supported by the multi-function peripheral 101 are used by avoiding the use of functions that are not present.

これにより、融合機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 MFP 101 and the JSDK application 147. This is because the JSDK application 147 confirms the types of functions supported by the multifunction peripheral 101 by itself, and the JSDK application 147 avoids the use of the functions not supported by the multifunction peripheral 101 by itself. The JSDK application 147 executes only the compatible part of the fusion machine 101 and the JSDK application 147 by avoiding the execution of the incompatible part of the fusion machine 101 and the JSDK application 147. Since the execution subject of activation control (function use control at activation) is not the fusion machine side but the application side, it can be said that the division of activation control measures is delegated from the fusion machine manufacturer to the application vendor.

ただし、図9のJSDKアプリ147は、画像形成装置でサポートされているか否かが画像形成装置の各機種で共通する「固定機能」については、当該融合機101でサポートされているか否かを確認せず、画像形成装置でサポートされているか否かが画像形成装置の各機種で相違する「拡張機能」についてのみ、当該融合機101でサポートされているか否かを確認するものとする。   However, the JSDK application 147 in FIG. 9 confirms whether or not the “fixed function” that is common to each model of the image forming apparatus is supported by the image forming apparatus 101. Instead, it is confirmed whether or not only the “extended function” in which the image forming apparatus is supported is different for each model of the image forming apparatus is supported by the multifunction peripheral 101.

なお、どの機能を「固定機能」としてどの機能を「拡張機能」とするかは任意である。例えば、画像形成装置の機種としてモノクロ融合機,カラー融合機,モノクロプリンタ,カラープリンタが想定される場合、モノクロプリント機能を「固定機能」として、カラープリント機能,モノクロコピー機能,カラーコピー機能,タッチパネル機能,ストレージ機能を「拡張機能」とすることが想定される。   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 JSDK application 147 of FIG. 9 may reflect the fact on the user interface when avoiding the use of a function that is not supported by the MFP 101. For example, to avoid using the color copy function, the color copy screen or the color copy start button may not be displayed, and an error message may be displayed when the color copy screen or the color copy start button is operated. It may be.

図10は、JSDKアプリ147の起動制御の第2実施例に係るフロー図である。   FIG. 10 is a flowchart according to the second embodiment of the startup control of the JSDK application 147.

融合機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 apparatus activation unit 113 activates the SAS 183 (S22). Subsequently, the SAS 183 activates the CVM 555 (S23). Subsequently, the SAS 183 activates the JSDK application 147 using the CVM 555 (S24). Subsequently, the JSDK application 147 acquires information related to the functions supported by the multifunction peripheral 101 from the VAS 135 in the multifunction peripheral 101 (S25). It is assumed that the VAS 135 holds a correspondence table between the model name of the image forming apparatus and the types of functions supported by the image forming apparatus. Subsequently, the JSDK application 147 confirms the types of functions supported by the multifunction machine 101 (S26). The JSDK application 147 does not avoid the use of the function (S27) supported by the MFP 101 (S28), and avoids the use of the function (S27) not supported by the MFP 101. (S29).

(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 JSDK application 147.

第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 JSDK application 147, CVM 555A, and CVM 555B in FIG. 11 will be described as subjects. The JSDK application 147, CVM 555 A, and CVM 555 B of FIG. 11 are stored in the SD memory card 235 inserted in the SD memory card slot 234. The SAS 183 can activate the JSDK application 147, CVM 555A, and CVM 555B of FIG. 11 from the SD memory card 235 inserted in the SD memory card slot 234 into the multi-function peripheral 101.

画像形成装置の機種はここでは、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 JSDK application 147, the JSDK platform 148, and the CVM 555 are stored in one SD memory card 235 and sold. In this case, the issue is the model group dependency of CVM555. Every time a certain model group is released, if the SD memory card 235 for the model group equipped with the CVM 555 for that model group is released, N types of SD memory cards 235 are released after the N types of model groups are released. This is because it is troublesome to handle.

そこで、第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 SD memory card 235. 235 is released as an SD memory card 235 common to all model groups.

そして、第3実施例では、SAS183は、SDメモリカード235に記憶されているJSDKアプリ147を融合機101内に起動させる際、SDメモリカード235に記憶されている複数のバージョンのCVM555の内、当該融合機101の機種(機種群)と適合するバージョンのCVM555を自動選択して当該融合機101内に起動させるものとする。   In the third embodiment, when the SAS 183 activates the JSDK application 147 stored in the SD memory card 235 in the multi-function peripheral 101, among the multiple versions of the CVM 555 stored in the SD memory card 235, It is assumed that a version of the CVM 555 compatible with the model (model group) of the multi-function peripheral 101 is automatically selected and activated in the multi-function peripheral 101.

これにより、第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 SD memory cards 235 is released. This is because after the release of a certain model group, only the SD memory card 235 released with the model group is handled. Further, in the third embodiment, occurrence of inconvenience due to incompatibility between the multi-function peripheral 101 and the JSDK application 147 (SD memory card 235) is avoided. This is because the common use of the SD memory card 235 avoids the problem of the SD memory card 235 being mixed up.

図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 SD memory card 235 in FIG. 11 corresponds to the SD memory card 235 released with the first half year 2005 model group. 11 corresponds to an image forming apparatus of a model belonging to the first half of 2005 model group. Accordingly, when the SAS 183 in FIG. 11 activates the JSDK application 147 stored in the SD memory card 235 in the multi-function peripheral 101, the multi-function peripheral among the multiple versions of the CVM 555 stored in the SD memory card 235. It is assumed that the CVM 555 of the version “CVM for the first half of 2005 model group” that matches the 101 model group “first half of 2005 model group” is automatically selected and activated in the multifunction peripheral 101.

図12は、JSDKアプリ147の起動制御の第3実施例に係るフロー図である。   FIG. 12 is a flowchart according to the third embodiment of the activation control of the JSDK application 147.

融合機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 apparatus activation unit 113 activates the SAS 183 (S32). Subsequently, the SAS 183 acquires information related to the model name (model group name) of the multi-function peripheral 101 from the VAS 135 in the multi-function peripheral 101 (S33). It is assumed that the VAS 135 holds information related to the model name (model group name) of the multifunction machine 101. Subsequently, the SAS 183 automatically selects a version of the CVM 555 compatible with the model (model group) of the multi-function peripheral 101 from among a plurality of versions of the CVM 555 stored in the SD memory card 235 (S34). Is activated (S35). Subsequently, the SAS 183 uses the CVM 555 that is automatically selected and activated to activate the JSDK application 147 stored in the SD memory card 235 in the MFP 101 (S36).

(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 JSDK application 147.

第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 JSDK application 147 and the version controller 136 shown in FIG. 13 as subjects. The JSDK application 147 in FIG. 13 is stored in the SD memory card 235 inserted in the SD memory card slot 234. On the other hand, the version controller 136 is a program that adjusts the mismatch between the function used by the JSDK application 147 and the function supported by the multi-function peripheral 101, and includes an SD memory card 235, a USB memory (not shown), It is stored in a rewritable storage medium such as a flash memory, HDD 233, or a storage medium in another computer connected via a network such as an intranet or the Internet, and can be updated. Note that the SAS 183 can activate the SDK application 147, the version controller 136, and the like in the multi-function peripheral 101.

図14は、JSDKアプリ147の起動制御の第4実施例に係るフロー図である。   FIG. 14 is a flowchart according to the fourth example of the activation control of the JSDK application 147.

融合機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 apparatus activation unit 113 activates the SAS 183 (S42). Subsequently, the SAS 183 activates the CVM 555 and the version controller 136 (S43, S44). Further, the SAS 183 activates the JSDK application 147 using the CVM 555 (S45).

続いて、バージョンコントローラ147は、融合機101でサポートされている機能に係る情報(以下、「機器サポート情報」という。)を、融合機101内のVAS135から取得(S46)すると共に、JSDKアプリ147が利用する機能に係る情報(以下、「アプリ利用情報」という。)をJSDKアプリ147より取得する(S47)。   Subsequently, the version controller 147 acquires information (hereinafter referred to as “device support information”) related to the function supported by the multi-function peripheral 101 from the VAS 135 in the multi-function peripheral 101 (S46), and at the same time the JSDK application 147. The information (hereinafter referred to as “application usage information”) related to the function used by the is acquired from the JSDK application 147 (S47).

図15は、機器サポート情報の例を示す図である。図15において、機器サポート情報600は、XML形式で記述された例が示されているが、その記述形式は特定のものに限定されない。   FIG. 15 is a diagram illustrating an example of device support information. In FIG. 15, an example in which the device support information 600 is described in the XML format is shown, but the description format is not limited to a specific one.

機器サポート情報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 device support information 600, an “inf_version” element 601 indicates a grammar (structure) version (“1.2”) that the device support information 600 follows (hereinafter referred to as “device support information version”). A “function_list” element 602 indicates a list of functions supported by the multi-function peripheral 101. In the list, version information of each function is shown. For example, the “copy” element 6021 indicates the version (“1.03”) of the copy application 141 currently installed in the multi-function peripheral 101. The “CVM” element 6024 indicates the version (“1.01”) of the CVM 555 currently installed in the multi-function peripheral 101.

また、図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 application usage information 700 in FIG. 16 follows the same grammar (structure) as the device support information 600 in FIG. That is, in the application usage information 700, an “inf_version” element 701 indicates a grammar (structure) version (“1.3”) that the application usage information 700 follows (hereinafter referred to as “application usage information version”). A “function_list” element 702 indicates a list of functions used by the JSDK application 147 and version information thereof. For example, the “CVM” element 7021 indicates the version (“1.02”) of the CVM 555 used by the JSDK application 147.

続いて、バージョンコントローラ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 version controller 136 determines whether or not it can interpret the device support information 600 and the application usage information 700 based on the device support information version and the application usage information version (S48). That is, the grammar (structure) of the device support information 600 and the application usage information 700 may be updated by extension or the like, and a tag or the like that cannot be interpreted by the version controller 136 may be added. In this embodiment, since the application usage information version is newer, the version controller 136 needs to be able to interpret at least a version of the application usage information version (“1.3”) or higher. The version controller 136 incorporates a version that can be interpreted by the version controller 136. Therefore, when the incorporated version is older than at least one of the device support information version and the application usage information version (Yes in S48), the version controller 136 itself uses the device support information or the application usage information. On the other hand, it is determined to be old, and the fact is notified to the SAS 183. Upon receiving the notification, the SAS 183 downloads a version controller 136 that can correspond to the device support information version and the application usage information version from, for example, a predetermined server via the network. As a result, the version controller 13 is automatically updated (S49). However, the version controller 136 may be manually updated by the user. In the case of manual update, an instruction from the user is input via the operation panel 202 or a Web page.

ステップ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 version controller 136 collates the device support information 600 with the application usage information 700, so that the function used by the JSDK 147 application is supported by the multi-function peripheral 101. Is determined (S50). For example, the functions listed in the application usage information 700 are included in the functions listed in the device support information 600, and the version of the function in the device is the same as the version used by the application. If it is new, it is determined that the function is supported by the compound machine 101. In this case, the JSDK application 147 does not avoid using the function (S51).

一方、上記以外の場合、すなわち、アプリ利用情報700においてリストアップされている機能が機器サポート情報600においてリストアップされていないか、又は、機器サポート情報600にリストアップされていたとしても、機器における当該機能のバージョンが、アプリが利用するバージョンより古い場合、当該機能は、融合機101でサポートされていないと判定される。この場合、ステップS52に進み、バージョンコントローラ136は、アクション情報を融合機101内の記録媒体より取得する(S52)。   On the other hand, in other cases, that is, even if the functions listed in the application usage information 700 are not listed in the device support information 600 or are listed in the device support information 600, When the version of the function is older than the version used by the application, it is determined that the function is not supported by the multi-function peripheral 101. In this case, the process proceeds to step S52, and the version controller 136 acquires action information from the recording medium in the multi-function peripheral 101 (S52).

図17は、アクション情報の例を示す図である。   FIG. 17 is a diagram illustrating an example of action information.

図17のアクション情報800は、アプリ利用情報と機器サポート情報とに不一致が生じた場合に実行すべき処理が定義されている情報である。すなわち、アクション情報800の「action_list」要素801には、機能毎に実行すべき定義が「action」要素として定義されている。   The action information 800 in FIG. 17 is information defining a process to be executed when there is a mismatch between the application usage information and the device support information. That is, in the “action_list” element 801 of the action information 800, a definition to be executed for each function is defined as an “action” element.

例えば、「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” element 8012 and the “CVM” element 8013 is “update”. This means that the JSDK application 147 is made compatible by updating the program related to the function by downloading or the like. In this case, information for identifying the download source may be described, but is omitted for convenience in FIG. The value of the “action” element included in the “scan” element 8012 is “ignore”. This means that, for example, the function is not updated on the multifunction peripheral 101 side even if there is a mismatch with the application side, and the function of the application is limited.

したがって、ステップS52に続いて実行されるステップS53では、アクション情報800に応じた処理が実行される。   Therefore, in step S53 executed subsequent to step S52, processing corresponding to the action information 800 is executed.

なお、アクション情報800に従って融合機101側の機能を更新する際、バージョンコントローラ136は、融合機101の例えばフラッシュメモリ等の内部に記録されている、プロセス間の依存関係を示す情報(以下「プロセス依存情報」という。)に基づいて、更新する機能が依存関係を有する情報を同時に更新するようにしてもよい。   When the function on the MFP 101 side is updated according to the action information 800, the version controller 136 stores information indicating a dependency relationship between processes (hereinafter referred to as “process”) recorded in the MFP 101 such as a flash memory. Based on “dependency information”), information having a dependency relationship between the functions to be updated may be updated at the same time.

図18は、プロセス依存情報を概念的に示す図である。   FIG. 18 is a diagram conceptually showing process-dependent information.

図18のプロセス依存情報900では、矢印の元のプロセス(機能)が、矢印の先のプロセス(機能)に対して依存関係を有していることを示す。例えば、コピーアプリ141は、SCS169及びMCS165に依存関係を有している。また、CVM555は、VAS135に依存関係を有している。なお、図18において、プロセス依存情報900は、ツリー構造によって概念的に表現されているが、例えば、XML形式によって当該ツリー構造を表現してもよい。また、プロセス(機能)が更新されて、依存関係が更新される場合は、当該プロセス依存情報900も更新するようにするとよい。そうするためには、プロセス毎に、当該プロセスが依存関係を有するプロセスを特定するための情報を付加するようにすればよい。   The process dependency information 900 in FIG. 18 indicates that the original process (function) indicated by the arrow has a dependency relationship with the process (function) indicated by the arrow. For example, the copy application 141 has a dependency relationship with the SCS 169 and the MCS 165. The CVM 555 has a dependency relationship with the VAS 135. In FIG. 18, the process dependency information 900 is conceptually expressed by a tree structure, but the tree structure may be expressed by, for example, an XML format. In addition, when the process (function) is updated and the dependency relationship is updated, the process dependency information 900 may be updated. In order to do so, information for identifying a process having a dependency relationship with the process may be added to each process.

ここで、ステップS47においてバージョンコントローラ136が、JSDKアプリ147よりアプリ利用情報700を取得するための仕組みについて詳述する。一般的に、Java(登録商標)のプログラムは、「.java」という拡張子の付いたソースファイルがコンパイルされることにより、当該ソースファイル内に定義されたクラスごとに「.class」という拡張子の付いたクラスファイルが生成される。そして、一つ以上のソースファイルより生成されたクラスファイルを機能単位でアーカイブ化し、「.jar」という拡張子の付いたjarファイルが生成される。当該jarファイルには、その一部に当該jarファイルの単位でのバージョン情報を管理する仕組みがある。したがって、このjarファイル単位でのバージョン情報に基づいて、アプリ利用情報が生成されてもよい。但し、jarファイル単位では、その内部に含まれているクラス単位によるバージョンまでは識別できない。したがって、クラス単位でのバージョンの識別が必要な場合は、各クラスのバージョンを示すようなクラスを別途定義し、jarファイルに含めておけばよい。そうすることにより、当該バージョンを示すクラスにjarファイルの外部よりアクセスすることで各クラスのバージョンを識別することができ、より細かい単位でのアプリ利用情報を作成することができる。   Here, the mechanism for the version controller 136 to acquire the application usage information 700 from the JSDK application 147 in step S47 will be described in detail. In general, a Java (registered trademark) program is compiled with a source file with an extension of “.java”, and an extension of “.class” is defined for each class defined in the source file. A class file with is generated. Then, a class file generated from one or more source files is archived in units of functions, and a jar file with an extension “.jar” is generated. A part of the jar file has a mechanism for managing version information in units of the jar file. Therefore, the application usage information may be generated based on the version information for each jar file. However, in the jar file unit, the version by the class unit included in the jar file cannot be identified. Therefore, if it is necessary to identify the version in units of classes, a class that indicates the version of each class may be separately defined and included in the jar file. By doing so, it is possible to identify the version of each class by accessing the class indicating the version from the outside of the jar file, and it is possible to create application usage information in finer units.

上述したように、第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 version controller 136 be able to. In addition, when there is a function that is not supported in the multi-function peripheral 101, the function can be supplemented or updated as much as possible, so that a service more convenient for the user can be provided. . Furthermore, if there is a function that is not supported in the multi-function peripheral 101, the subsequent operation is determined based on the action information 900. Therefore, a flexible response can be performed for each function.

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 SYMBOLS 101 Compound machine 111 Hardware 112 Software 113 Compound machine starting part 121 Imaging part 122 Printing part 123 Other hardware 131 Application 132 Platform 133 Application program interface 134 Engine interface 135 Virtual application service 136 Version controller 141 Copy application 142 Printer application 143 Scanner Application 144 Facsimile application 145 Network file application 146 CSDK application 147 JSDK application 148 JSDK platform 151 Control service 152 System resource manager 153 Handler 161 Network control service 162 Facsimile control service 16 3 Delivery control service 164 Engine control service 165 Memory control service 166 Operation panel control service 167 Certification control service 168 User directory control service 169 System control service 171 Facsimile control unit handler 172 Image memory handler 181 Web browser 182 Web server software 183 SDK Application service 201 Controller 202 Operation panel 203 Facsimile control unit 211 CPU
212 ASIC
221 NB
222 SB
231 MEM-P
232 MEM-C
233 HDD
234 Memory card slot 235 Memory card 241 NIC
242 USB device 243 IEEE 1394 device 244 Centronics device 301 Document setting unit 302 Paper feed unit 303 Paper discharge unit 311 Touch panel 312 Numeric keypad 313 Start button 314 Reset button 315 Function key 316 Initial setting button 321 ADF
322 Flatbed 323 Flatbed cover 501 User application 511 JSDK GUI Manager
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

特開2002−84383号公報JP 2002-84383 A

Claims (8)

アプリケーションプログラムを追加可能な機器であって、
前記アプリケーションプログラムは、当該アプリケーションプログラムに関する第一の情報を有し、当該機器内で起動すると、当該機器の情報である第二の情報を取得して、前記第一の情報と前記第二の情報とを照合することにより当該アプリケーションプログラムの実行の可否を判定する判定手段と、
前記判手段の判定結果に応じて当該アプリケーションプログラムの動作を制御する実行制御手段と
前記アプリケーションプログラムの利用する機能を示す第三の情報と当該機器でサポートされている機能を示す第四の情報とを照合することにより当該アプリケーションプログラムの利用する機能の実行の可否を判定し、実行が不可能な機能を実行可能とするためにプログラムを取得する調整手段とを有し、
前記アプリケーションプログラムは、当該機器の機種名に対応付けて保持されている、当該機器の機種に応じて相違する機能の種類のうち当該機器が有している機能の種類を当該機器より取得して、当該機器の機種に応じて相違する機能の種類に関しては、取得された種類に係る機能のみを利用可能とし、
前記調整手段は、前記第三又は第四の情報の構造に対応していない場合は自動的に更新されることを特徴とする機器。
A device to which an application program can be added,
The application program has first information related to the application program, and when activated in the device, obtains second information that is information on the device, and acquires the first information and the second information. Determining means for determining whether or not the application program can be executed by comparing
And execution control means for controlling the operation of the application program in accordance with the determination result of the determination Priority determination means,
The third information indicating the function used by the application program and the fourth information indicating the function supported by the device are checked to determine whether the function used by the application program can be executed. An adjustment means for acquiring a program to enable execution of a function that cannot be performed ,
The application program acquires, from the device, the type of function that the device has among the types of functions that are held in association with the model name of the device and differ depending on the model of the device. As for the type of function that differs depending on the model of the device, only the function related to the acquired type can be used ,
The apparatus is characterized in that the adjusting means is automatically updated when it does not correspond to the structure of the third or fourth information .
前記第一の情報は、前記アプリケーションプログラムのバージョンであり、前記第二の情報は、前記機器のバージョンであることを特徴とする請求項1記載の機器。   2. The device according to claim 1, wherein the first information is a version of the application program, and the second information is a version of the device. 前記アプリケーションプログラムを逐次実行する複数の所定のプログラムの中から、当該機器の機種名に適合する前記所定のプログラムを起動させることを特徴とする請求項1又は2記載の機器。   3. The device according to claim 1, wherein the predetermined program that matches a model name of the device is started from a plurality of predetermined programs that sequentially execute the application program. 前記機器を前記調整手段として機能させるプログラムを所定のコンピュータより取得して前記調整手段を更新することを特徴とする請求項1乃至3いずれか一項記載の機器。 The device according to any one of claims 1 to 3, wherein a program for causing the device to function as the adjustment unit is acquired from a predetermined computer to update the adjustment unit. 請求項記載の機器と、請求項記載の所定のコンピュータとを含む情報処理システム。 An information processing system including a device according to claim 4, and a predetermined computer of claim 4 wherein. アプリケーションプログラムを追加可能な機器が実行する情報処理方法であって、
前記アプリケーションプログラムは、当該アプリケーションプログラムに関する第一の情報を有し、当該機器内で起動すると、当該機器の情報である第二の情報を取得して、前記第一の情報と前記第二の情報とを照合することにより当該アプリケーションプログラムの実行の可否を判定する判定手順と、
前記判手順の判定結果に応じて当該アプリケーションプログラムの動作を制御する実行制御手順と
前記アプリケーションプログラムの利用する機能を示す第三の情報と当該機器でサポートされている機能を示す第四の情報とを照合することにより当該アプリケーションプログラムの利用する機能の実行の可否を判定し、実行が不可能な機能を実行可能とするためにプログラムを取得する調整手順とを有し、
前記アプリケーションプログラムは、当該機器の機種名に対応付けて保持されている、当該機器の機種に応じて相違する機能の種類のうち当該機器が有している機能の種類を当該機器より取得して、当該機器の機種に応じて相違する機能の種類に関しては、取得された種類に係る機能のみを利用可能とし、
前記調整手順は、前記第三又は第四の情報の構造に対応していない場合は自動的に更新されることを特徴とする情報処理方法。
An information processing method executed by a device to which an application program can be added,
The application program has first information related to the application program, and when activated in the device, obtains second information that is information on the device, and acquires the first information and the second information. And a determination procedure for determining whether or not the application program can be executed by comparing
And execution control step of controlling the operation of the application program in accordance with the determination result of the determination Priority determination procedure,
The third information indicating the function used by the application program and the fourth information indicating the function supported by the device are checked to determine whether the function used by the application program can be executed. An adjustment procedure for obtaining a program to enable an impossible function ,
The application program acquires, from the device, the type of function that the device has among the types of functions that are held in association with the model name of the device and differ depending on the model of the device. As for the type of function that differs depending on the model of the device, only the function related to the acquired type can be used ,
The information processing method , wherein the adjustment procedure is automatically updated when it does not correspond to the structure of the third or fourth information .
アプリケーションプログラムを追加可能な機器に、
当該アプリケーションプログラムのプログラム情報を含む第一の情報を有し、当該機器内で起動すると、当該機器の情報である第二の情報を取得して、前記第一の情報と前記第二の情報とを照合することにより当該アプリケーションプログラムの実行の可否を判定する判定手順と、
前記判手順の判定結果に応じて当該アプリケーションプログラムの動作を制御する実行制御手順と
前記アプリケーションプログラムの利用する機能を示す第三の情報と当該機器でサポートされている機能を示す第四の情報とを照合することにより当該アプリケーションプログラムの利用する機能の実行の可否を判定し、実行が不可能な機能を実行可能とするためにプログラムを取得する調整手順とを実行させ、
前記アプリケーションプログラムは、当該機器の機種名に対応付けて保持されている、当該機器の機種に応じて相違する機能の種類のうち当該機器が有している機能の種類を当該機器より取得して、当該機器の機種に応じて相違する機能の種類に関しては、取得された種類に係る機能のみを利用可能とし、
前記調整手順は、前記第三又は第四の情報の構造に対応していない場合は自動的に更新されることを特徴とするプログラム。
For devices that can add application programs,
When the first information including the program information of the application program is started in the device, the second information which is the information of the device is acquired, and the first information and the second information are obtained. A determination procedure for determining whether or not the application program can be executed by checking
And execution control step of controlling the operation of the application program in accordance with the determination result of the determination Priority determination procedure,
The third information indicating the function used by the application program and the fourth information indicating the function supported by the device are checked to determine whether the function used by the application program can be executed. To execute an adjustment procedure to acquire a program to enable an impossible function ,
The application program acquires, from the device, the type of function that the device has among the types of functions that are held in association with the model name of the device and differ depending on the model of the device. As for the type of function that differs depending on the model of the device, only the function related to the acquired type can be used ,
The adjustment procedure is automatically updated when it does not correspond to the structure of the third or fourth information .
請求項記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。 A computer-readable recording medium on which the program according to claim 7 is recorded.
JP2011173599A 2005-03-31 2011-08-09 Apparatus, information processing system, information processing method, program, and recording medium Active JP5333545B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011173599A JP5333545B2 (en) 2005-03-31 2011-08-09 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
JP2011173599A JP5333545B2 (en) 2005-03-31 2011-08-09 Apparatus, information processing system, information processing method, program, and recording medium

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011015554A Division JP4876188B2 (en) 2005-03-31 2011-01-27 Image forming apparatus, information processing method, program, and recording medium

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013101128A Division JP5686155B2 (en) 2005-03-31 2013-05-13 Apparatus, information processing system, information processing method, program, and recording medium

Publications (2)

Publication Number Publication Date
JP2012018680A JP2012018680A (en) 2012-01-26
JP5333545B2 true JP5333545B2 (en) 2013-11-06

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 (1)

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

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2013101128A Expired - Fee Related JP5686155B2 (en) 2005-03-31 2013-05-13 Apparatus, information processing system, information processing method, program, and recording medium

Country Status (1)

Country Link
JP (3) JP4876188B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
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

Family Cites Families (11)

* Cited by examiner, † Cited by third party
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

Also Published As

Publication number Publication date
JP2012018680A (en) 2012-01-26
JP2013164866A (en) 2013-08-22
JP4876188B2 (en) 2012-02-15
JP5686155B2 (en) 2015-03-18
JP2011101422A (en) 2011-05-19

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
JP2007049677A (en) Image forming apparatus, information processor, 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
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
JP5686155B2 (en) Apparatus, information processing system, information 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
JP2006079211A (en) Image formation 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
JP5418543B2 (en) Terminal device, information processing method, information processing program, recording medium, and information processing system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130222

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130409

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130513

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20130613

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130715

R151 Written notification of patent or utility model registration

Ref document number: 5333545

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151