説明

情報処理装置、表示制御方法、プログラム、及び記録媒体

【課題】 外部アプリケーションを任意の媒体や領域にインストールした場合に外部アプリケーションの起動を選択的に行い、多種多様な機能を提供すること。
【解決手段】 画像形成処理に関するシステム側の処理を行うサービスモジュールを有し、当該サービスモジュールとは別にアプリケーションを搭載可能に構成された画像形成装置において、アプリケーションを格納した少なくとも1つの場所を示す起動選択情報を参照し、当該起動選択情報に従って前記少なくとも1つの場所からアプリケーションを起動するアプリケーション起動手段を備えた。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、コピー、プリンタ、スキャナおよびファクシミリなどの画像形成処理にかかるユーザサービスを提供するとともに、予め提供されるアプリケーションとは別にインストールされた外部アプリケーションの起動を行うことができる画像形成装置に関するものである。
【背景技術】
【0002】
近年では、プリンタ、コピー、ファクシミリ、スキャナなどの各装置の機能を1つの筐体内に収納した画像形成装置(以下、「複合機」という。)が知られている。この複合機は、1つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応した3種類のソフトウェアを設け、これらのソフトウェアを切り替えることによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。
【0003】
近年、このような従来の複合機としては、ハードディスク装置(HDD)などの大容量記憶装置を搭載したものが出回っている。このような複合機に搭載されたハードディスク装置は、その信頼性の低さからPC(Personal Computer)のようにアプリケーションプログラムの保存領域としてではなく、主として画像データの蓄積を目的として使用されている。
【0004】
このため、従来の複合機では、アプリケーションプログラムを含むファームウェアを複合機の生産時に全てフラッシュメモリなどの不揮発性メモリに組み込んで提供している。そして、アプリケーションプログラムをすべて不揮発性メモリから起動していた。
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、このような従来の複合機では、プリンタ、コピー、スキャナおよびファクシミリ装置に対応するソフトウェアをそれぞれ別個に設けているため、各ソフトウェアの開発に多大の時間を要する。このため、出願人は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウェア資源を有し、プリンタ、コピーまたはファクシミリなどの各ユーザサービスにそれぞれ固有の処理を行うアプリケーションを複数搭載し、これらのアプリケーションとハードウェア資源との間に介在して、ユーザサービスを提供する際に、アプリケーションの少なくとも2つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行う各種コントロールサービスからなるプラットホームを備えた画像形成装置(複合機)を発明した。
【0006】
このような新規な複合機では、画像形成処理にかかるサービスを提供するアプリケーションと、OSやハードウェア資源にアクセスするような開発が難しい処理を行うコントロールサービスとを別個に設けているため、複合機の出荷後にユーザもしくは第三者であるサードベンダが新規な外部アプリケーションを開発して複合機に搭載可能な構成となっている。
【0007】
このため、複合機には、その出荷時に搭載されるコピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかる既存アプリケーションとは別に、このような外部アプリケーションを出荷後にインストールし、インストールされた外部アプリケーションを起動する必要性が生じてくる。
【0008】
しかしながら、一般的にフラッシュメモリなどの不揮発性メモリに後から外部アプリケーションを組み込むことは困難である。このため、フラッシュカードなどのICカードや、ハードディスク装置を開発した外部アプリケーションの保存領域として利用することが考えられる。
【0009】
しかしながら、新規な複合機において、ハードディスク装置やICカードを外部アプリケーションの保存領域として利用する場合、ハードディスク装置およびICカードから外部アプリケーションを起動させる必要性が生じてくる。また、このような新規な複合機では、外部アプリケーションがネットワークを介して提供される場合も考えられ、その場合の外部アプリケーションの起動の必要性も生じてくる。
【0010】
また、このように外部アプリケーションの保存領域として、ICカード、ハードディスク、ネットワークの保存領域など種々の媒体や領域を利用することが可能な場合、複合機に搭載されるメモリ容量などの資源の制限によって、これらの媒体や領域に保存されている外部アプリケーションをすべて起動させることができない場合が生じてくる。このため、複合機の出荷後に顧客先で多数の外部アプリケーションを追加することができないという、出荷後に外部アプリケーションを搭載することを想定していない従来の複合機では問題にならなかった新規な課題が生じてくる。
【0011】
この発明は上記に鑑みてなされたもので、外部アプリケーションを任意の媒体や領域にインストールした場合でも、外部アプリケーションの起動を選択的に行うことができる画像形成装置を得ることを目的とする。
【課題を解決するための手段】
【0012】
上記目的を達成するため、請求項1にかかる発明は、画像形成処理に関するシステム側の処理を行うサービスモジュールを有し、当該サービスモジュールとは別にアプリケーションを搭載可能に構成された画像形成装置において、アプリケーションを格納した少なくとも1つの場所を示す起動選択情報を参照し、当該起動選択情報に従って前記少なくとも1つの場所からアプリケーションを起動するアプリケーション起動手段を備えたことを特徴とする画像形成装置。
【0013】
本発明によれば、種々の場所に外部アプリケーションが保存されている場合でも必要な外部アプリケーションが保存されている媒体を選択して起動することができる。すなわち、アプリケーションの起動を選択的に行える、多種多様な機能を提供することができる画像形成装置を提供できる。
【0014】
請求項2にかかる発明は、請求項1の記載において、前記少なくとも1つの場所は、ハードディスク装置、画像形成装置に着脱可能な記憶媒体、及び、ネットワークを介して画像形成装置に接続されるコンピュータのうちの1つ又は複数であるとするものである。
【0015】
また、請求項3にかかる発明は、請求項1に記載の画像形成装置において、前記起動選択情報の設定画面を前記画像形成装置の表示部に表示し、当該設定画面から指定された情報を前記起動選択情報として格納する手段を有する。
【0016】
本発明によれば、起動させるアプリケーションが格納されている場所の中で利用者に所望の場所を選択させることができ、画像形成装置に多種多様な機能を柔軟に実現させることができる。
【0017】
また、請求項4にかかる発明は、請求項1ないし3のうちいずれか1項の記載において、前記アプリケーション起動手段は、アプリケーションに関する情報を参照することにより、当該アプリケーションを起動するものである。
【0018】
このアプリケーションに関する情報は、例えば、アプリケーションが格納されている媒体に格納されているアプリケーションの名称やアドレス情報(請求項5)である。これにより、目的のアプリケーションを確実に起動できる。
【0019】
請求項6に記載の発明は、請求項1ないし3のうちいずれか1項の記載において、前記アプリケーション起動手段は、アプリケーションに関する情報の有無により、前記場所にアプリケーションがインストールされているか否かを判断し、インストールされていると判断した場合に前記アプリケーションを起動するというものである。
【0020】
本発明によれば、インストール済みのアプリケーションを自動的に把握して起動することができ、外部アプリケーションの起動を容易に行うことができる。
【0021】
上記情報の保存先は特に限定されるものではなく、アプリケーションの保存媒体と同一の媒体としたり、外部アプリケーションの保存媒体とは無関係の媒体に保存することができる。
【0022】
また、請求項7にかかる発明は、請求項1ないし6のうちいずれか1項の記載において、前記アプリケーション起動手段は、所定のアプリケーションを起動するか否かを示す情報を含む設定情報を参照し、当該設定情報に所定のアプリケーションを起動することを示す情報が設定されている場合に、当該所定のアプリケーションを起動する。
【0023】
上記の所定のアプリケーションは、例えば外部アプリケーションである。本発明によれば、所定のアプリケーションが存在する場合でも、当該アプリケーションによる拡張機能を利用しない場合には、拡張機能を実行せずに出荷後の機能だけを利用して、画像形成装置の資源の節約を図るとともに処理効率を向上させることができる。
【0024】
また、請求項8にかかる発明は、請求項1ないし6のうちいずれか1項に記載画像形成装置において、前記アプリケーション起動手段は、アプリケーションごとに、当該アプリケーションを起動するか否かを示す情報を含む設定情報を参照し、当該設定情報に起動することを示す情報が設定されているアプリケーションのみを起動するものである。
【0025】
本発明によれば、アプリケーションが多数インストールされている場合にも必要な機能のみを実行することができ、画像形成装置の資源の節約を図るとともに処理効率を向上させることができる。
【0026】
また、請求項9にかかる発明は、請求項7または8に記載の画像形成装置において、前記設定情報の設定画面を画像形成装置の表示部に表示し、当該設定画面から指定された情報を前記設定情報として格納する手段を有するものである。
【0027】
本発明によれば、利用者にとって所望のアプリケーションの起動を指定することができる。
【0028】
請求項10に記載の発明は、請求項1の記載において、前記画像形成装置は、前記サービスモジュールに対してクライアントプロセスとして動作し、前記アプリケーションに対してサーバプロセスとして動作する仮想アプリケーションサービスを更に有し、該仮想アプリケーションサービスが前記アプリケーション起動手段を含むようにするものである。
【0029】
本発明によれば、仮想アプリケーションサービスが、起動選択情報に従って種々のアプリケーションの起動を行うことが可能となる。
【0030】
また、請求項11にかかる発明は、請求項2の記載において、前記画像形成装置は、ネットワークを介して当該画像形成装置に接続されるコンピュータから、アプリケーションをhttpプロトコル又はftpプロトコルによって受信し、前記アプリケーション起動手段は、受信したアプリケーションを起動するものである。
【0031】
本発明によれば、ネットワーク上のアプリケーションを一般的なネットワークプロトコルであるhttpプロトコル又はftpプロトコルによって受信するので、プログラム作成労力の軽減を図ることができる。
【0032】
請求項12〜21に記載の発明は、上記のアプリケーション起動手段の機能を画像形成装置に実現させるプログラムであり、請求項22に記載の発明は、当該プログラムを記録したコンピュータ読み取り可能な記録媒体である。
【発明の効果】
【0033】
上述したように、本発明によれば、外部アプリケーションを種々の媒体や装置にインストールした場合でも、外部アプリケーションの起動を選択的に行え、多種多様な機能を提供することができる画像形成装置を提供することができる。また、本発明の外部アプリ起動部のプログラムによれば、画像形成装置に外部アプリケーションの起動を選択的に行える機能を提供することができる。
【図面の簡単な説明】
【0034】
【図1】実施の形態1の複合機の構成を示すブロック図である。
【図2】実施の形態1にかかる複合機の外部アプリ起動部の機能的構成を示すブロック図である。
【図3】起動設定ファイルの内容の一例を示す説明図である。
【図4】アプリケーション記述ファイルの内容の一例を示す説明図である。
【図5】起動選択データ、拡張機能設定データ、外部アプリ存否データの設定内容を示す説明図である。
【図6】複合機初期化部による初期化処理の手順を示すフローチャートである。
【図7】外部アプリ起動部による外部アプリの起動処理の手順を示すフローチャートである。
【図8】初期設定画面の内容を示す説明図である。
【図9】実施の形態1の複合機のハードウェア構成図である。
【図10】実施の形態2の複合機における拡張機能設定データの設定内容の一例を示す説明図である。
【図11】実施の形態2の複合機における外部アプリ起動部による外部アプリの起動処理の手順を示すフローチャートである。
【図12】実施の形態2の複合機においてオペレーションパネルに表示される初期設定画面の内容例を示す説明図である。
【図13】実施の形態3の複合機における外部アプリ起動部の機能的構成およびネットワークに接続された構成を示すブロック図である。
【図14】インターネット上のコンピュータに格納されている起動設定ファイルの内容の一例を示す説明図である。
【図15】実施の形態3の複合機における起動選択データの設定内容の一例を示す説明図である。
【図16】実施の形態3の複合機における外部アプリ起動部による外部アプリの起動処理の手順を示すフローチャートである。
【図17】実施の形態3の複合機における初期設定画面の内容を示す説明図である。
【図18】実施の形態4の複合機の構成を示すブロック図である。
【発明を実施するための形態】
【0035】
以下に添付図面を参照して、この発明にかかる画像形成装置の好適な実施の形態を詳細に説明する。
(実施の形態1)
図1は、この発明の実施の形態1である画像形成装置(以下、「複合機」という)の構成を示すブロック図である。本実施の形態にかかる複合機100は、複合機の出荷後に、顧客、サードベンダなどの第三者が外部アプリを開発し、開発された外部アプリケーションを複合機用のインストーラで複合機のハードディスク装置(HDD)にインストールし、HDDの診断後、外部アプリ起動部によってインストールされた外部アプリをHDDから起動することが可能となっている。また、本実施の形態では、外部アプリをICカードに実行可能な形式で保存し、このICカードを複合機100のICカードインタフェース部に装着してICカードからも外部アプリを起動することが可能となっている。さらに、本実施の形態の複合機100では、このようにHDDにインストールされている外部アプリの起動とICカードに保存されている外部アプリの起動を切り替えて行うことが可能となっている。
【0036】
図1に示すように、複合機100は、白黒ラインプリンタ(B&W LP)101と、カラーラインプリンタ(Color LP)102と、ハードディスク装置(HDD) 103と、スキャナ、ファクシミリ、メモリ、ネットワークインタフェースなどのハードウェアリソース104を有するとともに、プラットホーム120と、アプリケーション130と、複合機初期化部129と、HDD診断部132と、外部アプリ起動部131とから構成されるソフトウェア群110とを備えている。
【0037】
外部アプリ起動部131は、HDD103の診断結果が正常である場合に、HDD103にインストールされている外部アプリ117を起動するものである。また、外部アプリ起動部131は、ICカードなどの記憶媒体に保存された外部アプリ117を起動する。さらに、外部アプリ起動部131は、外部アプリ117のHDD103からの起動とICカードからの起動とを選択することもできる。
【0038】
複合機初期化部129は、汎用OS121の上で最初に起動されるプロセスであり、コントロールサービスやアプリケーション130(外部アプリ117を除く)の起動およびHDD診断部132および外部アプリ起動部131の起動を行うものである。
【0039】
HDD診断部132は、HDD103の物理的欠陥やHDD103に生成されたファイルシステムの整合性などを診断し、診断結果をメッセージ送信などのプロセス間通信を利用して外部アプリ起動部131に送信するものである。
【0040】
プラットホーム120は、アプリケーション130からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ(SRM)123と、汎用OS121とを有する。
【0041】
コントロールサービスは、複数のサービスモジュールから形成され、SCS(システムコントロールサービス)122と、ECS(エンジンコントロールサービス)124と、MCS(メモリコントロールサービス)125と、OCS(オペレーションパネルコントロールサービス)126と、FCS(ファックスコントロールサービス)127と、NCS(ネットワークコントロールサービス)128とから構成される。なお、このプラットホーム120は、あらかじめ定義された関数により前記アプリケーション130から処理要求を受信可能とするアプリケーションプログラムインタフェース(API)を有する。
【0042】
汎用OS121は、UNIX(登録商標)などの汎用オペレーティングシステムであり、プラットホーム120並びにアプリケーション130の各ソフトウェアをそれぞれプロセスとして並列実行する。
【0043】
SRM123のプロセスは、SCS122とともにシステムの制御およびリソースの管理を行うものである。SRM123のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、HDDファイル、ホストI/O(セントロI/F、ネットワークI/F、IEEE1394 I/F、RS232C I/Fなど)のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御する。
【0044】
具体的には、このSRM123は、要求されたハードウェア資源が利用可能であるか(他の要求により利用されていないかどうか)を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、SRM123は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容(例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など)を直接実施している。
【0045】
SCS122のプロセスは、アプリ管理、操作部制御、システム画面表示、LED表示、リソース管理、割り込みアプリ制御などを行う。
【0046】
ECS124のプロセスは、白黒ラインプリンタ(B&W LP)101、カラーラインプリンタ(Color LP)102、スキャナ、ファクシミリなどからなるハードウェアリソース104のエンジンの制御を行う。
【0047】
MCS125のプロセスは、画像メモリの取得および解放、ハードディスク装置(HDD)の利用、画像データの圧縮および伸張などを行う。
【0048】
FCS127のプロセスは、システムコントローラの各アプリ層からPSTN/ISDN網を利用したファクシミリ送受信、BKM(バックアップSRAM)で管理されている各種ファクシミリデータの登録/引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのAPIを提供する。
【0049】
NCS128のプロセスは、ネットワークI/Oを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行う。具体的には、ftpd、httpd、lpd、snmpd、telnetd、smtpdなどのサーバデーモンや、同プロトコルのクライアント機能などを有している。
【0050】
OCS126のプロセスは、オペレータ(ユーザ)と本体制御間の情報伝達手段となるオペレーションパネル(操作パネル)の制御を行う。OCS126は、オペレーションパネルからキー押下をキーイベントとして取得し、取得したキーに対応したキーイベント関数をSCS122に送信するOCSプロセスの部分と、アプリケーション130またはコントロールサービスからの要求によりオペレーションパネルに各種画面を描画出力する描画関数やその他オペレーションパネルに対する制御を行う関数などがあらかじめ登録されたOCSライブラリの部分とから構成される。このOCSライブラリは、アプリケーション130およびコントロールサービスの各モジュールにリンクされて実装されている。なお、OCS126のすべてをプロセスとして動作させるように構成しても良く、あるいはOCS126のすべてをOCSライブラリとして構成しても良い。
【0051】
アプリケーション130は、ページ記述言語(PDL)、PCLおよびポストスクリプト(PS)を有するプリンタ用のアプリケーションであるプリンタアプリ111と、コピー用アプリケーションであるコピーアプリ112と、ファクシミリ用アプリケーションであるファックスアプリ113と、スキャナ用アプリケーションであるスキャナアプリ114と、ネットワークファイル用アプリケーションであるネットファイルアプリ115と、工程検査用アプリケーションである工程検査アプリ116とを有している。
【0052】
アプリケーション130の各プロセス、コントロールサービスの各プロセスは、関数呼び出しとその戻り値送信およびメッセージの送受信によってプロセス間通信を行いながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを実現している。
【0053】
このように、実施の形態1にかかる複合機100には、複数のアプリケーション130および複数のコントロールサービスが存在し、いずれもプロセスとして動作している。そして、これらの各プロセス内部には、一または複数のスレッドが生成されて、スレッド単位の並列実行が行われる。そして、コントロールサービスがアプリケーション130に対し共通サービスを提供しており、このため、これらの多数のプロセスが並列動作、およびスレッドの並列動作を行って互いにプロセス間通信を行って協調動作をしながら、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理にかかるユーザサービスを提供するようになっている。
【0054】
また、複合機100には、複合機100の顧客、サードベンダなどの第三者がコントロールサービス層の上のアプリケーション層に外部アプリ117を開発して搭載することが可能となっている。図1では、この外部アプリ117を搭載した例を示している。
【0055】
なお、実施の形態1にかかる複合機100では、複数のアプリケーション130のプロセスと複数のコントロールサービスのプロセスとが動作しているが、アプリケーション130とコントロールサービスのプロセスをそれぞれ単一の構成とすることも可能である。また、各アプリケーション130は、アプリケーションごとに追加または削除することができる。
【0056】
インストーラ118は、第三者が開発した外部アプリ117を、HDD103にインストールするものである。本実施の形態にかかる複合機100では、フラッシュカードなどのICカードの記憶媒体に外部アプリ117を格納し、インストーラ118によって外部アプリ117をHDD103にインストールし、外部アプリ起動部131によって、HDD103から外部アプリ117を起動してアプリケーション層で動作させるようになっている。一方、プリンタアプリ111、コピーアプリ112、ファックスアプリ113、スキャナアプリ114、ネットファイルアプリ115、工程検査アプリ116などの複合機100の出荷時に提供されるアプリケーション130、各コントロールサービス、HDD診断部132および外部アプリ起動部131は、フラッシュメモリに出荷時に組み込まれており、複合機100の起動時(電源投入時)に複合機初期化部129によって起動されるようになっている。
【0057】
次に、外部アプリ起動部131の構成について説明する。図2は、実施の形態1にかかる複合機100の外部アプリ起動部131の機能的構成を示すブロック図である。外部アプリ起動部131は、図2に示すように、初期化部201と、オプション解析部202と、HDD診断結果通信部203と、フラッシュメモリ管理部204と、起動設定処理部205と、アプリケーション記述処理部206と、ライセンス判断部207と、アプリケーション起動部208とから構成される。
【0058】
また、HDD103には、一または複数の外部アプリ117と、HDD103から起動する外部アプリ117を指定したデータを設定した起動設定ファイル221と、外部アプリ117の各種情報が設定されたアプリケーション記述ファイル222とが格納されている。
【0059】
また、ICカード240にも、一または複数の外部アプリ117と、起動する外部アプリ117を指定したデータを設定した起動設定ファイル221と、外部アプリ117の各種情報が設定されたアプリケーション記述ファイル222とが格納されている。このICカード240は、例えばフラッシュカードなどの不揮発性記憶媒体であり、ICカードインタフェース部230によってデータの入出力が行われる。また、ICカード240として、SD(Secure Digital)カードを使用することもできる。なお、本実施の形態では、起動設定ファイル221とアプリケーション記述ファイル222は、いずれも対象となる外部アプリ117が保存されている記憶媒体に格納されているが、外部アプリ117を格納した記憶媒体とは異なる記憶媒体、例えばフラッシュメモリ210、ネットワークを介して接続されたサーバにおける記憶媒体に格納した構成としても良い。
【0060】
フラッシュメモリ210には、起動選択データ211と、拡張機能設定データ213と、外部アプリ存否データ214と、コンフィグレーションファイル212とが格納されている。各データおよびファイルの詳細については後述する。なお、本実施の形態では、これらの各データおよびファイルをフラッシュメモリ210に格納しているが、不揮発性メモリであれば他の記憶媒体に格納するように構成しても良い。
【0061】
初期化部201は、外部アプリ起動部131の初期化処理を行うものである。オプション解析部202は、外部アプリ起動部131が複合機初期化部129から起動されるときに指定されたコマンドのオプションパラメータを解析するものである。
【0062】
HDD診断結果通信部203は、HDD診断部132によって行われるHDD103の診断の終了待ちを行い、その診断結果をメッセージなどのプロセス間通信によって受信する。また、HDD診断結果通信部203は、受信した診断結果によってHDD103の状態を判定する。
【0063】
フラッシュメモリ管理部204は、フラッシュメモリ210に格納されているデータやファイルの設定内容の読み出し、および書き込みを行うものである。具体的には、フラッシュメモリ管理部204は、起動選択データ211を読み込み、外部アプリ117を起動する媒体の判断を行う。また、フラッシュメモリ管理部204は、拡張機能設定データ213を読み込み、外部アプリ117による拡張機能の利用の可否を判断する。さらにフラッシュメモリ管理部204は、外部アプリ存否データ214の書き込みを行う。
【0064】
起動設定処理部205は、HDD103およびICカード240に格納されている起動設定ファイル221を読み出して、その解析処理を行うものである。また、起動設定処理部205は、起動設定ファイル221にプログラム名称が設定されているか否かを調べて、外部アプリ117がインストールされているか否かを判断する。アプリケーション記述処理部206は、HDD103に格納されているアプリケーション記述ファイル222を読み出して、その解析処理を行うものである。ライセンス判断部207は、アプリケーション記述ファイル222に設定されているライセンスキーの正当性を判断するものである。
【0065】
アプリケーション起動部208は、HDD103およびICカード240に格納されている外部アプリ117を起動するものである。このとき、アプリケーション記述ファイル222に設定されている実行コマンドを発行することにより、外部アプリ117を起動する。
【0066】
次に、HDD103およびICカード240に格納されている起動設定ファイル221の内容について説明する。起動設定ファイル221は、HDD103にインストールされている外部アプリ117のプログラム名称のリストを記述するものであり、インストーラ118によって外部アプリ117をHDD103にインストールするたびに各外部アプリ117のプログラム名称が次の形式で追加される。
【0067】
「プログラム名称 外部アプリのプログラムファイル名」
図3は、起動設定ファイル221の内容の一例を示す説明図である。外部アプリ117のプログラムファイル名には、HDD103に生成されたファイルシステムにおけるプログラムファイル名が、図3の例(xx.xxx.sample、yy.yy.test等)に示すように記述される。このプログラム名称は一つの複合機100内で一意の名称である必要がある。
【0068】
次に、HDD103およびICカード240に格納されているアプリケーション記述ファイル222の内容について説明する。アプリケーション記述ファイル222は、外部アプリ117ごとに存在し、外部アプリ117のプログラムの属性情報を記述したものである。アプリケーション記述ファイル222は、外部アプリ117とともに、インストール用記憶媒体に格納され、外部アプリ117のHDD103のインストール時に外部アプリ117とともにHDD103に格納される。従って、HDD103に複数の外部アプリ117が保存されている場合には、各外部アプリ117に対応して複数のアプリケーション記述ファイル222が存在する。
【0069】
図4は、アプリケーション記述ファイル222の内容の一例を示す説明図である。図4に示すように、アプリケーション記述ファイル222には、プログラム名称、表示名称、バージョン、ベンダ名称、実行コマンド、インストールメディア番号、インストールメディア総数、インストール済インストールメディア総数、インストール日時、ライセンスキーの各項目が設定されている。
【0070】
ここで、プログラム名称、表示名称、バージョン、ベンダ名称、実行コマンドの項目は、インストール用記憶媒体への外部アプリ117の格納時に外部アプリ117の開発者によって設定される。プログラム名称は、外部アプリ117のプログラム名を示すものであり、インストール後、このプログラム名称が起動設定ファイル221のプログラム名称となる。
【0071】
表示名称は、外部アプリ117の表示名称であり、インストーラ118による外部アプリ117のインストール時および外部アプリ起動部131による外部アプリ117の起動時にオペレーションパネルの表示部に表示されるものである。
【0072】
バージョンは、外部アプリ117のバージョン情報を示す文字列であり、インストーラ118による外部アプリ117のインストール時および外部アプリ起動部131による外部アプリ117の起動時にオペレーションパネルの表示部に表示されるものである。
【0073】
ベンダ名称は、外部アプリ117を開発したベンダ名称を表す文字列であり、インストーラ118による外部アプリ117のインストール時および外部アプリ起動部131による外部アプリ117の起動時にオペレーションパネルの表示部に表示されるものである。
【0074】
実行コマンドは、外部アプリ117の実行のためのコマンドを相対パスにより指定したものである。必要な場合には、コマンドラインオプションも指定可能である。外部アプリ起動部131により、ここで設定されたコマンドが実行される。
【0075】
インストールメディア番号は、外部アプリ117が複数枚のインストール用記憶媒体に分割されている場合に、その媒体が何枚目のものであるかを示すものである。記憶媒体が1枚だけの場合には0が指定される。インストールメディア番号は、インストーラ118による外部アプリ117のインストール時にオペレーションパネルの表示部に表示されるものである。
【0076】
インストールメディア総数は、外部アプリ117が複数枚のインストール用記憶媒体に分割されている場合に、その総数が指定される。記憶媒体が1枚だけの場合には0が指定される。
【0077】
インストール済インストールメディア総数は、インストール済みインストールメディア総数を指定したものである。
【0078】
インストール日時は、インストールされた日時を示すものである。インストーラ118のユーザインタフェースに表示される。
【0079】
ライセンスキーは、外部アプリ117のライセンスキーを指定したものである。インストール時にユーザにより入力された文字列が保存されるようになっている。
【0080】
上記の例では、起動設定ファイルとアプリケーション記述ファイルは外部アプリがHDD103にインストールされるときにHDD103に格納されるものとしているが、起動設定ファイルとアプリケーション記述ファイルの各々は、上記と異なる任意の方法でHDD103やICカード240、もしくはその他の場所に格納することが可能である。
【0081】
次に、フラッシュメモリ210に格納されている各データおよびファイルについて説明する。コンフィグレーションファイル212は、コントロールサービスおよびプリンタアプリ111、コピーアプリ112などの予め組み込まれている既存のアプリケーション130の中で起動すべきプログラムが設定されたものであり、複合機100の電源投入時に複合機初期化部129によって参照される。
【0082】
図5は、起動選択データ211、拡張機能設定データ213、外部アプリ存否データ214の設定内容を示す説明図である。起動選択データ211は、起動する外部アプリ117の保存先(保存媒体)、すなわち外部アプリ117をどの媒体から起動するかを設定したものである。図5に示すように、起動選択データ211には、「HDD」または「ICカード」が設定可能であり、複数選択することも可能である。すなわち「HDD」および「ICカード」の双方を設定可能することもできる。この起動選択データ211は、オペレーションパネル910に表示される初期設定画面によって設定され、外部アプリ起動部131によって参照される。
【0083】
起動選択データ211に「HDD」が設定されている場合には、HDD103に格納されている外部アプリ117のみが起動され、起動選択データ211に「ICカード」が設定されている場合には、ICカード240に保存されている外部アプリ117のみが起動される。また、起動選択データ211に「HDDおよびICカード」の双方が設定されている場合には、HDD103とICカード240に格納されている外部アプリ117が起動される。
【0084】
拡張機能設定データ213は、外部アプリ117による拡張機能を使用するか否か、すなわち、外部アプリ117を起動するか否かを設定するものである。図5に示すように、拡張機能設定データ213には、「起動」または「起動しない」が設定される。拡張機能設定データ213は、オペレーションパネル910に表示される初期設定画面によって設定され、外部アプリ起動部131から参照される。拡張機能設定データ213に「起動」が設定されている場合には、外部アプリ117の起動処理が行われ、「起動しない」が設定されている場合には外部アプリ117の起動処理は行われない。
【0085】
外部アプリ存否データ214は、外部アプリ117がHDD103またはICカード240にインストールされているか否かを示す情報であり、外部アプリ起動部131によって設定され、SCS122によって参照される。外部アプリ存否データ214に「有」が設定されている場合には、SCS122によって初期設定画面に拡張機能設定の項目が表示され、「無」が設定されている場合には、初期設定画面に拡張機能設定の項目は表示されない。
【0086】
次に、このように構成された本実施の形態の複合機100において、外部アプリ117の起動の前提となる複合機100の初期化処理について説明する。
【0087】
図6は、複合機初期化部129による初期化処理の手順を示すフローチャートである。複合機100が電源投入されると、ROMモニタ(図示せず)によって、まずハードウェア資源の初期化、コントローラボードの診断が行われた後、汎用OS121が起動する。そして、ROMモニタが複合機初期化部129を汎用OS121上で起動する。この複合機初期化部129は、汎用OS121上で最初に起動されるプロセスとなる。
【0088】
起動された複合機初期化部129は、フラッシュメモリ210からコンフィグレーションファイル212を読み込み、コンフィグレーションファイル212に設定されている内容からコントロールサービスの起動を行う(ステップS601)。次に、コンフィグレーションファイル212の設定内容に従って、プリンタアプリ111、コピーアプリ112、スキャナアプリ114、ファックスアプリ113、ネットファイルアプリ115および工程検査アプリ116などの予め組み込まれている既存アプリの起動を行う(ステップS602)。そして、HDD診断部132を起動して、HDD103の診断処理を実行させる(ステップS603)。これによって、HDD103の物理的欠陥の検査、ファイルシステムの検査などの診断処理が開始される。次に、外部アプリ起動部131の起動を行う(ステップS604)。
【0089】
次に、複合機初期化部129によって起動された外部アプリ起動部131による外部アプリ117の起動処理について説明する。図7は、外部アプリ起動部131による外部アプリ117の起動処理の手順を示すフローチャートである。
【0090】
外部アプリ起動部131は、まずフラッシュメモリ210から拡張機能設定データ213を読み出し、外部アプリ117による拡張機能を使用するか否かを判断するため、拡張機能設定データ213に「起動」が設定されているか否かを調べる(ステップS701)。そして、拡張機能設定データ213に「起動なし」が設定されている場合には(ステップS701:No)、外部アプリ117の起動は行わず終了する。
【0091】
一方、拡張機能設定データ213に「起動」が設定されている場合には(ステップS701:Yes)、次に、フラッシュメモリ210から起動選択データ211を読み出し、外部アプリ117を起動する媒体を判断するため、起動選択データ211の設定内容を調べる(ステップS702)。そして、起動選択データ211の設定がHDDを含む場合、すなわち、「HDD」か「HDDおよびICカード」の場合には(ステップS702:HDD含む)、起動媒体としてHDD103が含まれるので、HDD診断部132による診断結果の通知待ち状態となる。
【0092】
そしてHDD診断部132から診断結果を受信すると(ステップS703)、診断結果が異常なしか否かを判断する(ステップS704)。診断結果が異常ありの場合(ステップS704:No)には、エラーメッセージなどをオペレーションパネル910の表示部に出力して、外部アプリ117の起動は行わない。
【0093】
一方、診断結果が異常なしの場合には(ステップS704:Yes)、外部アプリ117がインストールされているか否かを判断するため、起動設定ファイル221が起動選択データ211で設定された保存先の媒体に存在するか否かを調べる(ステップS705)。
【0094】
すなわち、起動選択データ211の設定で外部アプリ117をHDD103から起動する場合にはHDD103に起動設定ファイル221が存在するか否かを調べ、起動選択データ211の設定で外部アプリ117をICカード240から起動する場合にはICカード240に起動設定ファイル221が存在するか否かを調べる。また、起動選択データ211の設定で外部アプリ117をHDD103およびICカード240の双方から起動する場合には双方の媒体に起動設定ファイル221が存在するか否かを調べる。
【0095】
そして、起動設定ファイル221が存在しない場合には(ステップS705:No)、その媒体に外部アプリ117はインストールされていないと判断し、フラッシュメモリ210の外部アプリ存否データ214に「無」を設定する(ステップS712)。
【0096】
一方、起動設定ファイル221が存在する場合には(ステップS705:Yes)、さらにその起動設定ファイル221に外部アプリ117のプログラム名称の設定が記述されているか否かを調べる(ステップS706)。起動設定ファイル221に外部アプリ117のプログラム名称の設定が記述されていない場合には(ステップS706:No)、その媒体に外部アプリ117はインストールされていないと判断し、フラッシュメモリ210の外部アプリ存否データ214に「無」を設定する(ステップS712)。
【0097】
一方、起動設定ファイル221に外部アプリ117のプログラム名称の設定が記述されている場合には(ステップS706:Yes)、外部アプリ117がインストールされていると判断し、フラッシュメモリ210の外部アプリ存否データ214に「有」を設定する(ステップS707)。
【0098】
次に、外部アプリ起動部131は、起動選択データ211で設定された保存先の媒体から外部アプリ117のアプリケーション記述ファイル222を読み込む(ステップS708)。そして、アプリケーション記述ファイル222に設定されているライセンスキーが期限切れや異常でないかなど、ライセンスキーの有効性について判断する(ステップS709)。このとき、ライセンスキーが無効と判断した場合には外部アプリ117の起動は行わず、その旨のエラーメッセージをオペレーションパネル910の表示部に出力する。
【0099】
ライセンスキーが有効の場合、外部アプリ起動部131は、起動選択データ211で設定された保存先の媒体から外部アプリ117の起動を行う(ステップS710)。そして、上記ステップS708からS710までの処理を、起動設定ファイル221に設定されているすべての外部アプリ117について繰り返し行う(ステップS711)。これによって、図2に示すように、指定された媒体にインストールされているすべての外部アプリ117が起動され、アプリケーション層で実行されることになる。
【0100】
上記の手順において、外部アプリ存否データ214を外部アプリ起動部131により設定することに代えて、外部アプリを媒体等に記録するときに、外部アプリ存否データ214を所定の場所に記録してもよい。
【0101】
ここで、拡張機能設定データおよび起動選択データの内容は、複合機100のオペレーションパネル910から初期設定画面を用いて設定することが可能となっている。
【0102】
図8は、初期設定画面の内容を示す説明図である。初期設定画面は、SCS122によってOCS126の関数ライブラリの描画関数を呼び出すことによりオペレーションパネル910に表示される。このとき、図2に示すように、SCS122は、フラッシュメモリ210の外部アプリ存否データ214を参照し、外部アプリ存否データ214が「有」に設定されている場合、すなわち起動選択データ211で設定されている媒体に外部アプリ117がインストールされている場合に、図8に示す初期設定画面の管理者用設定画面に「拡張機能の起動」の項目を表示する。この「拡張機能の起動」の項目では、「する」と「しない」が選択可能となっており、「する」を選択するとSCS122によって拡張機能設定データ213に「起動」が設定され、「しない」を選択するとSCS122によって拡張機能設定データ213に「起動しない」が設定される。
【0103】
また、図8に示す初期設定画面の管理者用設定画面では、起動選択データ211の設定を行うための「起動選択」の項目が表示される。この「起動選択」の項目では、「HDD」、「ICカード」、「HDDおよびICカード」が選択可能となっており、SCS122によって選択された内容が起動選択データ211に設定される。
【0104】
次に、本実施の形態の複合機100のハードウェア構成について説明する。図9は、図1に示した実施の形態1の複合機100のハードウェア構成図である。図9に示すように、この複合機は、CPU902、SDRAM903、SRAM908、フラッシュメモリ(フラッシュROM)210、ICカードインタフェース部230およびHDD103などをASIC901に接続したコントローラボード900と、オペレーションパネル910と、ファックスコントロールユニット(FCU)920と、USB930と、IEEE1394 940と、プリンタ950とから構成されている。オペレーションパネル910はASIC901に直接接続され、FCU920、USB930、IEEE1394 940およびプリンタ950はPCIバスを介してASIC901に接続されている。
【0105】
フラッシュメモリ210は、上述した通り、起動選択データ211と、拡張機能設定データ213と、外部アプリ存否データ214と、コンフィグレーションファイル212とが格納されている。また、フラッシュメモリ210には、汎用OS121、コントロールサービスおよびプリンタアプリ111、コピーアプリ112などの既存アプリケーション130のプログラムが格納されている。
【0106】
ICカードインタフェース部230は、ICカード240を挿入して、ICカード240とデータのやりとりを行うインタフェースである。ICカード240は、インストール用記憶媒体として使用することができ、この場合には開発された外部アプリ117をICカード240に格納して、インストーラ118によって外部アプリ117をICカード240からHDD103にインストールされることになる。また、ICカード240から直接外部アプリを起動することもできる。
【0107】
このように実施の形態1にかかる複合機100では、外部アプリ起動部131が、HDD103またはICカード240のいずれか若しくは双方を起動先として選択し、選定された起動先に格納されている外部アプリ117を起動しているので、外部アプリ117を容易に起動することができ、複合機100に外部アプリ117で提供される多種多様な機能を実現させることができる。
【0108】
また、実施の形態1にかかる複合機100では、HDD103やICカード240から必要な外部アプリ117が保存されている媒体を選択して起動することができ、メモリ容量など資源に制限のある複合機100において、外部アプリ117による必要な機能を支障なく実現させることができる。
【0109】
なお、上記の実施の形態においては、プログラムとしての外部アプリ起動部を複合機内に備えていたが、外部アプリ起動部を例えばICカードに格納しておき、ICカードから複合機内にインストール、もしくは、ICカードから起動してもよい。また、外部アプリ起動部を、画像形成装置にネットワークを介して接続されたコンピュータに格納しておき、そのコンピュータから複合機にインストール、もしくは、そのコンピュータから外部アプリ起動部を起動してもよい。このことは他の実施の形態においても同様である。
【0110】
(実施の形態2)
実施の形態1にかかる複合機100は、HDD103、ICカード240またはその双方を初期設定画面で選択させて、選択された保存媒体にインストール(保存)されている外部アプリ117をすべて起動していたが、この実施の形態2にかかる複合機100は、インストール(保存)されている外部アプリ117の中から必要な外部アプリ117をさらに選定して起動するものである。
【0111】
実施の形態2にかかる複合機100の機能的構成、ハードウェア構成および外部アプリ起動部131の構成は、実施の形態1の複合機100と同様である。
【0112】
本実施の形態の複合機100では、フラッシュメモリ210に格納されている拡張機能設定データ213の設定内容と外部アプリ起動部131による起動処理が実施の形態1と異なっている。
【0113】
図10は、実施の形態2の複合機100における拡張機能設定データ213の設定内容の一例を示す説明図である。図10に示すように、拡張機能設定データ213は、実施の形態1と同様に外部アプリ117による拡張機能を使用するか否か(外部アプリ117を起動するか否か)の設定の他、インストールされている外部アプリ117ごとに、各外部アプリ117を「起動する」か「起動しない」かが設定される。かかる外部アプリ117ごとの起動の要否は、拡張機能が「起動する」に設定されている場合にのみオペレーションパネル910に表示される初期設定画面によって設定され、外部アプリ起動部131から参照される。拡張機能設定データ213の各外部アプリ117に「起動する」が設定されている場合には、外部アプリ117の起動処理が行われ、「起動しない」が設定されている場合には外部アプリ117の起動処理は行われない。
【0114】
次に、実施の形態2にかかる複合機100の外部アプリ起動部131による外部アプリ117の起動処理について説明する。図11は、外部アプリ起動部131による外部アプリ117の起動処理の手順を示すフローチャートである。
【0115】
外部アプリ117による拡張機能を使用するか否かの判断(ステップS1101)からライセンスキーの有効性の判断(ステップS1109)までの処理については、実施の形態1の複合機100の外部アプリ起動処理(図7のステップS701〜S709)と同様である。
【0116】
ライセンスキーが有効の場合、外部アプリ起動部131は、起動選択データ211で設定された保存先の媒体から外部アプリ117の起動を行う(ステップS1110)。そして、ステップS1108からS1110までの処理を、拡張機能設定データ213で「起動」に設定されている外部アプリ117のみに対して繰り返し行う(ステップS1111)。これによって、インストールされている外部アプリ117の中で、拡張機能設定データ213で「起動」に設定されているすべての外部アプリ117が起動され、アプリケーション層で実行されることになる。従って、起動選択データ211で、「HDD」と「ICカード」の双方が設定されている場合には、HDD103とICカード240に格納されているすべての外部アプリ117の中から拡張機能設定データ213で設定された外部アプリ117が選択されて起動されることになる。
【0117】
ここで、拡張機能設定データ213の中の外部アプリ117の起動可否のデータは、複合機100のオペレーションパネル910から、初期設定画面を用いて設定することが可能である。図12は、実施の形態2の複合機100においてオペレーションパネル910に表示される初期設定画面の内容例を示す説明図である。初期設定画面は、図12に示す初期設定画面の管理者用設定画面に「拡張機能の起動」、「起動選択」の項目とともに、「外部アプリ起動」の項目を表示する。この「外部アプリ起動」の項目では、「する」と「しない」が選択可能となっており、「する」を選択するとSCS122によって拡張機能設定データ213に「起動」が設定され、「しない」を選択するとSCS122によって拡張機能設定データ213に「起動しない」が設定される。なお、他の項目の設定時の処理については、実施の形態1の複合機100における初期設定画面と同様である。
【0118】
図12に示す設定画面では、例えば、起動選択でHDDを選択した場合には、HDDに格納されているアプリケーションが、「外部アプリ起動」の項目に表示される。
【0119】
このように実施の形態2にかかる複合機100では、外部アプリ起動部131が、拡張機能設定データを参照し、「起動」が設定されている外部アプリ117のみを選択して起動しているので、外部アプリ117が多数インストールされている場合にも必要な拡張機能のみを実行することができ、複合機100のメモリ容量などの資源の節約を図るとともに処理効率を向上させることができる。
【0120】
(実施の形態3)
実施の形態1および2にかかる複合機100は、HDD103、ICカード240からの外部アプリ117の起動を行うものであったが、この実施の形態3にかかる複合機100は、さらにネットワークに接続されたコンピュータに保存されている外部アプリ117を起動可能とするものである。また、外部アプリ117の起動先を、HDD103、ICカード240およびネットワークの間で選択可能とするものである。
【0121】
本実施の形態における外部アプリ起動部によるネットワーク上のコンピュータからの外部アプリケーションの起動は、コンピュータから外部アプリケーションをダウンロードして一時的に保存して起動する他、コンピュータから外部アプリケーションを複合機にインストールしてから起動する場合も含まれる。
【0122】
実施の形態3にかかる複合機100の機能的構成およびハードウェア構成は実施の形態1および2の複合機100と同様である。実施の形態3にかかる複合機100は、外部アプリ起動部の構成および外部アプリ117の起動処理、フラッシュメモリ210に格納する起動選択データの内容が実施の形態1の複合機100と異なっている。
【0123】
図13は、実施の形態3の複合機100における外部アプリ起動部1331の機能的構成およびネットワークに接続された構成を示すブロック図である。外部アプリ起動部1331は、図13に示すように、初期化部201と、オプション解析部202と、HDD診断結果通信部203と、フラッシュメモリ管理部204と、起動設定処理部205と、アプリケーション記述処理部206と、ライセンス判断部207と、アプリケーション起動部208と、通信部1332とから構成される。
【0124】
また、HDD103およびICカード240にはそれぞれ、実施の形態1の複合機100と同様に、一または複数の外部アプリ117と、各媒体から起動する外部アプリ117を指定したデータを設定した起動設定ファイル221と、外部アプリ117の各種情報が設定されたアプリケーション記述ファイル222とが格納されている。
【0125】
フラッシュメモリ210には、起動選択データ1351と、拡張機能設定データ213と、外部アプリ存否データ214と、コンフィグレーションファイル212とが格納されている。
【0126】
本実施の形態にかかる複合機100は、インターネット1310などのネットワークに接続されており、インターネット1310上にはコンピュータ1320とコンピュータ1340が接続されている。
【0127】
コンピュータ1320は、そのハードディスク装置などの保存領域に起動設定ファイル1321と、一または複数の外部アプリ117と、外部アプリ117に対応したアプリケーション記述ファイル1322とを保存している。一方、コンピュータ1340には、起動設定ファイル1341が保存されている。
【0128】
外部アプリ起動部1331の通信部1332は、このインターネット1310を介して、httpプロトコルまたはftpプロトコルに従ってコンピュータ1320またはコンピュータ1340から起動設定ファイル1321、1341、アプリケーション記述ファイル1322の受信、外部アプリ117の受信を行うものである。
【0129】
次に、インターネット1310上のコンピュータ1320に格納されている起動設定ファイル1321、およびコンピュータ1340に格納されている起動設定ファイル1341の内容について説明する。図14は、インターネット1310上のコンピュータ1320に格納されている起動設定ファイル1321、もしくはコンピュータ1340に格納されている起動設定ファイル1341の内容の一例を示す説明図である。
【0130】
インターネット1310上のコンピュータに1320,1340保存されている起動設定ファイル1321、1341は、基本的には複合機100のHDD103およびICカード240の起動設定ファイル221と同様に、インストールされている外部アプリ117のプログラム名称のリストを記述するものである。ただし、起動設定ファイル1321、1341は、複合機100からhttpプロトコルでアクセスされる場合には、図14に示すように、http形式で記述されている。なお、ftpプロトコルでアクセスされる領域に起動設定ファイル1321、1341がある場合には、HDD103およびICカード240の起動設定ファイル221と同様の形式で記述される。
【0131】
また、プログラム名称は、コンピュータ1320のアプリ保存領域のURLを含めて記述される。なお、このプログラム名称は一つのコンピュータ内で一意の名称である。
【0132】
なお、本実施の形態では、インターネット1310上の起動設定ファイルは、起動設定ファイル1321のように外部アプリ117のアプリ保存領域のあるコンピュータ1320と同じサイトにある他、起動設定ファイル1341のように外部アプリ117のアプリ保存領域のあるコンピュータ1320と異なるサイトのコンピュータ1340に存在するように構成しても良い。後者の場合には、起動設定ファイル1341のプログラム名称は、外部アプリ117のアプリ保存領域のあるコンピュータ1320のURLを指定するように記述する必要がある。また、ネットワークを介して外部アプリを起動する場合の起動設定ファイルを複合機100内に格納しておいてもよい。
【0133】
次に、本実施の形態の複合機100で使用する起動選択データ1351について説明する。図15は、起動選択データ1351の設定内容の一例を示す説明図である。起動選択データ1351は、外部アプリ117の保存先(保存媒体、アプリ保存領域)を示すものである。図15に示すように、起動選択データ1351には、「HDD」、「ICカード」、「http」または「ftp」が設定可能であり、この中から複数の項目を設定することも可能である。この起動選択データ1351は、オペレーションパネル910に表示される初期設定画面によって設定され、外部アプリ起動部131によって参照される。
【0134】
起動選択データ1351に「HDD」が設定されている場合には、HDD103に格納されている外部アプリ117のみが起動され、起動選択データ211に「ICカード」が設定されている場合には、ICカード240に保存されている外部アプリ117のみが起動される。
【0135】
また、起動選択データ1351に「http」または「ftp」が設定されている場合には、インターネット1310上のアプリ保存領域に格納されている外部アプリ117を受信して起動する。このとき、「http」の設定時にはhttpプロトコルでインターネット1310上のアプリ保存領域にアクセスし、「ftp」の設定時にはftpプロトコルでインターネット1310上のアプリ保存領域にアクセスする。
【0136】
また、起動選択データ1351には、起動設定ファイルアドレス(URL)がhttpプロトコルでアクセスする場合とftpプロトコルでアクセスする場合の両方について設定される。この起動設定ファイルアドレスもオペレーションパネル910に表示される初期設定画面によって設定され、外部アプリ起動部131によって参照される。
【0137】
すなわち、外部アプリ起動部131は、まず起動選択データ1351に設定されている起動設定ファイルアドレスのURLを参照する。このURL指定されたインターネット1310上の起動設定ファイル1321もしくは1341を参照し、起動設定ファイル1321もしくは1341に指定されているURLのアプリ保存領域から外部アプリ117を受信して起動する。
【0138】
また、拡張機能設定データ213は、実施の形態1と同様のデータ構造とすることができる。更に、拡張機能設定データに実施の形態2と同様に、外部アプリ117ごとに「起動」、「起動しない」の設定を行い、外部アプリ117によって拡張機能設定データ213に「起動」と設定されている外部アプリ117のみを選択して起動するように構成することも可能である。
【0139】
次に、実施の形態3にかかる複合機100の外部アプリ起動部1331による外部アプリ117の起動処理について説明する。図16は、外部アプリ起動部1331による外部アプリ117の起動処理の手順を示すフローチャートである。
【0140】
外部アプリ起動部1331は、まずフラッシュメモリ210から拡張機能設定データ213を読み出し、外部アプリ117による拡張機能を使用するか否かを判断するため、拡張機能設定データ213に「起動」が設定されているか否かを調べる(ステップS1601)。そして、拡張機能設定データ213に「起動なし」が設定されている場合には(ステップS1601:No)、外部アプリ117の起動は行わず終了する。
【0141】
一方、拡張機能設定データ213に「起動」が設定されている場合には(ステップS1601:Yes)、次に、フラッシュメモリ210から起動選択データ1351を読み出し、外部アプリ117を起動する媒体を判断するため、起動選択データ1351の設定内容を調べる(ステップS1602)。そして、起動選択データ1351の設定がHDDを含む場合には(ステップS1602:Yes)、HDD診断部132による診断結果の通知待ち状態となる。
【0142】
そしてHDD診断部132から診断結果を受信すると(ステップS1603)、診断結果が異常なしか否かを判断する(ステップS1604)。診断結果が異常ありの場合(ステップS1604:No)には、エラーメッセージなどをオペレーションパネル910の表示部に出力して、外部アプリ117の起動は行わない。
【0143】
一方、診断結果が異常なしの場合には(ステップS1604:Yes)、インターネット1310上の外部アプリ117を起動するか否か判断するため、起動選択データ1351に「http」または「ftp」が設定されているか否か調べる(ステップS1605)。そして、「http」または「ftp」が設定されている場合には、起動選択データ1351の起動設定ファイルアドレスで指定されたURLにアクセスする(ステップS1606)。ここで、起動選択データ1351に「http」が設定されている場合にはhttpプロトコルで、起動選択データ1351に「ftp」が設定されている場合にはftpプロトコルでURLにアクセスする。
【0144】
そして、外部アプリ起動部1331は、外部アプリ117が存在するか否かを判断するため、起動選択データで指定された媒体に起動設定ファイルが存在するか否かを調べる(ステップS1607)。ここで、起動選択の設定が「HDD」または「ICカード」の場合には、当該媒体に起動設定ファイル221が存在するか否かを調べる。また、起動選択の設定が「http」または「ftp」の場合には、ステップS1606でアクセスしたURLに起動設定ファイル1321もしくは1341が存在するか否かを調べる。
【0145】
そして、起動設定ファイルが存在しない場合には(ステップS1607:No)、その起動選択先に外部アプリ117はインストールされていないと判断し、フラッシュメモリ210の外部アプリ存否データ214に「無」を設定する(ステップS1614)。
【0146】
一方、起動設定ファイルが存在する場合には(ステップS1607:Yes)、さらにその起動設定ファイルに外部アプリ117のプログラム名称の設定が記述されているか否かを調べる(ステップS1608)。起動設定ファイルに外部アプリ117のプログラム名称が記述されていない場合には(ステップS1608:No)、その起動選択先に外部アプリ117はインストールされていないと判断し、フラッシュメモリ210の外部アプリ存否データ214に「無」を設定する(ステップS1614)。
【0147】
一方、起動設定ファイルに外部アプリ117のプログラム名称の設定が記述されている場合には(ステップS1608:Yes)、起動選択先に外部アプリ117がインストールされていると判断し、フラッシュメモリ210の外部アプリ存否データ214に「有」を設定する(ステップS1609)。
【0148】
次に、外部アプリ起動部1331は、起動選択データ1351で設定された起動選択先の媒体またはアプリ保存領域から外部アプリ117のアプリケーション記述ファイル222を読み込む(ステップS1610)。そして、アプリケーション記述ファイル222に設定されているライセンスキーが期限切れや異常でないかなど、ライセンスキーの有効性について判断する(ステップS1611)。このとき、ライセンスキーが無効と判断した場合には外部アプリ117の起動は行わず、その旨のエラーメッセージをオペレーションパネル910の表示部に出力する。
【0149】
ライセンスキーが有効の場合、外部アプリ起動部131は、起動選択データで設定された保存先の媒体から外部アプリ117の起動を行う(ステップS1612)。
【0150】
このとき、起動選択データ1351の起動選択がhttpもしくはftpに設定されている場合には、起動設定ファイル1321もしくは1341でURLとともに指定されたアプリ保存領域から外部アプリ117を複合機100に一時的にダウンロードして、ダウンロードした外部アプリ117を起動する。
【0151】
そして、上記ステップS1610からS1612までの処理を、起動設定ファイル221に設定されているすべての外部アプリ117について繰り返し行う(ステップS1613)。
【0152】
なお、インターネット1310上のアプリ保存領域の外部アプリ117を起動する場合には、複数の外部アプリ117をその都度ダウンロードすると通信効率が悪いため、最初にアプリ保存領域のURLにアクセスしたときに、起動設定ファイル1321もしくは1341で設定されている外部アプリ117を一括して複合機100にダウンロードしておくことが好ましい。
【0153】
以上の処理によって、図2に示すように、指定された起動選択先にインストールされているすべての外部アプリ117が起動され、アプリケーション層で実行されることになる。
【0154】
ここで、本実施の形態の複合機100でも起動選択データ1351の内容は、複合機100のオペレーションパネル910から設定することが可能となっている。図17は、初期設定画面の内容を示す説明図である。初期設定画面は、実施の形態1と同様に、SCS122によってOCS126の関数ライブラリの描画関数を呼び出すことによりオペレーションパネル910に表示される。このとき、図17に示すように、SCS122は、フラッシュメモリ210の外部アプリ存否データ214を参照し、外部アプリ存否データ214が「有」に設定されている場合、すなわち起動選択データで設定されている起動選択先に外部アプリ117がインストールされている場合に、図17に示す初期設定画面の管理者用設定画面に「拡張機能の起動」、「起動選択」および「起動設定ファイルアドレス」の項目を表示する。「拡張機能の起動」の項目は、実施の形態1の複合機100の初期設定画面と同様である。
【0155】
また、「起動選択」の項目は、起動選択データ1351の起動選択に対応したものであり、「HDD」、「ICカード」、「http」、「ftp」およびこれらを複数組み合わせたものが選択可能となっており、SCS122によって選択された内容が起動選択データ1351に設定される。
【0156】
また、「起動設定ファイルアドレス」の項目では、起動設定ファイル1321,1341の存在するアドレスを指定する。かかる指定は、httpプロトコル使用時と、ftpプロトコル使用時の2つのパターンを指定するようになっている。かかる項目で設定された内容もSCS122によって起動選択データ1351に設定される。
【0157】
このように実施の形態3にかかる複合機100では、外部アプリ起動部1331が外部アプリ117を格納するインターネット1310上のアプリ保存領域とHDD103とICカード240とから一または複数を起動先として選択して外部アプリ117を起動しているので、外部アプリ117がインターネット1310に存在する場合でも、外部アプリ117を容易に起動することができ、複合機100に多種多様な機能を実現させることができる。
【0158】
なお、実施の形態3では、コンピュータ1320にのみ外部アプリ117が保存されているが、インターネット1310上の複数の領域に外部アプリ117が保存されている場合にも本発明を適用することが可能である。この場合には、起動選択データ1351に複数の起動設定ファイルのURLを設定するか、起動設定ファイルに各アプリ保存領域のURLを設定するように構成する。
【0159】
また、実施の形態3の複合機100では、インターネット1310上のアプリ保存領域に保存されている外部アプリ117を起動する場合、起動するごとに外部アプリ117をダウンロードして起動しているが、初めてアプリ保存領域の該当する外部アプリ117にアクセスしたときに、当該外部アプリ117を複合機100にダウンロードするとともにインストールし、2回目以降の起動の場合には、インストールされたHDD103から外部アプリ117を起動するように構成しても良い。
【0160】
(実施の形態4)
実施の形態1〜3においては、外部アプリ起動部131は図1に示すように複合機100内に備えられていた。実施の形態4は、VAS(Virtual Application Service)に外部アプリ起動部131の機能を持たせる形態である。
【0161】
この場合の複合機100の機能構成を図18に示す。同図に示すように、VAS140がアプリとコントロールサービスの間に設けられる。VAS140は、アプリに対してはサーバプロセスとして動作し、各コントロールサービスに対してはクライアントプロセスとして動作するソフトウェアモジュールであり、アプリで使用するAPIと、コントロールサービスが提供するAPIとのバージョン差を吸収したり、アプリに対してコントロールサービスの特定の機能を隠蔽するといった機能を有している。
【0162】
このVAS140に外部アプリ起動部131の機能を持たせ、VAS140が起動設定ファイル等を参照することにより、これまでに説明した外部アプリ起動部131と同様にして外部アプリの起動を行う。更に、VAS140は、アプリを仮起動させ、アプリに関する情報(使用するリソースなど)をアプリから取得し、そのアプリが複合機100で実行できるか否かを判断する起動制御の機能も有している。なお、仮起動とは、VAS140とアプリとがプロセス間通信をして、VAS140がアプリに関する情報を取得するためだけにアプリを起動することである。アプリはこのような仮起動ができるように作成されており、VAS140から仮起動をパラメータにより指定されたときに仮起動する。
【0163】
また、上記の実施の形態1〜3では、SCS122の機能により表示される初期設定画面から、起動先やどの外部アプリを起動するかの指示を行い、起動選択情報や拡張機能設定データを作成していたが、VAS140が選択画面を表示し、起動選択情報や拡張機能設定データを作成してもよい。
【0164】
VAS自体は、例えば、複合機初期化部129により起動される。また、VAS140自体を複合機の外部の媒体(ICカード、ネットワークを介して接続されたサーバ等)に格納しておき、そこからVAS140を起動することも可能である。
【0165】
なお、本発明は、上記の実施例に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【符号の説明】
【0166】
100 複合機
101 白黒ラインプリンタ
102 カラーラインプリンタ
103 ハードディスク装置(HDD)
104 ハードウェアリソース
110 ソフトウェア群
111 プリンタアプリ
112 コピーアプリ
113 ファックスアプリ
114 スキャナアプリ
115 ネットファイルアプリ
116 工程検査アプリ
117 外部アプリ
118 インストーラ
120 プラットホーム
121 汎用OS
122 SCS
123 SRM
124 ECS
125 MCS
126 OCS
127 FCS
128 NCS
129 複合機初期化部
130 アプリケーション
131 外部アプリ起動部
132 HDD診断部
140 VAS
201 初期化部
202 オプション解析部
203 HDD診断結果通信部
204 フラッシュメモリ管理部
205 起動設定処理部
206 アプリケーション記述処理部
207 ライセンス判断部
208 アプリケーション起動部
210 フラッシュメモリ
211 起動選択データ
212 コンフィグレーションファイル
213 拡張機能設定データ
214 外部アプリ存否データ
221,1321,1341 起動設定ファイル
222 アプリケーション記述ファイル
230 ICカードインタフェース部
240 ICカード
900 コントローラボード
901 ASIC
902 CPU
903 SDRAM(RAM)
908 SRAM
910 オペレーションパネル
930 USB
940 IEEE1394
950 プリンタ
1310 インターネット
1320 コンピュータ(アプリ保存領域)
1331 外部アプリ起動部
1332 通信部
1340 コンピュータ
1351 起動選択データ
【先行技術文献】
【特許文献】
【0167】
【特許文献1】特開2002−297403号公報

【特許請求の範囲】
【請求項1】
画像形成処理に関するシステム側の処理を行うサービスモジュールを有し、当該サービスモジュールとは別にアプリケーションを搭載可能に構成された画像形成装置において、
アプリケーションを格納した少なくとも1つの場所を示す起動選択情報を参照し、当該起動選択情報に従って前記少なくとも1つの場所からアプリケーションを起動するアプリケーション起動手段を備えたことを特徴とする画像形成装置。
【請求項2】
前記少なくとも1つの場所は、ハードディスク装置、画像形成装置に着脱可能な記憶媒体、及び、ネットワークを介して画像形成装置に接続されるコンピュータのうちの1つ又は複数である請求項1に記載の画像形成装置。
【請求項3】
前記起動選択情報の設定画面を前記画像形成装置の表示部に表示し、当該設定画面から指定された情報を前記起動選択情報として格納する手段を有する請求項1に記載の画像形成装置。
【請求項4】
前記アプリケーション起動手段は、アプリケーションに関する情報を参照することにより、当該アプリケーションを起動する請求項1ないし3のうちいずれか1項に記載の画像形成装置。
【請求項5】
前記情報はアプリケーションのアドレス情報である請求項4に記載の画像形成装置。
【請求項6】
前記アプリケーション起動手段は、アプリケーションに関する情報の有無により、前記場所にアプリケーションがインストールされているか否かを判断し、インストールされていると判断した場合に前記アプリケーションを起動する請求項1ないし3のうちいずれか1項に記載の画像形成装置。
【請求項7】
前記アプリケーション起動手段は、所定のアプリケーションを起動するか否かを示す情報を含む設定情報を参照し、当該設定情報に所定のアプリケーションを起動することを示す情報が設定されている場合に、当該所定のアプリケーションを起動する請求項1ないし6のうちいずれか1項に記載の画像形成装置。
【請求項8】
前記アプリケーション起動手段は、アプリケーションごとに、当該アプリケーションを起動するか否かを示す情報を含む設定情報を参照し、当該設定情報に起動することを示す情報が設定されているアプリケーションのみを起動する請求項1ないし6のうちいずれか1項に記載の画像形成装置。
【請求項9】
前記設定情報の設定画面を画像形成装置の表示部に表示し、当該設定画面から指定された情報を前記設定情報として格納する手段を有する請求項7または8に記載の画像形成装置。
【請求項10】
前記画像形成装置は、前記サービスモジュールに対してクライアントプロセスとして動作し、前記アプリケーションに対してサーバプロセスとして動作する仮想アプリケーションサービスを更に有し、該仮想アプリケーションサービスが前記アプリケーション起動手段を含む請求項1に記載の画像形成装置。
【請求項11】
前記画像形成装置は、ネットワークを介して当該画像形成装置に接続されるコンピュータから、アプリケーションをhttpプロトコル又はftpプロトコルによって受信し、前記アプリケーション起動手段は、受信したアプリケーションを起動する請求項2に記載の画像形成装置。
【請求項12】
画像形成処理に関するシステム側の処理を行うサービスモジュールを有し、当該サービスモジュールとは別にアプリケーションを搭載可能に構成された画像形成装置を、
アプリケーションを格納した少なくとも1つの場所を示す起動選択情報を参照し、当該起動選択情報に従って前記少なくとも1つの場所からアプリケーションを起動するアプリケーション起動手段として機能させるプログラム。
【請求項13】
前記少なくとも1つの場所は、ハードディスク装置、画像形成装置に着脱可能な記憶媒体、及び、ネットワークを介して画像形成装置に接続されるコンピュータのうちの1つ又は複数である請求項12に記載のプログラム。
【請求項14】
前記画像形成装置を、前記起動選択情報の設定画面を前記画像形成装置の表示部に表示し、当該設定画面から指定された情報を前記起動選択情報として格納する手段として更に機能させる請求項12に記載のプログラム。
【請求項15】
前記アプリケーション起動手段は、アプリケーションに関する情報を参照することにより、当該アプリケーションを起動する請求項12ないし14のうちいずれか1項に記載のプログラム。
【請求項16】
前記情報はアプリケーションのアドレス情報である請求項15に記載のプログラム。
【請求項17】
前記アプリケーション起動手段は、アプリケーションに関する情報の有無により、前記場所にアプリケーションがインストールされているか否かを判断し、インストールされていると判断した場合に前記アプリケーションを起動する請求項12ないし14のうちいずれか1項に記載のプログラム。
【請求項18】
前記アプリケーション起動手段は、所定のアプリケーションを起動するか否かを示す情報を含む設定情報を参照し、当該設定情報に所定のアプリケーションを起動することを示す情報が設定されている場合に、当該所定のアプリケーションを起動する請求項12ないし17のうちいずれか1項に記載のプログラム。
【請求項19】
前記アプリケーション起動手段は、アプリケーションごとに、当該アプリケーションを起動するか否かを示す情報を含む設定情報を参照し、当該設定情報に起動することを示す情報が設定されているアプリケーションのみを起動する請求項12ないし17のうちいずれか1項に記載のプログラム。
【請求項20】
前記画像形成装置を、前記設定情報の設定画面を画像形成装置の表示部に表示し、当該設定画面から指定された情報を前記設定情報として格納する手段として更に機能させる請求項18または19に記載のプログラム。
【請求項21】
前記アプリケーション起動手段は、ネットワークを介して画像形成装置に接続されるコンピュータから、アプリケーションをhttpプロトコル又はftpプロトコルによって受信し、受信したアプリケーションを起動する請求項13に記載のプログラム。
【請求項22】
請求項12ないし21のうちいずれか1項に記載のプログラムを格納したコンピュータ読み取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2012−14710(P2012−14710A)
【公開日】平成24年1月19日(2012.1.19)
【国際特許分類】
【出願番号】特願2011−168663(P2011−168663)
【出願日】平成23年8月1日(2011.8.1)
【分割の表示】特願2003−195192(P2003−195192)の分割
【原出願日】平成15年7月10日(2003.7.10)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】