(57)【要約】【課題】画像形成装置において、新規アプリケーションを特定イベントの発生に応じて適切に起動させることが可能な技術を提供する。【解決手段】画像形成装置１０は、新規アプリケーションのインストールを検知するインストール検知部１１と、新規アプリケーションの起動タイミングに関する第１の情報を取得するとともに、画像形成装置における複数のアプリケーションの各起動タイミングに関する起動タイミング情報（第１の情報を含む）を登録する登録制御部１２とを備える。また、画像形成装置１０は、画像形成装置における特定イベントの発生を検出するイベント検出部１５と、特定イベントの発生に応答して起動すべき起動対象アプリケーションを起動タイミング情報に基づいて決定し、特定イベントの発生に応答して起動対象アプリケーションを起動する動作制御部１７とをさらに備える。【選択図】図３
2014203430.tif 000002
【特許請求の範囲】
【請求項１】
画像形成装置であって、
前記画像形成装置に対して新たにインストールされた新規アプリケーションの起動タイミングに関する第１の情報を取得するとともに、前記画像形成装置における複数のアプリケーションの各起動タイミングに関する起動タイミング情報であって前記第１の情報を含む起動タイミング情報を登録する登録制御手段と、
前記画像形成装置における特定イベントの発生を検出するイベント検出手段と、
前記特定イベントの発生に応答して起動すべき起動対象アプリケーションを前記起動タイミング情報に基づいて決定し、前記特定イベントの発生に応答して前記起動対象アプリケーションを起動する動作制御手段と、
を備えることを特徴とする画像形成装置。
【請求項２】
請求項１に記載の画像形成装置において、
前記起動タイミング情報においては、各アプリケーションに対して、当該各アプリケーションを起動すべきイベントである起動イベントが関連付けられて規定されることを特徴とする画像形成装置。
【請求項３】
請求項２に記載の画像形成装置において、
前記起動タイミング情報においては、前記複数のアプリケーションと複数の起動イベントとの関係が、同一の起動イベントごとに分類されて格納されることを特徴とする画像形成装置。
【請求項４】
請求項１ないし請求項３のいずれかに記載の画像形成装置において、
前記第１の情報は、前記新規アプリケーションのインストール用記録媒体に格納されており、
前記登録制御手段は、前記インストール用記録媒体から前記第１の情報を取得することを特徴とする画像形成装置。
【請求項５】
請求項１ないし請求項３のいずれかに記載の画像形成装置において、
前記第１の情報は、前記新規アプリケーションのインストール時に前記画像形成装置内の記憶部に格納され、
前記登録制御手段は、前記記憶部から前記第１の情報を取得することを特徴とする画像形成装置。
【請求項６】
請求項１ないし請求項３のいずれかに記載の画像形成装置において、
前記第１の情報は、前記画像形成装置の外部装置に格納されており、
前記登録制御手段は、前記外部装置から前記第１の情報を取得することを特徴とする画像形成装置。
【請求項７】
請求項２に記載の画像形成装置において、
前記登録制御手段は、前記画像形成装置にて発生し得る複数の起動イベントのそれぞれを前記新規アプリケーションに試験的に渡して前記新規アプリケーションを試験的に起動させ、前記複数の起動イベントのうち前記新規アプリケーションを正常に起動させることができたイベントのみを、前記新規アプリケーションに対する前記起動イベントとして前記新規アプリケーションに関連付けて登録することを特徴とする画像形成装置。
【請求項８】
請求項２に記載の画像形成装置において、
前記登録制御手段は、前記新規アプリケーションが複数のカテゴリのいずれに所属するかを示す所属カテゴリ情報を取得するともに、前記複数のカテゴリのそれぞれに対応するイベントを予め規定したデータテーブルに基づいて、前記所属カテゴリに対する対応イベントを求め、当該対応イベントを前記新規アプリケーションに対する前記起動イベントとして決定することを特徴とする画像形成装置。
【請求項９】
請求項１ないし請求項３のいずれかに記載の画像形成装置において、
前記動作制御手段は、前記起動タイミング情報に基づいて、前記特定イベントに対応する複数の起動候補アプリケーションを選定するとともに、前記複数の起動候補アプリケーションの中から前記起動対象アプリケーションを決定することを特徴とする画像形成装置。
【請求項１０】
請求項９に記載の画像形成装置において、
前記起動タイミング情報は、前記複数のアプリケーションを複数のカテゴリに分類するカテゴリ情報をアプリケーションごとに有し、
前記動作制御手段は、同一のカテゴリに属する２以上のアプリケーションが前記複数の起動候補アプリケーションに含まれている場合には、前記２以上のアプリケーションのうち最も新しくインストールされた最新アプリケーションであることを条件として前記起動対象アプリケーションを決定することを特徴とする画像形成装置。
【請求項１１】
請求項９に記載の画像形成装置において、
前記起動タイミング情報は、前記複数のアプリケーションを複数のカテゴリに分類するカテゴリ情報をアプリケーションごとに有し、
前記動作制御手段は、異なるカテゴリに属する２以上のアプリケーションが前記複数の起動候補アプリケーションに含まれている場合には、前記２以上のアプリケーションのそれぞれを前記起動対象アプリケーションとして決定することを特徴とする画像形成装置。
【請求項１２】
請求項１ないし請求項１１のいずれかに記載の画像形成装置において、
前記動作制御手段は、前記特定イベントを前記新規アプリケーションに通知し、前記特定イベントに応じた処理を前記新規アプリケーションに実行させることを特徴とする画像形成装置。
【請求項１３】
請求項１ないし請求項１２のいずれかに記載の画像形成装置において、
前記新規アプリケーションは、ジャム発生に応じてジャム位置を表示するジャム位置表示アプリケーションであることを特徴とする画像形成装置。
【請求項１４】
請求項１ないし請求項１２のいずれかに記載の画像形成装置において、
前記新規アプリケーションは、エラー発生に応じてイルミネーション表示を変更するイルミネーション表示アプリケーションであることを特徴とする画像形成装置。
【請求項１５】
画像形成装置に内蔵されたコンピュータに、
ａ）前記画像形成装置に対して新たにインストールされた新規アプリケーションの起動タイミングに関する第１の情報を取得するステップと、
ｂ）前記画像形成装置における複数のアプリケーションの各起動タイミングに関する起動タイミング情報であって前記第１の情報を含む起動タイミング情報を登録するステップと、
ｃ）前記画像形成装置における特定イベントの発生を検出するステップと、
ｄ）前記起動タイミング情報に基づき、前記特定イベントの発生に応答して起動すべき起動対象アプリケーションを決定するステップと、
ｅ）前記ステップｄ）にて決定された前記起動対象アプリケーションを前記特定イベントの発生に応答して起動するステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＭＦＰ（マルチ・ファンクション・ペリフェラル（Multi-Functional Peripheral））などの画像形成装置およびそれに関連する技術に関する。
【背景技術】
【０００２】
画像形成装置の中には、各種のアプリケーションソフトウエアプログラム（以下、単にアプリケーションとも称する）がインストールされ、当該アプリケーションがユーザにより利用されるものが存在する（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１０−３９７６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
このような画像形成装置においては、当該画像形成装置のリソースの制限等に起因して、同時に起動可能なアプリケーションの数には限界が存在する。そのため、画像形成装置にインストールされた複数のアプリケーションのうち必要最低限のアプリケーションのみを起動しておき、特定イベントの発生に応答して、当該特定イベントに対応するアプリケーションがアプリケーションプラットフォームから呼び出されて起動されることが好ましい。たとえば、画像形成装置に予めインストールされている標準のジャム位置表示アプリケーションは、プリンタエンジンにおける用紙ジャムの発生に応答して、アプリケーションプラットフォームから呼び出されて起動されればよい。なお、「ジャム位置表示アプリケーション」は、ジャム位置（ジャムの発生位置）を画像形成装置の操作パネル等に表示しジャム位置をユーザに報知する機能、を有するアプリケーションである。
【０００５】
このように、従来のアプリケーションプラットフォームは、標準アプリケーションごとに予め定められた特定イベントに応答して当該各標準アプリケーションを起動するように実装される。換言すれば、アプリケーションプラットフォームは、標準アプリケーションごとに定められた起動タイミングで各標準アプリケーションを起動する。
【０００６】
ところで、画像形成装置に予めインストールされている標準アプリケーションに類似する新たなアプリケーション（拡張アプリケーション等）をユーザ（管理ユーザ等）がインストールすることが考えられる。
【０００７】
たとえば、標準のジャム位置表示アプリケーションとは別の新たなアプリケーション（拡張ジャム位置表示アプリケーション）をユーザがインストールすることが考えられる。ここで、当該拡張ジャム位置表示アプリケーションは、プリンタエンジンにおける用紙ジャムの発生時のみならずスキャン部のＡＤＦ（Auto Document Feeder：原稿自動送り装置）における原稿ジャムの発生時にもジャム位置を表示する機能、を有するアプリケーションであるものとする。
【０００８】
しかしながら、従来のアプリケーションプラットフォームにおいては標準アプリケーション以外のアプリケーションの動作が規定されていないため、拡張ジャム位置表示アプリケーションなどの新規アプリケーションは正常に動作しない。たとえば、ＡＤＦジャムの発生時にも当該拡張ジャム位置表示アプリケーションを起動するようにアプリケーションプラットフォームが実装されていないため、単に、拡張ジャム位置表示アプリケーション等をインストールしたとしても、拡張ジャム位置表示アプリケーションは正常に動作しない。
【０００９】
そこで、本発明は、新規アプリケーションを特定イベントの発生に応じて適切に起動させることが可能な技術を提供することを課題とする。
【課題を解決するための手段】
【００１０】
上記課題を解決すべく、請求項１の発明は、画像形成装置であって、前記画像形成装置に対して新たにインストールされた新規アプリケーションの起動タイミングに関する第１の情報を取得するとともに、前記画像形成装置における複数のアプリケーションの各起動タイミングに関する起動タイミング情報であって前記第１の情報を含む起動タイミング情報を登録する登録制御手段と、前記画像形成装置における特定イベントの発生を検出するイベント検出手段と、前記特定イベントの発生に応答して起動すべき起動対象アプリケーションを前記起動タイミング情報に基づいて決定し、前記特定イベントの発生に応答して前記起動対象アプリケーションを起動する動作制御手段と、を備えることを特徴とする。
【００１１】
請求項２の発明は、請求項１の発明に係る画像形成装置において、前記起動タイミング情報においては、各アプリケーションに対して、当該各アプリケーションを起動すべきイベントである起動イベントが関連付けられて規定されることを特徴とする。
【００１２】
請求項３の発明は、請求項２の発明に係る画像形成装置において、前記起動タイミング情報においては、前記複数のアプリケーションと複数の起動イベントとの関係が、同一の起動イベントごとに分類されて格納されることを特徴とする。
【００１３】
請求項４の発明は、請求項１ないし請求項３のいずれかの発明に係る画像形成装置において、前記第１の情報は、前記新規アプリケーションのインストール用記録媒体に格納されており、前記登録制御手段は、前記インストール用記録媒体から前記第１の情報を取得することを特徴とする。
【００１４】
請求項５の発明は、請求項１ないし請求項３のいずれかの発明に係る画像形成装置において、前記第１の情報は、前記新規アプリケーションのインストール時に前記画像形成装置内の記憶部に格納され、前記登録制御手段は、前記記憶部から前記第１の情報を取得することを特徴とする。
【００１５】
請求項６の発明は、請求項１ないし請求項３のいずれかの発明に係る画像形成装置において、前記第１の情報は、前記画像形成装置の外部装置に格納されており、前記登録制御手段は、前記外部装置から前記第１の情報を取得することを特徴とする。
【００１６】
請求項７の発明は、請求項２の発明に係る画像形成装置において、前記登録制御手段は、前記画像形成装置にて発生し得る複数の起動イベントのそれぞれを前記新規アプリケーションに試験的に渡して前記新規アプリケーションを試験的に起動させ、前記複数の起動イベントのうち前記新規アプリケーションを正常に起動させることができたイベントのみを、前記新規アプリケーションに対する前記起動イベントとして前記新規アプリケーションに関連付けて登録することを特徴とする。
【００１７】
請求項８の発明は、請求項２の発明に係る画像形成装置において、前記登録制御手段は、前記新規アプリケーションが複数のカテゴリのいずれに所属するかを示す所属カテゴリ情報を取得するともに、前記複数のカテゴリのそれぞれに対応するイベントを予め規定したデータテーブルに基づいて、前記所属カテゴリに対する対応イベントを求め、当該対応イベントを前記新規アプリケーションに対する前記起動イベントとして決定することを特徴とする。
【００１８】
請求項９の発明は、請求項１ないし請求項３のいずれかの発明に係る画像形成装置において、前記動作制御手段は、前記起動タイミング情報に基づいて、前記特定イベントに対応する複数の起動候補アプリケーションを選定するとともに、前記複数の起動候補アプリケーションの中から前記起動対象アプリケーションを決定することを特徴とする。
【００１９】
請求項１０の発明は、請求項９の発明に係る画像形成装置において、前記起動タイミング情報は、前記複数のアプリケーションを複数のカテゴリに分類するカテゴリ情報をアプリケーションごとに有し、前記動作制御手段は、同一のカテゴリに属する２以上のアプリケーションが前記複数の起動候補アプリケーションに含まれている場合には、前記２以上のアプリケーションのうち最も新しくインストールされた最新アプリケーションであることを条件として前記起動対象アプリケーションを決定することを特徴とする。
【００２０】
請求項１１の発明は、請求項９の発明に係る画像形成装置において、前記起動タイミング情報は、前記複数のアプリケーションを複数のカテゴリに分類するカテゴリ情報をアプリケーションごとに有し、前記動作制御手段は、異なるカテゴリに属する２以上のアプリケーションが前記複数の起動候補アプリケーションに含まれている場合には、前記２以上のアプリケーションのそれぞれを前記起動対象アプリケーションとして決定することを特徴とする。
【００２１】
請求項１２の発明は、請求項１ないし請求項１１のいずれかの発明に係る画像形成装置において、前記動作制御手段は、前記特定イベントを前記新規アプリケーションに通知し、前記特定イベントに応じた処理を前記新規アプリケーションに実行させることを特徴とする。
【００２２】
請求項１３の発明は、請求項１ないし請求項１２のいずれかの発明に係る画像形成装置において、前記新規アプリケーションは、ジャム発生に応じてジャム位置を表示するジャム位置表示アプリケーションであることを特徴とする。
【００２３】
請求項１４の発明は、請求項１ないし請求項１２のいずれかの発明に係る画像形成装置において、前記新規アプリケーションは、エラー発生に応じてイルミネーション表示を変更するイルミネーション表示アプリケーションであることを特徴とする。
【００２４】
請求項１５の発明は、画像形成装置に内蔵されたコンピュータに、ａ）前記画像形成装置に対して新たにインストールされた新規アプリケーションの起動タイミングに関する第１の情報を取得するステップと、ｂ）前記画像形成装置における複数のアプリケーションの各起動タイミングに関する起動タイミング情報であって前記第１の情報を含む起動タイミング情報を登録するステップと、ｃ）前記画像形成装置における特定イベントの発生を検出するステップと、ｄ）前記起動タイミング情報に基づき、前記特定イベントの発生に応答して起動すべき起動対象アプリケーションを決定するステップと、ｅ）前記ステップｄ）にて決定された前記起動対象アプリケーションを前記特定イベントの発生に応答して起動するステップと、を実行させるためのプログラムであることを特徴とする。
【発明の効果】
【００２５】
請求項１ないし請求項１５に記載の発明によれば、新規アプリケーションを特定イベントの発生に応じて適切に起動させることが可能である。
【図面の簡単な説明】
【００２６】
【図１】画像形成装置を示す外観図である。
【図２】画像形成装置の機能ブロック図である。
【図３】画像形成装置におけるソフトウエア構成を示す図である。
【図４】新規アプリケーションのインストール時における画像形成装置の動作を示すフローチャートである。
【図５】新規アプリケーションに関する起動タイミングが記述されたデータファイルの一例を示す図である。
【図６】起動タイミング情報作成ツールの操作画面を示す図である。
【図７】起動タイミング情報作成ツールの操作画面を示す図である。
【図８】イベント受信に応じてアプリケーションが起動される動作を示すフローチャートである。
【図９】（新規アプリケーションのインストール前における）起動タイミング情報を示す図である。
【図１０】拡張ジャム位置表示アプリケーションがインストールされる際の動作を示す概念図である。
【図１１】（追加登録後の）起動タイミング情報を示す図である。
【図１２】ＡＤＦジャムイベント発生時の動作を示す概念図である。
【図１３】（新規アプリケーションのインストール前における）起動タイミング情報を示す図である。
【図１４】２つの拡張アプリケーションがインストールされる際の動作を示す概念図である。
【図１５】（追加登録後の）起動タイミング情報を示す図である。
【図１６】起動イベント毎に分類された起動タイミング情報を示す図である。
【図１７】印刷中用紙無しエラーイベント発生時の動作を示す概念図である。
【図１８】サービスコールイベント発生時の動作を示す概念図である。
【図１９】ＦＡＸ送信通信中エラーイベント発生時の動作を示す概念図である。
【図２０】ＡＤＦジャムイベント発生時の動作を示す概念図である。
【図２１】プリンタジャムイベント発生時の動作を示す概念図である。
【図２２】改変例に係る動作を示すフローチャートである。
【図２３】他の改変例に係る動作を示すフローチャートである。
【図２４】カテゴリと起動イベントとの一般的関係を予め規定するデータテーブルを示す図である。
【発明を実施するための形態】
【００２７】
以下、本発明の実施形態を図面に基づいて説明する。
【００２８】
＜１．構成概要＞
図１は、本発明の実施形態に係る画像形成装置１０を示す図であり、図２は、画像形成装置１０の機能ブロックを示す図である。ここでは、画像形成装置１０として、ＭＦＰ（マルチ・ファンクション・ペリフェラル（Multi-Functional Peripheral））を例示する。
【００２９】
ＭＦＰ１０は、スキャン機能、コピー機能、ファクシミリ機能およびボックス格納機能などを備える装置（複合機とも称する）である。具体的には、ＭＦＰ１０は、図２の機能ブロック図に示すように、画像読取部２、印刷出力部３、通信部４、格納部５、操作部６およびコントローラ９等を備えており、これらの各部を複合的に動作させることによって、各種の機能を実現する。
【００３０】
画像読取部２は、ＭＦＰ１０の所定の位置に載置された原稿を光学的に読み取って（すなわちスキャンして）、当該原稿の画像データ（原稿画像なしいスキャン画像とも称する）を生成する処理部である。この画像読取部２は、スキャン部であるとも称される。画像読取部２は、ＡＤＦ（Auto Document Feeder：原稿自動送り装置）を有しており、複数枚の原稿を順次に且つ自動的に読み取ることが可能である。
【００３１】
印刷出力部３は、印刷対象に関するデータに基づいて紙などの各種の媒体に画像を印刷出力する出力部である。
【００３２】
通信部４は、公衆回線等を介したファクシミリ通信を行うことが可能な処理部である。通信部４は、ネットワークを介したネットワーク通信を行うことも可能である。このネットワーク通信では、たとえば、ＴＣＰ／ＩＰ（Transmission Control Protocol / Internet Protocol）等の各種のプロトコルが利用される。当該ネットワーク通信を利用することによって、ＭＦＰ１０は、所望の相手先との間で各種のデータを授受することが可能である。
【００３３】
格納部５は、ハードディスクドライブ（ＨＤＤ）等の記憶装置で構成される。格納部５は、印刷ジョブに係るデータ等を記憶する。また、格納部５は、起動タイミング情報記憶部５ｂ等を有する。起動タイミング情報記憶部５ｂには、起動タイミング情報ＭＡ（詳細には起動イベントリスト）が記憶される。起動タイミング情報ＭＡは、複数のアプリケーションソフトウエアプログラムＡＰ（以下、単にアプリケーションとも称する）（後述）のそれぞれの起動タイミング（より詳細には、各アプリケーションＡＰがいずれのイベントに応答して起動されるべきか）を示す情報である（図１５等参照）。また、起動タイミング情報ＭＡは、複数のアプリケーションを複数のカテゴリに分類するカテゴリ情報をアプリケーションごとに有している（図１５等参照）。
【００３４】
起動タイミング情報ＭＡ（起動イベントリスト）には、初期状態において、標準アプリケーションＡＰに関する起動タイミングが予め登録されている。その後、各新規アプリケーションＡＥがインストールされるごとに、各新規アプリケーションに関する起動タイミングが起動タイミング情報ＭＡ（起動イベントリスト）に追加登録される。
【００３５】
操作部６は、ＭＦＰ１０に対する入力を受け付ける操作入力部６ａと、各種情報の表示出力を行う表示部６ｂとを備えている。このＭＦＰ１０においては、略板状の操作パネル部６ｃ（図１参照）が設けられている。また、操作パネル部６ｃは、その正面側にタッチパネル２５（図１参照）を有している。タッチパネル２５は、液晶表示パネルに圧電センサ等が埋め込まれて構成され、各種情報を表示するとともに操作者からの操作入力を受け付けることが可能である。たとえば、タッチパネル２５においては、メニュー画像（ボタン画像等を含む）が表示される。操作者は、タッチパネル２５内に仮想的に配置されるボタン（ボタン画像で表現されるボタン）を押下することによって、画像形成装置１０の各種動作内容を設定することなどが可能である。タッチパネル２５は、操作入力部６ａの一部としても機能するとともに、表示部６ｂの一部としても機能する。
【００３６】
また、コントローラ９は、ＭＦＰ１０に内蔵され、ＭＦＰ１０を統括的に制御する制御装置である。コントローラ９は、ＣＰＵおよび各種の半導体メモリ（ＲＡＭおよびＲＯＭ）等を備えるコンピュータシステムとして構成される。コントローラ９は、ＣＰＵにおいて、ＲＯＭ（例えば、ＥＥＰＲＯＭ）内に格納されている所定のソフトウエアプログラム（以下、単にプログラムとも称する）を実行することによって、各種の処理部を実現する。なお、当該プログラム（詳細にはプログラムモジュール群）は、ＵＳＢメモリなどの可搬性の記録媒体、あるいは通信ネットワーク等を介してＭＦＰ１０にインストールされてもよい。
【００３７】
具体的には、図２に示すように、コントローラ９は、プログラムの実行により（特に、ＯＳ（オペレーションシステム）上でファームウエアを実行することによって）、インストール検知部１１と登録制御部１２とイベント検出部１５と情報取得部１６と動作制御部１７とイベント制御部１９とを含む各種の処理部（後述）を実現する。
【００３８】
この画像形成装置１０においては、複数のアプリケーションソフトウエアプログラムＡＰが予めインストールされている。
【００３９】
このようなアプリケーションＡＰとしては、たとえば、まず、ユーザによるボタン操作（タッチパネル２５内に設けられたソフトウエアボタンに対する操作等）に応じて起動されるものが存在する。より具体的には、コピーアプリケーション、スキャンアプリケーション、ファクシミリ通信アプリケーションなどが存在する。
【００４０】
また、このようなアプリケーションＡＰとしては、画像形成装置１０にて発生する各種のイベントの発生に応じて自動的に起動されるものも存在する。たとえば、ジャム位置表示アプリケーション、およびイルミネーション表示アプリケーション等が存在する。ジャム位置表示アプリケーションは、ジャム発生（プリンタエンジン部における用紙ジャム（プリンタジャムイベントとも称する）等の発生）に応答して起動され、ジャム発生に応じてそのジャム位置（紙詰まり等が発生している装置内位置）をタッチパネル２５内に表示するプログラムである。また、イルミネーション表示アプリケーションは、各種のエラーイベント等の発生に応答して起動され、エラー発生に応じてイルミネーション表示（タッチパネル２５内の表示状態および／または操作パネル部６ｃ付近に設けられたＬＥＤ表示部（不図示）の点灯状態等）を変更して、操作者（操作ユーザ）に向けて注意喚起（ないし警告通知）等を行うプログラムである。
【００４１】
また、特定のユーザ（管理ユーザ等）ＵＡは、画像形成装置に予めインストールされている標準アプリケーションに加えて、拡張機能等を有する新規アプリケーションをさらに画像形成装置１０にインストールすることが可能である。このような新規アプリケーションとしては、標準アプリケーションに類似する拡張アプリケーションが例示される。より具体的には、画像形成装置１０に既にインストールされていた旧アプリケーション（例えば、標準ジャム位置表示アプリケーションＡＳ１）と同一のカテゴリ「ジャム位置表示」に属する拡張アプリケーション（例えば、拡張ジャム位置表示アプリケーションＡＥ１）等が例示される。
【００４２】
より詳細には、ユーザＵＡは、ジャム位置表示アプリケーションＡＰ１に関して、元のジャム位置表示アプリケーションＡＳ１に類似する新たなジャム位置表示アプリケーションＡＥ１を、追加的にインストールすることができる。ここで、新たなアプリケーションＡＥ１は、元のアプリケーションＡＳ１では対応できなかった特定イベントへの対応も可能となるように、その機能が拡張されたプログラムである。当該新たなアプリケーション（拡張ジャム位置表示アプリケーション）ＡＥ１は、プリンタエンジンにおける用紙ジャムの発生に応答して用紙ジャム位置を表示するのみならず、画像読取部（スキャン部）２のＡＤＦ（Auto Document Feeder：原稿自動送り装置）における原稿ジャムの発生に応答してＡＤＦジャム位置を表示することも可能である。すなわち、元のアプリケーションＡＳ１はプリンタジャム位置のみを表示することが可能であるのに対して、新たなアプリケーションＡＥ１は、プリンタジャム位置のみならずＡＤＦジャム位置をも表示することが可能である。
【００４３】
しかしながら、仮に、アプリケーションプラットフォームが、予め定められた（固定された）イベントの発生時にのみ、予め定められた標準アプリケーションのみを起動するように構成されている場合には、拡張ジャム位置表示アプリケーション）ＡＥ１をＡＤＦジャム発生時に起動することは困難である。
【００４４】
一方、この実施形態では、各種の処理部１１，１２，１５，１６，１７等がアプリケーションプラットフォーム（後述）に設けられ当該各処理部がそれぞれ適宜の動作を行うことによって、ＡＤＦジャムの発生時にも当該拡張ジャム位置表示アプリケーションを適切に起動することが可能である。
【００４５】
インストール検知部１１は、画像形成装置１０に対する新規アプリケーションのインストールを検知する処理部である。
【００４６】
登録制御部１２は、画像形成装置１０における複数のアプリケーションの各起動タイミングに関する起動タイミング情報ＭＡを起動タイミング情報記憶部５ｂに登録する処理部である。この起動タイミング情報ＭＡは、既存のアプリケーションＡＰ（ＡＳ）に関する起動タイミング情報と新規アプリケーションＡＰ（ＡＥ）に関する起動タイミング情報との双方を含む。登録制御部１２は、各新規アプリケーションのインストール時において、当該各新規アプリケーションに関する個別の起動タイミング情報（個別起動タイミング情報とも称する）ＭＥを後述するようにして取得して、当該個別起動タイミング情報ＭＥを含む起動タイミング情報ＭＡを、起動タイミング情報記憶部５ｂに登録する。
【００４７】
イベント検出部１５は、画像形成装置における各種イベントの発生を検出する処理部である。イベント検出部１５は、ＭＦＰプラットフォーム（後述）にて発生し且つイベント制御部１９により管理される各種のイベントを、イベント制御部１９から受信することによって、各種イベントの発生を検出する。
【００４８】
情報取得部１６は、起動タイミング情報ＭＡを起動タイミング情報記憶部５ｂから抽出して取得する処理部である。
【００４９】
動作制御部１７は、複数のイベントのうちの特定イベントの発生に応答して起動すべきアプリケーション（起動対象アプリケーションとも称する）を起動タイミング情報ＭＡに基づいて決定するとともに、当該起動対象アプリケーションを当該特定イベントの発生に応答して起動する処理部である。
【００５０】
イベント制御部１９は、画像形成装置１０の動作状態に応じて発生する各種のイベントを管理する処理部である。
【００５１】
図３は、画像形成装置１０におけるソフトウエア構成を示す図である。図３に示すように、この画像形成装置１０においては、ＯＳ（オペレーティングシステム）の上で実行されるファームウエアＦＷが実装されており、各種アプリケーションは、当該ファームウエアＦＷの上で動作する。換言すれば、ＭＦＰ１０におけるプログラム群は、三種類の階層に大別される。具体的には、当該プログラム群は、比較的下位の階層から順に、「オペレーティングシステム」（ＯＳ）、「ファームウエア」（ＦＷ）、「アプリケーション」（ＡＰＰ）の３つの階層に大別される。
【００５２】
さらに、この実施形態においては、「ファームウエア」（ＦＷ）が下位階層部分ＬＹ１と上位階層部分ＬＹ２とに分離されて設けられる（図３参照）。すなわち、ファームウエアＦＷは、階層化されて構成されている。
【００５３】
下位階層部分ＬＹ１は、ＯＳと協働して本装置（ＭＦＰ）１０における比較的下位の動作を制御する処理部であり、互いに異なる複数の種類のＭＦＰ（画像形成装置）のそれぞれに応じて個別に生成されて設けられる。下位階層部分ＬＹ１は、互いに異なる機種相互間における装置構成の相違を吸収する役割を有している。当該下位階層部分ＬＹ１は、ＭＦＰプラットフォーム（ＭＦＰ＿ＰＦ）とも称される。
【００５４】
一方、上位階層部分ＬＹ２は、アプリケーション（ＡＰＰ）階層とファームウエアＦＷの下位階層部分ＬＹ１との間で動作する処理部である。上位階層部分ＬＹ２は、互いに異なる種類の複数の画像形成装置（複数の機種）に対して共通に利用可能である。上位階層部分ＬＹ２は、各アプリケーションを管理する処理部であり、各アプリケーションにおけるジョブ要求等を、当該ＭＦＰ１０の装置構成に適合する内容に適宜修正して、下位階層部分ＬＹ１に対して送出する。当該上位階層部分ＬＹ２は、アプリケーションに関する動作を管理することから、アプリケーションプラットフォームとも称される。
【００５５】
上記の各処理部のうち、インストール検知部１１と登録制御部１２とイベント検出部１５と情報取得部１６と動作制御部１７とは上位階層部分ＬＹ２に属し、イベント制御部１９は下位階層部分ＬＹ１に属する。
【００５６】
＜２．動作＞
＜新規アプリケーションのインストール＞
つぎに、画像形成装置１０における動作について図４のフローチャート等を参照しながら説明する。図４は、新規アプリケーションのインストール時における画像形成装置の動作を示すフローチャートである。
【００５７】
まず、図４を参照しながら、ユーザ（管理ユーザ等）ＵＡによって新規アプリケーションが画像形成装置１０にインストールされる際における画像形成装置１０の動作について説明する。
【００５８】
図４に示すように、まずステップＳ１１において、ユーザＵＡによるアプリケーションＡＰのインストール操作が行われる。具体的には、各種の記録媒体（ＵＳＢメモリ等）に記録されている新たなアプリケーションＡＥ（たとえば拡張ジャム位置表示アプリケーションＡＥ１）が画像形成装置１０にインストールされる。なお、これに限定されず、新たなアプリケーションＡＥは、通信ネットワークを介してダウンロードされ、画像形成装置１０にインストールされるようにしてもよい。
【００５９】
ステップＳ１２では、新規アプリケーションＡＥに関するインストール動作が検知され、画像形成装置１０に対して新規アプリケーションＡＥがインストールされた旨が検知される。
【００６０】
次のステップＳ１３においては、新規アプリケーションＡＥの起動タイミングに関する情報（個別起動タイミング情報）ＭＥが取得される。ここでは、新規アプリケーションＡＥの起動タイミングを記述したデータファイルＤＦが、画像形成装置１０の格納部５内の所定フォルダ（たとえばアプリケーションがインストールされているフォルダ（インストールフォルダ）と同一のフォルダ）にインストール時に格納されるものとする。そして、登録制御部１２は、当該所定フォルダ内の所定名称（たとえば、「setup.ini」）のファイルを、新規アプリケーションＡＥ用のデータファイルＤＦとして特定し、当該データファイルＤＦ内に格納されている情報を抽出する。
【００６１】
図５は、このようなデータファイルＤＦの一例を示す図である。図５においては、起動イベント情報とカテゴリ情報とを含む起動タイミング情報（個別起動タイミング情報）ＭＥがタグ形式で記述されている。
【００６２】
具体的には、新規アプリケーションＡＥの起動イベント情報として、２つのイベント（「ENGJAM_EVENT」および「ADFJAM_EVENT」）がそれぞれタグ識別子「startevnet」で挟まれてデータファイルＤＦに記述されている。当該記述は、この新規アプリケーションＡＥが、プリンタジャム（エンジンジャム）イベント「ENGJAM_EVENT」とＡＤＦジャムイベント「ADFJAM_EVENT」との双方にそれぞれ応答して起動されるべきものであることを示している。
【００６３】
また、新規アプリケーションＡＥのカテゴリ情報として、カテゴリコード「0030」がタグ識別子「category」で挟まれてデータファイルＤＦに記述されている。カテゴリ情報は、プログラムの種類に関する分類情報（「ジャム位置表示」、「イルミネーション」等）である。ここでは、カテゴリ情報は、カテゴリコードで示されている。カテゴリコード「0030」は、カテゴリ「ジャム位置表示」を示すものである。
【００６４】
登録制御部１２は、このようにタグ形式で記載された個別起動タイミング情報ＭＥをデータファイルＤＦから抽出する。
【００６５】
なお、ここでは、新規アプリケーションＡＥに関する個別起動タイミング情報ＭＥがタグ形式（テキスト形式）で記載されている態様が例示されているが、これに限定されず、個別起動タイミング情報ＭＥは他の形式（たとえばバイナリ形式等）でデータファイルＤＦに格納されていてもよい。また、ここでは、タグに基づいて（タグを目印にして）個別起動タイミング情報ＭＥを当該データファイルＤＦから抽出しているが、これに限定されず、データファイルＤＦ内の特定位置に特定形式で記述された個別起動タイミング情報ＭＥを、データ内における情報記述位置情報（たとえばファイル先頭から１００バイト目）およびデータ長（データ型）情報（たとえば２５６バイト）等に基づいて抽出するようにしてもよい。さらに、ここでは、所定のファイル全体名称（たとえば、「setup.ini」）を有するファイルがデータファイルＤＦとして特定される態様が例示されているが、これに限定されない。たとえば、所定の拡張子名称（たとえば「ini」）を有するファイルがデータファイルＤＦとして特定されるようにしてもよい。
【００６６】
また、上記のようなデータファイルＤＦは、アプリケーション開発者あるいは管理ユーザ等によって適宜の手法で作成されればよい。たとえば、テキストエディタ（あるいはバイナリエディタ）等によって作成されるようにしてもよい。あるいは、図６および図７に示すような専用ツール（プログラム）を使用して、データファイルＤＦが作成されるようにしてもよい。
【００６７】
図６は、専用ツール（「起動タイミング情報作成ツール」）の操作画面を示す図である。当該操作画面内の左側には、新規アプリケーションの所属カテゴリを指定するリストボックスが表示されている。たとえば、選択肢「ジャム位置表示」がユーザ操作によって選択されると、カテゴリ「ジャム位置表示」が当該新規アプリケーションの所属カテゴリとして指定される（図７参照）。
【００６８】
また、図６（および図７）の操作画面内の中央および右側には、新規アプリケーションに関連づけるべき１または２以上の起動イベントを指定するリストボックスが表示されている。たとえば、「起動イベント１」欄のリストボックスにおいて、選択肢「プリンタジャム」がユーザ操作によって選択されると、イベント「プリンタジャム」が当該新規アプリケーションの１つの起動イベントとして指定される（図７参照）。同様にして、「起動イベント２」欄のリストボックスにおいて、選択肢「ＡＤＦジャム」がユーザ操作によって選択されると、イベント「ＡＤＦジャム」が当該新規アプリケーションの他の１つの起動イベントとして指定される（図７参照）。
【００６９】
このようにして指定された内容が、新規アプリケーションＡＥの個別起動タイミング情報ＭＥとしてデータファイルＤＦに記述される。具体的には、カテゴリ「ジャム位置表示」が新規アプリケーションＡＥのカテゴリ情報としてデータファイルＤＦに記述されるとともに、イベント「プリンタジャム」とイベント「ＡＤＦジャム」とがそれぞれ新規アプリケーションＡＥの起動イベントとしてデータファイルＤＦに記述される。
【００７０】
登録制御部１２は、新規アプリケーションＡＥに関する個別起動タイミング情報ＭＥをデータファイルＤＦから抽出すると、当該個別起動タイミング情報ＭＥを、起動タイミング情報記憶部５ｂに予め格納されている起動タイミング情報ＭＡ（起動イベントリスト）に追加登録する（ステップＳ１４）。これにより、新規アプリケーションＡＥをも含む複数のアプリケーションプログラムＡＰに関する起動タイミング情報ＭＡが登録される。すなわち、画像形成装置における複数のアプリケーションの各起動タイミングに関する起動タイミング情報が登録（更新登録）される。
【００７１】
＜新規アプリケーション起動＞
つぎに、図８を参照しながら、イベント受信に応じてアプリケーションが起動される動作について説明する。図８は、イベント受信に応じてアプリケーションが起動される動作を示すフローチャートである。図８は、新規アプリケーションのインストール後における画像形成装置１０の動作を示している。
【００７２】
ステップＳ５１において、画像形成装置において発生したイベントが検出されると、ステップＳ５２に進む。具体的には、イベント検出部１５は、イベント制御部１９から送信されてきたイベントを受信する。
【００７３】
ステップＳ５２では、起動タイミング情報ＭＡが取得される。具体的には、起動タイミング情報記憶部５ｂに格納されている起動タイミング情報ＭＡ（最新の起動タイミング情報ＭＡ）が、情報取得部１６によって抽出されて取得される。
【００７４】
そして、ステップＳ５３においては、ステップＳ５１で受信したイベント（受信イベントとも称する）に対応する複数の起動候補アプリケーションを、起動タイミング情報ＭＡに基づいて選定する。
【００７５】
次のステップＳ５４においては、複数の起動候補アプリケーションの中から、起動対象アプリケーション（受信イベントの発生に応答して起動すべきアプリケーション）が、起動タイミング情報ＭＡに基づいて決定される。たとえば、起動タイミング情報ＭＡに基づいて単一の起動候補アプリケーションが特定される場合には、当該起動候補アプリケーションがそのまま起動対象アプリケーションとして決定される。また、同一のカテゴリに属する２以上のアプリケーションが複数の起動候補アプリケーションに含まれている場合には、当該２以上のアプリケーションのうち最も新しくインストールされた最新アプリケーションが起動対象アプリケーションとして決定される。また、異なるカテゴリに属する２以上のアプリケーションが複数の起動候補アプリケーションに含まれている場合には、当該２以上のアプリケーションのそれぞれが起動対象アプリケーションとして決定される。
【００７６】
そして、ステップＳ５５において、ステップＳ５４にて決定された起動対象アプリケーションが、受信イベントの発生に応答して起動される。より具体的には、動作制御部１７は、起動対象アプリケーションを起動して、当該受信イベントを起動対象アプリケーションに通知し、当該受信イベントに応じた処理を当該起動対象アプリケーションに実行させる。
【００７７】
なお、ステップＳ５３〜Ｓ５５においては、既に起動されているアプリケーション（起動済みアプリケーション）を、起動候補対象アプリケーションおよび／または起動対象アプリケーションから除外するようにしてもよい。
【００７８】
＜第１の動作例＞
次に、より具体的な動作例について説明する。
【００７９】
ここでは簡単化のため、まず、１つの標準アプリケーションＡＳに対する拡張アプリケーションＡＥがインストールされた後、当該拡張アプリケーションが特定イベント（「ＡＤＦジャム」イベント）に応答して起動される動作例（第１の動作例）について説明する。
【００８０】
図９は、新規アプリケーションＡＥのインストール前において起動タイミング情報記憶部５ｂに格納されている起動タイミング情報ＭＡを示す図である。図９に示すように、インストール前の起動タイミング情報ＭＡにおいては、標準ジャム位置表示アプリケーションＡＳ１の起動イベントが「プリンタジャムイベント」（ＥＶ１）であることが規定されている。また、標準ジャム位置表示アプリケーションＡＳ１がカテゴリ「ジャム位置表示」（ＣＴ１）に分類されることも規定されている。
【００８１】
図１０は、拡張ジャム位置表示アプリケーションＡＥ１がインストールされる際に、当該拡張ジャム位置表示アプリケーションＡＥ１の個別起動タイミング情報ＭＥ（ＭＥ１）が取得（ステップＳ１３参照）される様子を示す図である。図１０に示すように、拡張ジャム位置表示アプリケーションＡＥ１の起動イベントが「プリンタジャムイベント」（ＥＶ１）および「ＡＤＦジャムイベント」（ＥＶ４）であることが個別起動タイミング情報ＭＥ（ＭＥ１）に規定されている。また、拡張ジャム位置表示アプリケーションＡＥ１がカテゴリ「ジャム位置表示」（ＣＴ１）に分類されることも個別起動タイミング情報ＭＥ（ＭＥ１）に規定されている。
【００８２】
図１１は、個別起動タイミング情報ＭＥ（ＭＥ１）が追加登録（ステップＳ１４）された後の起動タイミング情報ＭＡを示す図である。図１１に示されるように、追加登録後の起動タイミング情報ＭＡにおいては、標準ジャム位置表示アプリケーションＡＳ１に関する各種情報に加えて、拡張ジャム位置表示アプリケーションＡＥ１に関する各種情報（図１０に示す個別起動タイミング情報ＭＥ（ＭＥ１））も規定されている。
【００８３】
起動タイミング情報ＭＡにおいては、各アプリケーションに対して、（その発生に応答して）当該各アプリケーションを起動すべきイベントである起動イベントが対応付けられて（関連付けられて）規定される。上述のように、新規アプリケーションＡＥがインストールされる際には、登録制御部１２は、新規アプリケーションＡＥを起動すべき起動イベントＥＶ１，ＥＶ４を当該新規アプリケーションＡＥに関連付けて登録する。
【００８４】
このような登録更新が行われた後の状況において、「ＡＤＦジャム」イベントの発生が検知（ステップＳ５１）されると、図１１のような最新の起動タイミング情報ＭＡが取得された（ステップＳ５２）後にステップＳ５３に進む。そして、当該最新の起動タイミング情報ＭＡに基づいて、起動候補アプリケーションおよび起動対象アプリケーションが決定される（ステップＳ５３，Ｓ５４）。より詳細には、ステップＳ５１で検知されたイベント（「ＡＤＦジャム」イベント）をその「起動イベント」として規定するアプリケーション（ここでは、拡張ジャム位置表示アプリケーションＡＥ１）が、起動候補アプリケーションとして選定される。ここでは、単一の起動候補アプリケーションが選定されるため、当該単一の起動候補アプリケーション（すなわち、拡張ジャム位置表示アプリケーションＡＥ１）がそのまま起動対象アプリケーションとして決定される（図１２参照）。
【００８５】
その後、ステップＳ５５において、ステップＳ５４にて決定された起動対象アプリケーションが、ステップＳ５１で検知されたイベント発生に応答して起動される。より具体的には、動作制御部１７は、当該イベント（ＡＤＦジャムイベント）を起動対象アプリケーション（拡張ジャム位置表示アプリケーションＡＥ１）に通知し、当該イベントに応じた処理（ＡＤＦジャムの発生箇所を画面上に示す処理）を当該起動対象アプリケーションＡＥ１に実行させる。このように、特定イベント（ＡＤＦジャム）の発生に応答して、対応する拡張アプリケーションＡＥ１が適切に起動される。
【００８６】
以上のような動作においては、新規アプリケーションＡＥのインストール時に、当該新規アプリケーションＡＥの起動タイミングに関する情報（個別起動タイミング情報ＭＥ）が登録制御部１２によって取得され、当該個別起動タイミング情報ＭＥを含む起動タイミング情報ＭＡが起動タイミング情報記憶部５ｂに登録される。その後、画像形成装置１０における特定イベントの発生が検出されると、当該特定イベントの発生に応答して起動すべき起動対象アプリケーションが起動タイミング情報ＭＡに基づいて決定され、起動対象アプリケーションが特定イベントの発生に応答して起動される。これによれば、特に、当該特定イベント（たとえばＡＤＦジャム）が新規アプリケーションＡＥ（たとえば拡張ジャム位置表示アプリケーションＡＥ１）の起動イベントであるときであっても、当該特定イベントの発生に応じて当該新規アプリケーションＡＥを適切に起動させることができる。このように、新規アプリケーションを含む複数のアプリケーションの起動タイミングを柔軟に管理することが可能である。
【００８７】
＜第２の動作例＞
次に、２つの標準アプリケーションＡＳ１，ＡＳ２に対する各拡張アプリケーションＡＥ１，ＡＥ２がインストールされた後、当該２つの拡張アプリケーションＡＥ１，ＡＥ２のうちの少なくとも一方が特定イベントに応答して起動される動作例（第２の動作例）について説明する。この第２の動作例は、イルミネーション表示アプリケーション（単にイルミネーションアプリケーションなどとも表現する）ＡＰ２についても拡張アプリケーションＡＥ２がインストールされる点等において、第１の動作例と相違する。
【００８８】
図１３は、新規アプリケーションＡＥ１，ＡＥ２のインストール前において起動タイミング情報記憶部５ｂに格納されている起動タイミング情報ＭＡを示す図である。図１３に示すように、インストール前の起動タイミング情報ＭＡにおいては、（図９と同様に）標準ジャム位置表示アプリケーションＡＳ１に関する「カテゴリ」と「起動イベント」とが登録されていることに加えて、標準イルミネーションアプリケーションＡＳ２に関する「カテゴリ」と「起動イベント」とが登録されている。具体的には、標準イルミネーションアプリケーションＡＳ２の起動イベントが「印刷中用紙無しエラーイベント」（ＥＶ２）および「ＦＡＸ送信通信中エラーイベント」（ＥＶ３）であることが規定されている。また、標準イルミネーションＡＳ２がカテゴリ「イルミネーション」（ＣＴ２）に分類されることも規定されている。
【００８９】
図１４は、拡張アプリケーションＡＥ１，ＡＥ２がインストールされる際に、当該拡張アプリケーションＡＥ１，ＡＥ２の個別起動タイミング情報ＭＥ（ＭＥ１，ＭＥ２）がそれぞれ取得（ステップＳ１３参照）される様子を示す図である。図１４に示すように、拡張ジャム位置表示アプリケーションＡＥ１のインストール時には、当該拡張ジャム位置表示アプリケーションＡＥ１の起動イベントが「プリンタジャムイベント」（ＥＶ１）および「ＡＤＦジャムイベント」（ＥＶ４）であることと、拡張ジャム位置表示アプリケーションＡＥ１のカテゴリが「ジャム位置表示」（ＣＴ１）であることとが取得される。同様に、当該拡張イルミネーションアプリケーションＡＥ２の起動イベントが「サービスコールイベント」（ＥＶ５）、「ＦＡＸ送信通信中エラーイベント」（ＥＶ３）、「プリンタジャムイベント」（ＥＶ１）および「ＡＤＦジャムイベント」（ＥＶ４）であることが拡張イルミネーションアプリケーションＡＥ２のインストール時に取得される。また、拡張イルミネーションアプリケーションＡＥ２のカテゴリが「イルミネーション」（ＣＴ２）であることも併せて取得される。
【００９０】
図１５は、拡張アプリケーションＡＥ１，ＡＥ２に関する両個別起動タイミング情報ＭＥ１，ＭＥ２が追加登録（ステップＳ１４）された後の起動タイミング情報ＭＡを示す図である。図１５に示されるように、追加登録後の起動タイミング情報ＭＡにおいては、標準アプリケーションＡＳ１，ＡＳ２に関する各種情報に加えて、拡張アプリケーションＡＥ１，ＡＥ２に関する各種情報（図１４に示す個別起動タイミング情報ＭＥ１，ＭＥ２）も規定されている。なお、起動タイミング情報ＭＡの各行（データレコード）においては、アプリケーションと起動イベントとの対応関係がアプリケーション単位且つ起動イベント単位で規定されている。
【００９１】
この状況において、図１７に示すように「印刷中用紙無しエラー」イベントＥＶ２の発生が検知（ステップＳ５１）されると、図１５のような最新の起動タイミング情報ＭＡが取得された（ステップＳ５２）後、ステップＳ５３に進む。そして、当該最新の起動タイミング情報ＭＡに基づいて、起動候補アプリケーションおよび起動対象アプリケーションが決定される（ステップＳ５３，Ｓ５４）。より詳細には、ステップＳ５１で検知されたイベント（「印刷中用紙無しエラー」イベントＥＶ２）をその「起動イベント」として規定するアプリケーション（ここでは、標準イルミネーションアプリケーションＡＳ２）が、起動候補アプリケーションとして選定される。ここでは、単一の起動候補アプリケーションが選定されるため、当該単一の起動候補アプリケーション（すなわち、標準イルミネーションアプリケーションＡＳ２）がそのまま起動対象アプリケーションとして決定される（図１７参照）。
【００９２】
また、同様の状況（図１５参照）において、図１８に示すように「サービスコール」イベント（サービスセンターへの連絡を要するようなエラーイベント）ＥＶ５の発生が検知（ステップＳ５１）されると、図１５のような最新の起動タイミング情報ＭＡが取得された（ステップＳ５２）後、ステップＳ５３に進む。そして、ステップＳ５１で検知されたイベント（「サービスコール」イベントＥＶ５）をその「起動イベント」として規定するアプリケーション（ここでは、拡張イルミネーションアプリケーションＡＥ２）が、起動候補アプリケーションとして選定される（ステップＳ５３）。ここでは、単一の起動候補アプリケーションが選定されるため、当該単一の起動候補アプリケーション（すなわち、拡張イルミネーションアプリケーションＡＥ２）がそのまま起動対象アプリケーションとして決定される（ステップＳ５４）。
【００９３】
同様の状況（図１５参照）において、今度は図１９に示すように「ＦＡＸ送信通信中エラー」イベントＥＶ３の発生が検知（ステップＳ５１）されると、図１５のような最新の起動タイミング情報ＭＡが取得された（ステップＳ５２）後、ステップＳ５３に進む。そして、ステップＳ５１で検知されたイベント（「ＦＡＸ送信通信中エラー」イベントＥＶ３）をその「起動イベント」として規定する２つのアプリケーション（標準イルミネーションアプリケーションＡＳ２および拡張イルミネーションアプリケーションＡＥ２）が、起動候補アプリケーションとして選定される（ステップＳ５３）。ここでは、２つの起動候補アプリケーションがいずれも同種カテゴリＣＴ２（「イルミネーション」）に属する。換言すれば、同一のカテゴリに属する２以上のアプリケーションが起動候補アプリケーションに含まれている。この場合には、当該２以上のアプリケーションのうち最も新しくインストールされた最新アプリケーション（すなわち、拡張イルミネーションアプリケーションＡＥ２）のみが起動対象アプリケーションとして決定される（ステップＳ５４）。
【００９４】
同様の状況（図１５参照）において、今度は図２０に示すように「ＡＤＦジャム」イベントの発生が検知（ステップＳ５１）されると、図１５のような最新の起動タイミング情報ＭＡが取得された（ステップＳ５２）後、ステップＳ５３に進む。そして、ステップＳ５１で検知されたイベント（「ＡＤＦジャム」イベントＥＶ４）をその「起動イベント」として規定する２つのアプリケーション（拡張ジャム位置表示アプリケーションＡＥ１および拡張イルミネーションアプリケーションＡＥ２）が、起動候補アプリケーションとして選定される（ステップＳ５３）。ここでは、２つの起動候補アプリケーションが互いに異なるカテゴリＣＴ１，ＣＴ２（「ジャム位置表示」および「イルミネーション」）に属する。換言すれば、異なるカテゴリに属する２以上のアプリケーションが起動候補アプリケーションに含まれている。この場合には、当該２以上のアプリケーションの双方（すなわち、拡張ジャム位置表示アプリケーションＡＥ１および拡張イルミネーションアプリケーションＡＥ２）が起動対象アプリケーションとして決定される（ステップＳ５４）。
【００９５】
同様の状況（図１５参照）において、今度は図２１に示すように「プリンタジャム」イベントＥＶ１の発生が検知（ステップＳ５１）されると、図１５のような最新の起動タイミング情報ＭＡが取得された（ステップＳ５２）後、ステップＳ５３に進む。そして、ステップＳ５１で検知されたイベント（「プリンタジャム」イベントＥＶ１）をその「起動イベント」として規定する３つのアプリケーション（標準ジャム位置表示アプリケーションＡＳ１、拡張ジャム位置表示アプリケーションＡＥ１および拡張イルミネーションアプリケーションＡＥ２）が、起動候補アプリケーションとして選定される（ステップＳ５３）。ここでは、３つの起動候補アプリケーションのうち同種カテゴリに属する２以上のアプリケーションＡＳ１，ＡＥ１のうちの最新アプリケーション（すなわち、拡張ジャム位置表示アプリケーションＡＥ１）が起動対象アプリケーションとして決定される（ステップＳ５４）。また、３つの起動候補アプリケーションのうち、拡張ジャム位置表示アプリケーションＡＥ１とは互いに異なるカテゴリに属する拡張イルミネーションアプリケーションＡＥ２も起動対象アプリケーションとして決定される（ステップＳ５４）。
【００９６】
なお、起動タイミング情報ＭＡにおいては、図１６に示すように、複数のアプリケーションと複数の起動イベントとの関係が、同一の起動イベントごとに分類されて格納されることが好ましい。より詳細には、図１５の各行のデータ（データレコード）が、図１６に示すように並べ替えられ、起動イベントごとに分類されて配置されることが好ましい。これによれば、特定イベントに応じて起動すべきアプリケーションを比較的高速に検索することが可能である。たとえば、プリンタジャムイベントＥＶ１と３つのアプリケーションとの対応関係が纏めて格納されているので、プリンタジャムイベントＥＶ１に対応する３つのアプリケーションを非常に高速に検索することが可能である。
【００９７】
＜３．その他＞
以上、この発明の実施の形態について説明したが、この発明は上記説明した内容のものに限定されるものではない。
【００９８】
たとえば、上記実施形態においては、新規アプリケーションＡＥの起動タイミングを記述したデータファイルＤＦが画像形成装置１０内の所定フォルダ（たとえばインストールフォルダ）から抽出される態様が例示されているが、これに限定されない。
【００９９】
具体的には、登録制御部１２は、新規アプリケーションが記録されたインストール用記録媒体（インストールメディア）（具体的には、ＣＤ−ＲＯＭあるいはＵＳＢメモリ等）内を検索し、当該インストール用記録媒体内に格納されているデータファイルＤＦを抽出するようにしてもよい。あるいは、登録制御部１２は、画像形成装置１０に対してネットワーク接続されている外部装置（より詳細には外部装置（外部サーバ等）内の所定フォルダ）内を検索し、当該外部装置に格納されているデータファイルＤＦを抽出するようにしてもよい。そして、登録制御部１２は、抽出された当該データファイルＤＦ内に格納されている各種情報（個別起動タイミング情報ＭＥ等）を取得すればよい。
【０１００】
また、上記実施形態においては、新規アプリケーションＡＥの外部に（新規アプリケーションＡＥとは別個に）個別起動タイミング情報ＭＥが格納されている態様が例示されているが、これに限定されない。例えば、新規アプリケーションＡＥの内部に個別起動タイミング情報ＭＥが埋め込まれていても良い。この場合には、登録制御部１２は、個別起動タイミング情報ＭＥを新規アプリケーションＡＥの内部から抽出して取得すればよい。
【０１０１】
また、上記実施形態においては、既存の標準アプリケーションに対して拡張アプリケーションが追加的にインストールされる態様が主に例示されているが、これに限定されない。たとえば、拡張アプリケーション（カスタマイズアプリケーション）が既存の標準アプリケーション（デフォルトアプリケーション）に置き換え（入れ替え）られてインストールされるようにしてもよい。
【０１０２】
また、上記実施形態においては、拡張アプリケーションの全ての起動イベントがデータファイルＤＦに記述されている態様が例示されているが、これに限定されない。
【０１０３】
たとえば、拡張アプリケーションが標準アプリケーションの起動イベント情報を継承することを前提として、拡張アプリケーションの全ての起動イベントのうち、対応する標準アプリケーションの起動イベントでもあるイベントは、データファイルＤＦに記述されないようにしてもよい。換言すれば、データファイルＤＦには、拡張アプリケーションの複数の起動イベントのうち、旧アプリケーションの起動イベントを除く追加起動イベントのみが記述されるようにしてもよい。この場合、登録制御部１２は、新規アプリケーションが特定の標準アプリケーション（旧アプリケーション）に対する拡張アプリケーションである旨の情報を、当該新規アプリケーション内から取得するとともに、当該特定の標準アプリケーションの起動イベントとして起動タイミング情報ＭＡに登録されていたイベントを、拡張アプリケーションの起動イベントとしても登録するようにすればよい。端的に言えば、標準アプリケーションの起動イベントを拡張アプリケーションの起動イベントとして自動的に継承するようにしてもよい。これによっても、上記と同様の起動動作が実現される。
【０１０４】
また、上記実施形態においては、新規アプリケーション（拡張アプリケーション）の起動イベントが旧来のアプリケーション（標準アプリケーション）の起動イベントと一部重複している態様が例示されているが、これに限定されない。
【０１０５】
たとえば、新規アプリケーション（拡張アプリケーション）の起動イベントが標準アプリケーションの起動イベントと重複しないように設定されてもよい。より詳細には、標準アプリケーションの起動イベントとして登録されていたイベントを、拡張アプリケーションの起動イベントとしても重複登録することなく、データファイルＤＦに記述されていた起動イベント（拡張アプリケーションに固有の起動イベント）のみを拡張アプリケーションＡＥの起動イベントとして登録するようにしてもよい。さらに、標準アプリケーションにのみ対応するイベントが発生したときには標準アプリケーションが起動され、拡張アプリケーションにのみ対応するイベントが発生したときには、拡張アプリケーションが起動されるようにしてもよい。
【０１０６】
なお、新規アプリケーションの起動イベントと旧来のアプリケーションの起動イベントとの間には包含関係が存在しなくてもよい。換言すれば、新規アプリケーションの起動イベントは、旧来のアプリケーションの起動イベントとは無関係に独自に設定されてもよい。逆に、上述のように拡張アプリケーションが標準アプリケーションの起動イベント情報を継承し、拡張アプリケーションの起動イベントが標準アプリケーションの全ての起動イベントを包含してもよい。
【０１０７】
また、上記実施形態においては、新規アプリケーションＡＥに関する個別起動タイミング情報ＭＥがデータファイルＤＦとして予め生成されている態様が例示されているが、これに限定されない。
【０１０８】
たとえば、インストール時において、登録制御部１２および動作制御部１７等が、試験的に（仮想的に）発生させたイベントに応答して新規アプリケーションＡＥを試験的に起動し、当該イベントに応答して新規アプリケーションＡＥが実際に正常に動作した場合に、当該イベントが新規アプリケーションＡＥに関する起動イベントである旨を判定するようにしてもよい。
【０１０９】
図２２は、このような改変例に係る動作を示すフローチャートである。図２２の動作は、たとえば、新規アプリケーションＡＥのインストール時、より詳細には図４のステップＳ１３において、実行される。以下では、図２２を参照しながら、このような改変例について説明する。
【０１１０】
図２２のステップＳ２１においては、まず、登録制御部１２は、画像形成装置１０において発生し得る複数のイベントを記述したイベント一覧データＥＤを取得する。複数のイベントとしては、「プリンタジャムイベント」、「ＡＤＦジャムイベント」、「印刷中用紙無しエラーイベント」、「ＦＡＸ送信通信中エラーイベント」、「サービスコールイベント」などが存在し得る。イベント一覧データＥＤは、予め画像形成装置１０の格納部５内に予め格納されているものとする。
【０１１１】
ステップＳ２２においては、イベント一覧データＥＤに記述された複数のイベントの中から動作確認対象の一のイベント（確認対象イベントとも称する）を選択し、選択されたイベント（確認対象イベント）を新規アプリケーションＡＥに試験的に渡して新規アプリケーションＡＥを試験的に起動させる。
【０１１２】
新規アプリケーションＡＥは、受け渡されたイベント（確認対象イベント）が、対応可能なイベントであるか否かを判定し、その判定結果を登録制御部１２に送出する。具体的には、新規アプリケーションＡＥが確認対象イベントに対応している場合には、新規アプリケーションＡＥは、確認対象イベントに応じた動作を実行するとともに、正常動作する旨を示すデータＤＧを登録制御部１２に送出する。一方、新規アプリケーションＡＥが確認対象イベントに対応していない場合には、新規アプリケーションＡＥは、確認対象イベントに対応していない（正常動作しない旨）旨を示すデータＤＮを登録制御部１２に送出する。
【０１１３】
ステップＳ２３においては、登録制御部１２は、新規アプリケーションＡＥから受信したデータに応じて分岐処理を行う。
【０１１４】
データＤＧが新規アプリケーションＡＥから受信される場合には、登録制御部１２は、確認対象イベントが新規アプリケーションＡＥに対する起動イベントであると判定する。そして、この確認対象イベントを、新規アプリケーションＡＥに対する起動イベントとして、起動タイミング情報（起動イベントリスト）ＭＡに追加登録する（ステップＳ２４）。たとえば、確認対象イベント「ＡＤＦジャム」に対して新規アプリケーションＡＥが正常に起動する場合には、確認対象イベント「ＡＤＦジャム」が当該新規アプリケーションＡＥに対する起動イベントとして登録される。その後、次の確認対象イベントに関するテストに備えるため、一旦新規アプリケーションＡＥを終了し（ステップＳ２５）、ステップＳ２６に進む。
【０１１５】
一方、データＤＮが新規アプリケーションＡＥから受信される場合には、登録制御部１２は、確認対象イベントが新規アプリケーションＡＥに対する起動イベントではないと判定する。この場合には、登録制御部１２は、確認対象イベントに関する起動タイミング情報ＭＡへの登録動作を行うことなく、ステップＳ２３からステップＳ２６に進む。
【０１１６】
なお、登録制御部１２は、新規アプリケーションＡＥの起動開始時点から一定時間以内に新規アプリケーションＡＥからのデータを受信できない場合には、新規アプリケーションＡＥが反応できないエラーが生じたものとして、新規アプリケーションＡＥが正常に起動できない旨を判定するようにしてもよい。この場合にも、確認対象イベントが新規アプリケーションＡＥに対する起動イベントではないと判定され、ステップＳ２３からステップＳ２６へ進む。
【０１１７】
ステップＳ２６では、ステップＳ２１で検出された複数のイベント（イベント一覧データＥＤに記述された複数のイベント）のうち、確認対象イベントとして未だ採用されていないものが存在するか否かが判定される。
【０１１８】
確認対象イベントとして未だ採用されていないイベントが存在する場合には、その未採用のイベントを新たな確認対象イベントとして決定し、ステップＳ２２に戻る。そして、ステップＳ２２からステップＳ２５までの動作（新たな確認対象イベントに関する確認動作）が実行される。
【０１１９】
一方、確認対象イベントとして全てのイベントが採用済みである場合には、図２２の処理は終了する。
【０１２０】
以上のように、登録制御部１２等は、複数の起動イベントのそれぞれを（確認対象イベントとして）新規アプリケーションＡＥに試験的に渡して新規アプリケーションＡＥを試験的に起動させる。そして、複数の起動イベントのうち、新規アプリケーションＡＥを正常に起動させることができたイベントのみが、当該新規アプリケーションＡＥに対する起動イベントとして当該新規アプリケーションＡＥに関連付けて登録される。このような動作によって、新規アプリケーションＡＥに関する個別起動タイミング情報ＭＥを自動的に起動タイミング情報（起動イベントリスト）ＭＡに追加するようにしてもよい。これによれば、新規アプリケーションＡＥごとの個別起動タイミング情報ＭＥを予め作成することを要さずに、新規アプリケーションＡＥごとの個別起動タイミング情報ＭＥを自動的に生成し起動タイミング情報ＭＡを自動的に更新することが可能である。
【０１２１】
また、上記実施形態においては、新規アプリケーションＡＥに関する「カテゴリ」と「起動イベント」との両者が個別起動タイミング情報ＭＥに格納されている場合を例示しているが、これに限定されず、当該両者のうちの一方のみが個別起動タイミング情報ＭＥに格納されていてもよい。たとえば、当該両者のうち「起動イベント」のみが個別起動タイミング情報ＭＥに格納されていてもよく、あるいは、当該両者のうち「カテゴリ」のみが個別起動タイミング情報ＭＥに格納されていてもよい。後者の場合には、次述する手法等を用いて、個別起動タイミング情報ＭＥに含まれるカテゴリ情報に基づき、新規アプリケーションＡＥに関する起動イベント情報が補充されればよい。
【０１２２】
図２３は、このような改変例に係る動作を示すフローチャートである。また、図２４は、「カテゴリ」と「起動イベント」との一般的関係を予め規定するデータテーブルＴＢを示す図である。データテーブルＴＢは、予め画像形成装置１０の格納部５内に予め格納されているものとする。
【０１２３】
図２３の動作は、たとえば、新規アプリケーションＡＥのインストール時、より詳細には図４のステップＳ１３において、実行される。以下では、図２３を主に参照しながら、当該改変例について説明する。
【０１２４】
図２３のステップＳ３１においては、まず、登録制御部１２は、新規アプリケーションＡＥに関する個別起動タイミング情報ＭＥを正常に取得できたか否か、具体的には、新規アプリケーションＡＥに関する「カテゴリ」と「起動イベント」との両者が取得できたか否かが判定される。
【０１２５】
正常に取得できた場合には、本処理は終了する。
【０１２６】
一方、正常に取得できなかった場合には、ステップＳ３２に進む。
【０１２７】
ステップＳ３２では、新規アプリケーションＡＥに関する「カテゴリ」が取得できたか否かが判定される。換言すれば、新規アプリケーションＡＥに関する所属カテゴリ情報（新規アプリケーションＡＥが複数のカテゴリのいずれに所属するかを示す情報）が取得できたか否かが判定される。
【０１２８】
新規アプリケーションＡＥに関する「カテゴリ」が取得できなかった場合には、本処理は終了する。一方、新規アプリケーションＡＥに関する「カテゴリ」が取得できた場合には、ステップＳ３３に進む。
【０１２９】
ステップＳ３３においては、登録制御部１２は、データテーブルＴＢに基づいて、新規アプリケーションＡＥの所属カテゴリに対する対応イベントを求め、当該対応イベントを新規アプリケーションＡＥに対する起動イベントとして決定する。
【０１３０】
データテーブルＴＢは、複数のカテゴリのそれぞれに対応するイベント（対応イベント）を予め規定したものである。図２４のデータテーブルＴＢにおいては、カテゴリ「ジャム位置表示」には２つのイベント（具体的には、「プリンタジャムイベント」および「ＡＤＦジャムイベント」）が関連付けて規定されている。換言すれば、カテゴリ「ジャム位置表示」に分類される新規アプリケーションＡＥに関しては、当該２つのイベントが起動イベントとして決定されるべき旨が予め規定されている。同様に、カテゴリ「イルミネーション」に対して、５つのイベント（具体的には、「印刷中用紙無しエラーイベント」、「画像読み取りエラーイベント」、「ＡＤＦ原稿無しイベント」、「ＦＡＸ送信通信中エラーイベント」、「サービスコールイベント」）が関連付けて規定されている。すなわち、カテゴリ「イルミネーション」に分類される新規アプリケーションＡＥに関しては、当該５つのイベントが起動イベントとして決定されるべき旨が予め規定されている。
【０１３１】
たとえば、新規アプリケーションＡＥの所属カテゴリが「ジャム位置表示」である旨が取得された場合には、カテゴリ「ジャム位置表示」に予め関連付けられている２つのイベント（具体的には、「プリンタジャムイベント」および「ＡＤＦジャムイベント」）が、新規アプリケーションＡＥの対応イベントとして求められる。そして、当該２つの対応イベントが、新規アプリケーションＡＥに対する「起動イベント」として決定される。また、新規アプリケーションＡＥの所属カテゴリが「イルミネーション」である旨が取得された場合には、カテゴリ「イルミネーション」に予め関連付けられている５つのイベント（具体的には、「印刷中用紙無しエラーイベント」、「画像読み取りエラーイベント」、「ＡＤＦ原稿無しイベント」、「ＦＡＸ送信通信中エラーイベント」、「サービスコールイベント」）が、新規アプリケーションＡＥの対応イベントとして求められる。そして、当該５つの対応イベントが、新規アプリケーションＡＥに対する「起動イベント」として決定される。
【０１３２】
なお、このような手法は、たとえばカテゴリー情報が新規アプリケーションＡＥ自体に埋め込まれている場合にも有用である。この場合、登録制御部１２は、新規アプリケーションＡＥ自体に埋め込まれた所属カテゴリ情報を当該新規アプリケーションＡＥから取得し、取得された所属カテゴリ情報と上述のようなデータテーブルＴＢとに基づいて、新規アプリケーションＡＥに対する起動イベントを決定すればよい。
【符号の説明】
【０１３３】
１０  画像形成装置（ＭＦＰ）
５ｂ  起動タイミング情報記憶部
ＡＥ  拡張アプリケーション
ＡＳ  標準アプリケーション
ＤＦ  データファイル
ＥＤ  イベント一覧データ
ＭＡ  起動タイミング情報
ＭＥ  個別起動タイミング情報
【図１】
2014203430.tif 000003
【図２】
2014203430.tif 000004
【図３】
2014203430.tif 000005
【図４】
2014203430.tif 000006
【図５】
2014203430.tif 000007
【図７】
2014203430.tif 000008
【図８】
2014203430.tif 000009
【図９】
2014203430.tif 000010
【図１０】
2014203430.tif 000011
【図１１】
2014203430.tif 000012
【図１２】
2014203430.tif 000013
【図１３】
2014203430.tif 000014
【図１４】
2014203430.tif 000015
【図１５】
2014203430.tif 000016
【図１６】
2014203430.tif 000017
【図１７】
2014203430.tif 000018
【図１８】
2014203430.tif 000019
【図１９】
2014203430.tif 000020
【図２０】
2014203430.tif 000021
【図２１】
2014203430.tif 000022
【図２２】
2014203430.tif 000023
【図２３】
2014203430.tif 000024
【図２４】
2014203430.tif 000025
【図６】
2014203430.tif 000026