(57)【要約】【課題】アプリ等のプログラムを対象装置にインストールする際に、対象装置における設定項目の設定状態を特定の設定状態に変更する使用者の操作負担を削減する。【解決手段】制御部３１は、アプリをインストールの対象装置である画像形成装置１０にインストールする際に、画像形成装置１０における複数の設定項目のうち、このアプリを動作させるために特定の設定状態となっていることが要求される設定項目を判定する。制御部３１は、特定の設定状態となっていることが必要であると判定された設定項目の現在の設定状態を画像形成装置１０から取得する。制御部３１は、取得された画像形成装置１０における現在の設定状態が、このアプリを動作させるために必要な特定の設定状態とは異なる場合、画像形成装置１０に対して、その設定項目の設定状態を、アプリを動作させるために必要な特定の設定状態に変更するよう通信部３５を介して指示する。【選択図】図３
2018037867.tif 000002
【特許請求の範囲】
【請求項１】
プログラムを対象装置にインストールする際に、前記対象装置における複数の設定項目のうち、当該プログラムを動作させるために特定の設定状態となっていることが要求される設定項目を判定する判定手段と、
前記判定手段により判定された設定項目の現在の設定状態を前記対象装置から取得する取得手段と、
前記取得手段により取得された設定状態が、当該プログラムを動作させるために必要な特定の設定状態とは異なる場合、前記対象装置に対して、当該設定項目の設定状態を、当該プログラムを動作させるために必要な特定の設定状態に変更するよう指示する指示手段と、
を備えた情報処理装置。
【請求項２】
プログラムを対象装置にインストールする際に、前記対象装置における複数の設定項目のうち、当該プログラムをインストールするために特定の設定状態となっていることが要求される設定項目を判定する判定手段と、
前記判定手段により判定された設定項目の現在の設定状態を対象装置から取得する取得手段と、
前記取得手段により取得された設定状態が、当該プログラムを動作させるために必要な設定状態とは異なる場合、前記対象装置に対して、当該設定項目の設定状態を、当該プログラムを動作させるために必要な特定の設定状態に変更するよう指示する第１の指示信手段と、
当該プログラムのインストールが完了した後に、設定状態の変更を指示した設定項目の設定状態を変更前の設定状態に戻すよう指示する第２の指示手段と、
を備えた情報処理装置。
【請求項３】
前記判定手段は、インストールしようとするプログラムのファイル構成、ファイル内容及びファイル階層構造のうちの少なくとも１つの情報を参照して、特定の設定状態となっていることが要求される設定項目を判定する請求項１又は２記載の情報処理装置。
【請求項４】
前記判定手段は、インストールしようとするプログラムに含まれる情報を参照して、特定の設定状態となっていることが要求される設定項目を判定する請求項１又は２記載の情報処理装置。
【請求項５】
特定の設定状態となっていることが要求される設定項目の設定状態が指示した設定状態に変更された場合に、当該プログラムの前記対象装置へのインストールを実行する実行手段をさらに備えた請求項１から４のいずれか記載の情報処理装置。
【請求項６】
特定の設定状態となっていることが要求される設定項目が、前記プログラムを動作させるために必要な機能の有効／無効を管理する設定項目であり、特定の設定状態が、当該機能が有効となっていることである請求項１記載の情報処理装置。
【請求項７】
特定の設定状態となっていることが要求される設定項目が、前記プログラムをインストールするために必要な機能の有効／無効を管理する設定項目であり、特定の設定状態が、当該機能が有効となっていることである請求項２記載の情報処理装置。
【請求項８】
プログラムを対象装置にインストールする際に、前記対象装置における複数の設定項目のうち、当該プログラムを動作させるために特定の設定状態となっていることが要求される設定項目を判定する判定ステップと、
前記判定ステップにおいて判定された設定項目の現在の設定状態を前記対象装置から取得する取得ステップと、
前記取得ステップにおいて取得された設定状態が、当該プログラムを動作させるために必要な特定の設定状態とは異なる場合、前記対象装置に対して、当該設定項目の設定状態を、当該プログラムを動作させるために必要な特定の設定状態に変更するよう指示する指示ステップとをコンピュータに実行させるためのプログラム。
【請求項９】
プログラムを対象装置にインストールする際に、前記対象装置における複数の設定項目のうち、当該プログラムをインストールするために特定の設定状態となっていることが要求される設定項目を判定する判定ステップと、
前記判定ステップにおいて判定された設定項目の現在の設定状態を対象装置から取得する取得ステップと、
前記取得ステップにおいて取得された設定状態が、当該プログラムを動作させるために必要な設定状態とは異なる場合、前記対象装置に対して、当該設定項目の設定状態を、当該プログラムを動作させるために必要な特定の設定状態に変更するよう指示する第１の指示信ステップと、
当該プログラムのインストールが完了した後に、設定状態の変更を指示した設定項目の設定状態を変更前の設定状態に戻すよう指示する第２の指示ステップとをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
特許文献１には、所定サービスを利用するため、処理装置内で不足しているコンポーネントをサーバからダウンロード／インストールするようにしたシステムが開示されている。
【０００３】
特許文献２には、ユーザが複合機利用時にユーザ毎に必要なアプリを複合機上に表示可能とするため、複合機どうしで同期をとり、ユーザのアプリに関連する設定情報を共有するようにした情報処理システムが開示されている。
【０００４】
特許文献３には、同一セットアップを同一構成の他のデバイスにおいて実施済みの場合、他のデバイスのセットアップ構成情報と自装置の構成情報とを比較することにより、セットアップエラーを防止するようにした情報処理装置が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第４９３１３４３号公報
【特許文献２】特許第５５０６９８１号公報
【特許文献３】特開２００９−２７７１３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
一般的に、ある装置に後から機能を追加しようとする際に、アプリケーションプログラム（以下単にアプリと略す。）等のプログラムをインストールすることが行われる。しかし、印刷機能、スキャン機能、複写機能、ファクシミリ機能等の複数の機能を有するいわゆる複合機と呼ばれる装置では、単にアプリをインストールしただけではそのアプリが動作できない場合がある。
【０００７】
具体的には、複合機における特定の機能を有効にする等の処理を実行しなければ、インスとしたアプリが正常に動作しない場合がある。また、アプリインストールする際にも暗号化通信機能が有効になっていなければインストールを実行できない場合がある。
【０００８】
このような場合には、複合機等の装置にアプリをインストールしようとするユーザは、複合機の設定内容を操作して、特定の設定項目の設定情報をアプリが動作可能ないように変更する必要がある。
【０００９】
しかし、インストールしようとするアプリ毎に変更しなければならない設定項目が異なるため、複合機の機能に詳しいユーザでないと新しいアプリをインストールして正常に動作させることが難しいという課題がある。また、複合機の機能に詳しいユーザであっても、アプリをインストールする毎に設定内容を確認したり、変更する等の手間が煩わしいとう課題がある。
【００１０】
本発明の目的は、プログラムを対象装置にインストールする際に、対象装置における設定項目の設定状態を特定の設定状態に変更する使用者の操作負担を削減することが可能な情報処理装置およびプログラムを提供することである。
【課題を解決するための手段】
【００１１】
［情報処理装置］
請求項１に係る本発明は、プログラムを対象装置にインストールする際に、前記対象装置における複数の設定項目のうち、当該プログラムを動作させるために特定の設定状態となっていることが要求される設定項目を判定する判定手段と、
前記判定手段により判定された設定項目の現在の設定状態を前記対象装置から取得する取得手段と、
前記取得手段により取得された設定状態が、当該プログラムを動作させるために必要な特定の設定状態とは異なる場合、前記対象装置に対して、当該設定項目の設定状態を、当該プログラムを動作させるために必要な特定の設定状態に変更するよう指示する指示手段とを備えた情報処理装置である。
【００１２】
請求項２に係る本発明は、プログラムを対象装置にインストールする際に、前記対象装置における複数の設定項目のうち、当該プログラムをインストールするために特定の設定状態となっていることが要求される設定項目を判定する判定手段と、
前記判定手段により判定された設定項目の現在の設定状態を対象装置から取得する取得手段と、
前記取得手段により取得された設定状態が、当該プログラムを動作させるために必要な設定状態とは異なる場合、前記対象装置に対して、当該設定項目の設定状態を、当該プログラムを動作させるために必要な特定の設定状態に変更するよう指示する第１の指示信手段と、
当該プログラムのインストールが完了した後に、設定状態の変更を指示した設定項目の設定状態を変更前の設定状態に戻すよう指示する第２の指示手段とを備えた情報処理装置である。
【００１３】
請求項３に係る本発明は、前記判定手段が、インストールしようとするプログラムのファイル構成、ファイル内容及びファイル階層構造のうちの少なくとも１つの情報を参照して、特定の設定状態となっていることが要求される設定項目を判定する請求項１又は２記載の情報処理装置である。
【００１４】
請求項４に係る本発明は、前記判定手段が、インストールしようとするプログラムに含まれる情報を参照して、特定の設定状態となっていることが要求される設定項目を判定する請求項１又は２記載の情報処理装置である。
【００１５】
請求項５に係る本発明は、特定の設定状態となっていることが要求される設定項目の設定状態が指示した設定状態に変更された場合に、当該プログラムの前記対象装置へのインストールを実行する実行手段をさらに備えた請求項１から４のいずれか記載の情報処理装置である。
【００１６】
請求項６に係る本発明は、特定の設定状態となっていることが要求される設定項目が、前記プログラムを動作させるために必要な機能の有効／無効を管理する設定項目であり、特定の設定状態が、当該機能が有効となっていることである請求項１記載の情報処理装置である。
【００１７】
請求項７に係る本発明は、特定の設定状態となっていることが要求される設定項目が、前記プログラムをインストールするために必要な機能の有効／無効を管理する設定項目であり、特定の設定状態が、当該機能が有効となっていることである請求項２記載の情報処理装置である。
【００１８】
[プログラム]
請求項８に係る本発明は、プログラムを対象装置にインストールする際に、前記対象装置における複数の設定項目のうち、当該プログラムを動作させるために特定の設定状態となっていることが要求される設定項目を判定する判定ステップと、
前記判定ステップにおいて判定された設定項目の現在の設定状態を前記対象装置から取得する取得ステップと、
前記取得ステップにおいて取得された設定状態が、当該プログラムを動作させるために必要な特定の設定状態とは異なる場合、前記対象装置に対して、当該設定項目の設定状態を、当該プログラムを動作させるために必要な特定の設定状態に変更するよう指示する指示ステップとをコンピュータに実行させるためのプログラムである。
【００１９】
請求項９に係る本発明は、プログラムを対象装置にインストールする際に、前記対象装置における複数の設定項目のうち、当該プログラムをインストールするために特定の設定状態となっていることが要求される設定項目を判定する判定ステップと、
前記判定ステップにおいて判定された設定項目の現在の設定状態を対象装置から取得する取得ステップと、
前記取得ステップにおいて取得された設定状態が、当該プログラムを動作させるために必要な設定状態とは異なる場合、前記対象装置に対して、当該設定項目の設定状態を、当該プログラムを動作させるために必要な特定の設定状態に変更するよう指示する第１の指示信ステップと、
当該プログラムのインストールが完了した後に、設定状態の変更を指示した設定項目の設定状態を変更前の設定状態に戻すよう指示する第２の指示ステップとをコンピュータに実行させるためのプログラムである。
【発明の効果】
【００２０】
請求項１に係る本発明によれば、プログラムを対象装置にインストールする際に、対象装置における設定項目の設定状態を特定の設定状態に変更する使用者の操作負担を削減することが可能な情報処理装置を提供することができる。
【００２１】
請求項２に係る本発明によれば、プログラムを対象装置にインストールする際に、対象装置における設定項目の設定状態を特定の設定状態に変更する使用者の操作負担を削減することが可能な情報処理装置を提供することができる。
【００２２】
請求項３に係る本発明によれば、インストールしようとするプログラムのファイル構成、ファイル内容及びファイル階層構造から、特定の設定状態となっていることが要求される設定項目を自動的に判定することが可能な情報処理装置を提供することができる。
【００２３】
請求項４に係る本発明によれば、インストールしようとするプログラムに含まれる情報から、特定の設定状態となっていることが要求される設定項目を自動的に判定することが可能な情報処理装置を提供することができる。
【００２４】
請求項５に係る本発明によれば、特定の設定状態となっていることが要求される設定項目の設定状態が指示した設定状態に変更された場合にのみ、当該プログラムの対象装置へのインストールを実行することが可能な情報処理装置を提供することができる。
【００２５】
請求項６に係る本発明によれば、プログラムを対象装置にインストールする際に、対象装置における設定項目の設定状態を特定の設定状態に変更する使用者の操作負担を削減することが可能な情報処理装置を提供することができる。
【００２６】
請求項７に係る本発明によれば、プログラムを対象装置にインストールする際に、対象装置における設定項目の設定状態を特定の設定状態に変更する使用者の操作負担を削減することが可能な情報処理装置を提供することができる。
【００２７】
請求項８に係る本発明によれば、プログラムを対象装置にインストールする際に、対象装置における設定項目の設定状態を特定の設定状態に変更する使用者の操作負担を削減することが可能なプログラムを提供することができる。
【００２８】
請求項９に係る本発明によれば、プログラムを対象装置にインストールする際に、対象装置における設定項目の設定状態を特定の設定状態に変更する使用者の操作負担を削減することが可能なプログラムを提供することができる。
【図面の簡単な説明】
【００２９】
【図１】本発明の一実施形態の画像形成システムの構成を示す図である。
【図２】本発明の一実施形態における端末装置２０のハードウェア構成を示す図である。
【図３】本発明の一実施形態における端末装置２０の機能構成を示すブロック図である。
【図４】このインストーラ４０の構成を説明するための図である。
【図５】アプリＡ４１、アプリＢ４２のそれぞれの構成を説明するための図である。
【図６】本発明の一実施形態の端末装置２０におけるアプリのインストール実行時の動作を説明するためのフローチャートである。
【図７】端末装置２０と画像形成装置１０との間のデータの送受信を説明するためのシーケンスチャートである。
【図８】端末装置２０が、アプリを動作させるために特定の設定状態となっていることが必要な設定項目や、アプリをインストールするために特定の設定状態となっていることが必要な設定項目を判定する際に用いる判定テーブルの一例を示す図である。
【図９】制御部３１が、アプリＡのコンポーネントに基づいて判定を行う場合の判定例を示す図である。
【図１０】制御部３１が、アプリＢのコンポーネントに基づいて判定を行う場合の判定例を示す図である。
【図１１】制御部３１が、アプリＡのコンフィグファイルに基づいて判定を行う場合の判定例を示す図である。
【図１２】制御部３１が、アプリＢのコンフィグファイルに基づいて判定を行う場合の判定例を示す図である。
【図１３】アプリＡ、アプリＢを画像形成装置１０にインストールしようとする際に変更が必要な設定項目の総合的な判定結果の一例を示す図である。
【図１４】アプリＡ、Ｂを動作させるために特定の設定状態となっていることが必要であると判定された設定項目の現在の設定状態を画像形成装置１０に問い合わせ、画像形成装置１０が、問合せを受けた設定項目の設定情報を端末装置２０に返信する様子を示すシーケンスチャートである。
【図１５】端末装置２０が画像形成装置１０から取得した現在の設定状態の一例を示す図である。
【図１６】端末装置２０が画像形成装置１０に対して設定状態の変更を指示する様子を示すシーケンスチャートである。
【図１７】指示された変更処理が正常に実行された場合の変更結果例を示す図である。
【図１８】指示された変更処理が正常に実行されなかった場合の変更結果例を示す図である。
【図１９】インストール時のみある特定の設定状態となっていることが必要な設定項目がある場合に、端末装置２０と画像形成装置１０との間のデータの送受信を説明するためのシーケンスチャートである。
【発明を実施するための形態】
【００３０】
次に、本発明の実施の形態について図面を参照して詳細に説明する。
【００３１】
図１は本発明の一実施形態の画像形成システムを示す図である。
【００３２】
本発明の一実施形態の画像形成システムは、図１に示されるように、ネットワーク３０により相互に接続された画像形成装置１０、および端末装置２０により構成される。端末装置２０は、印刷データを生成して、ネットワーク３０経由にて生成した印刷データを画像形成装置１０に対して送信する、例えば、パーソナルコンピュータ等の装置である。画像形成装置１０は、端末装置２０から送信された印刷データを受け付けて、印刷データに応じた画像を用紙上に出力する。なお、画像形成装置１０は、印刷（プリント）機能、スキャン機能、複写（コピー）機能、ファクシミリ機能等の複数の機能を有するいわゆる複合機と呼ばれる装置である。
【００３３】
また、端末装置２０は、画像形成装置１０に対してアプリケーションプログラムをインストールする処理を実行する情報処置装置として動作する。
【００３４】
アプリケーションプログラムとは、画像形成装置等により提供される特定のサービスや機能を実現するためのソフトウェアプログラムのことをいう。ここで、アプリケーションプログラムには、予め画像形成装置等に搭載されているものや、後から画像形成装置にインストールすることにより追加可能なものがある。以降では、このアプリケーションプログラムを単にアプリと省略する。
【００３５】
次に、本実施形態における端末装置２０のハードウェア構成を図２に示す。
【００３６】
端末装置２０は、図２に示されるように、ＣＰＵ１１、メモリ１２、ハードディスクドライブ（ＨＤＤ）等の記憶装置１３、ネットワーク３０を介して画像形成装置１０との間でデータの送信及び受信を行う通信インタフェース（ＩＦ）１４、タッチパネル又は液晶ディスプレイ並びにキーボードを含むユーザインタフェース（ＵＩ）装置１５を有する。これらの構成要素は、制御バス１６を介して互いに接続されている。
【００３７】
ＣＰＵ１１は、メモリ１２または記憶装置１３に格納された制御プログラムに基づいて所定の処理を実行して、端末装置２０の動作を制御する。なお、本実施形態では、ＣＰＵ１１は、メモリ１２または記憶装置１３内に格納された制御プログラムを読み出して実行するものとして説明したが、当該プログラムをＣＤ−ＲＯＭ等の記憶媒体に格納してＣＰＵ１１に提供することも可能である。
【００３８】
図３は、上記の制御プログラムが実行されることにより実現される端末装置２０の機能構成を示すブロック図である。
【００３９】
本実施形態の端末装置２０は、図３に示されるように、制御部３１と、表示部３２と、記憶部３３と、格納装置３４と、通信部３５とを備えている。
【００４０】
格納装置３４には、インストール（セットアップ）の対象装置である画像形成装置１０にインストールしようとするアプリが含まれたインストーラ４０が格納されている。
【００４１】
このインストーラ４０は、図４に示すように、画像形成装置１０にインストールしようとするアプリＡ４１、アプリＢ４２と、このアプリＡ４１、アプリＢ４２をインストールする際の処理を実行するためのインストール用プログラム４３とから構成されている。
【００４２】
端末装置２０では、制御部３１がインストール用プログラム４３に基づく処理を実行することにより、アプリＡ４１、アプリＢ４２を画像形成装置１０にインストールする一連の処理が実行される。
【００４３】
そして、このアプリＡ４１、アプリＢ４２は、それぞれ、図５に示すように、ソースコード、コンフィグファイル、ＰＮＧ(Portable Network Graphics)ファイル等のコンポーネントにより構成されている。
【００４４】
表示部３２は、制御部３１による制御に基づいて、ユーザに対してインストールの途中経過やインストール結果等を表示する。記憶部３３は、制御部３１によるインストール処理の際の各種情報を一時的に記憶するためのメモリである。また、通信部３５は、画像形成装置１０との間でデータの送受信を行うための通信機能を実行している。
【００４５】
制御部３１は、あるアプリをインストールの対象装置である画像形成装置１０にインストールする際に、画像形成装置１０における複数の設定項目のうち、このアプリを動作させるために特定の設定状態となっていることが要求される設定項目を判定する。
【００４６】
そして、制御部３１は、このアプリを動作させるために特定の設定状態となっていることが必要であると判定された設定項目の現在の設定状態を画像形成装置１０から取得する。
【００４７】
そして、制御部３１は、取得された画像形成装置１０における現在の設定状態が、このアプリを動作させるために必要な特定の設定状態とは異なる場合、画像形成装置１０に対して、その設定項目の設定状態を、アプリを動作させるために必要な特定の設定状態に変更するよう通信部３５を介して指示する。
【００４８】
また、アプリを動作させるためではなく、アプリをインストールする際のみにある特定の設定状態となっている必要がある設定項目が存在する場合がある。
【００４９】
このような場合には、制御部３１は、アプリを画像形成装置１０にインストールする際に、画像形成装置１０における複数の設定項目のうち、このアプリをインストールするために特定の設定状態となっていることが要求される設定項目を判定する。
【００５０】
そして、制御部３１は、このアプリをインストールするために特定の設定状態となっていることが必要であると判定された設定項目の現在の設定状態を画像形成装置１０から取得する。
【００５１】
そして、制御部３１は、取得された画像形成装置１０における現在の設定状態が、このアプリを動作させるために必要な設定状態とは異なる場合、画像形成装置１０に対して、その設定項目の設定状態を、アプリを動作させるために必要な特定の設定状態に変更するよう通信部３５を介して指示する。
【００５２】
さらに、制御部３１は、アプリのインストールが完了した後に、設定状態の変更を指示した設定項目の設定状態を変更前の設定状態に戻すよう画像形成装置１０に対して通信部３５を介して指示する。
【００５３】
なお、制御部３１は、インストールしようとするアプリのファイル構成、ファイル内容及びファイル階層構造のうちの少なくとも１つの情報を参照して、特定の設定状態となっていることが要求される設定項目を判定する。
【００５４】
さらに、アプリをインストールする際に毎回アプリのファイル構成等を参照して、特定の設定状態となっていることが必要な設定項目を判定するのではく、インストーラを生成する際に、そのような設定項目を予め判定しておき、その設定項目を示す情報をアプリケーションに付加しておくようなことも可能である。
【００５５】
このような場合には、制御部３１は、インストールしようとするアプリに含まれる情報を参照して、特定の設定状態となっていることが要求される設定項目を判定する。
【００５６】
そして、制御部３１は、特定の設定状態となっていることが要求される設定項目の設定状態が指示した設定状態に変更されたことを確認して、指示した設定状態となっている場合に、このアプリの画像形成装置１０へのインストールを実行する。
【００５７】
なお、特定の設定状態となっていることが要求される設定項目とは、例えば、アプリを動作させるために必要な機能の有効／無効を管理する設定項目であり、特定の設定状態が、その機能が有効となっていることである。
【００５８】
例えば、画像形成装置１０の操作パネルにユーザの要望の設定に基づいたコピーを実行するためのアイコンを表示させるようなＵＩアプリケーション用のアプリを動作させるためには、画像形成装置１０におけるＵＩアプリケーション起動プロセスが有効となっている必要がある。
【００５９】
また、画像形成装置１０内の認証制御やジョブ実行制御を行うための内部処理を追加するためのプログラムをプラグインするようなユーザ拡張プラグイン用アプリを動作させるためには、画像形成装置１０におけるユーザ拡張プラグイン起動プロセスが有効となっている必要がある。
【００６０】
このユーザ拡張プラグイン用アプリとしては、例えば、原稿スキャン時にＱＲコード（登録商標）等の２次元コードを読取ってその内容を解析するような処理を実行するようなアプリがある。
【００６１】
また、パスワード情報等の秘匿情報を取り扱うような必要情報処理があるアプリを動作させるためには、画像形成装置１０におけるＳＳＬ(Secure Sockets Layer)／ＴＬＳ(transport Layer Security)通信機能が有効となっている必要がある。
【００６２】
さらに、画像形成装置１０の操作パネル上においてタッチパネルを使用したジェスチャー操作によるＵＩを実行するようなアプリを動作させるためには、画像形成装置１０におけるタッチパネル機能が有効となっている必要がある。
【００６３】
また、特定の設定状態となっていることが要求される設定項目とは、例えば、アプリをインストールするために必要な機能の有効／無効を管理する設定項目であり、特定の設定状態が、その機能が有効となっていることである。
【００６４】
例えば、アプリのソースコード内に暗号化されていないパスワード情報等の秘匿情報が含まれているような場合、アプリのインストールする際には、ＳＳＬ／ＴＬＳ通信機能が有効となっている必要がある。
【００６５】
なお、このような場合でもアプリのインストールが終了した後には、ＳＳＬ／ＴＬＳ通信機能が無効であってもアプリの動作は問題なく実行可能である。
【００６６】
次に、本実施形態の端末装置２０におけるアプリのインストール実行時の動作を図６のフローチャートを参照して説明する。
【００６７】
先ず、制御部３１は、格納装置３４に格納されたインストーラ４０内のアプリのファイル構成、ファイル内容及びファイル階層構造を参照して、アプリの稼働条件となる設定項目を判定する（ステップＳ１０１）。
【００６８】
そして、制御部３１は、このアプリを動作させるために特定の設定状態となっていることが必要であると判定された設定項目の現在の設定状態を画像形成装置１０に問い合わせる（ステップＳ１０２）。
【００６９】
そして、制御部３１は、画像形成装置１０から取得されたその設定項目の現在の設定状態が、このアプリを動作させるために必要な特定の設定状態と一致するか否かを判定する（ステップＳ１０３）。
【００７０】
そして、画像形成装置１０から取得された現在の設定状態が、このアプリを動作させるために必要な特定の設定状態と一致した場合（ステップＳ１０３においてｙｅｓ）、制御部３１は、インストールした後のアプリは正常に動作可能と判定して、画像形成装置１０に対するアプリのインストールを開始する（ステップＳ１０４）。
【００７１】
また、画像形成装置１０から取得された現在の設定状態が、このアプリを動作させるために必要な特定の設定状態と一致しなかった場合（ステップＳ１０３においてｎｏ）、制御部３１は、その設定項目の設定状態を、アプリを動作させるために必要な特定の設定情報に変更するよう画像形成装置１０に指示する（ステップＳ１０５）。
【００７２】
そして、画像形成装置１０において設定状態の変更が完了した場合（ステップＳ１０６においてｙｅｓ）、制御部３１は、画像形成装置１０に対するアプリのインストールを開始する（ステップＳ１０４）。
【００７３】
なお、画像形成装置１０において設定状態の変更が完了しなかった場合（ステップＳ１０６においてｎｏ）、制御部３１は、画像形成装置１０に対するアプリのインストールを中止する（ステップＳ１０７）。
【００７４】
次に、上記で説明した端末装置２０と画像形成装置１０との間のデータの送受信を図７のシーケンスチャートを参照して説明する。
【００７５】
先ず、端末装置２０は、インストーラ４０内のアプリのファイル構成、ファイル内容及びファイル階層構造を参照して、アプリの稼働条件となる設定項目を判定する（ステップＳ２０１）。
【００７６】
そして、端末装置２０は、このアプリを動作させるために特定の設定状態となっていることが必要であると判定された設定項目の現在の設定状態を画像形成装置１０に問い合わせる（ステップＳ２０２）。
【００７７】
この端末装置２０からの問い合わせを受けた画像形成装置１０は、自装置の設定状態を参照して、問合せを受けた設定項目の設定情報を端末装置２０に返信する（ステップＳ２０３）。
【００７８】
すると、端末装置２０は、画像形成装置１０から受信した現在の設定状態が、このアプリを動作させるために必要な特定の設定状態と一致するか否かを確認する（ステップＳ２０４）。
【００７９】
ここで、画像形成装置１０から受信した現在の設定状態が、アプリを動作させるために必要な特定の設定状態と一致なかった場合、端末装置２０は、画像形成装置１０に対して、その設定項目の設定状態を変更するよう指示を行う（ステップＳ２０５）。
【００８０】
すると、画像形成装置１０では、端末装置２０から指示された設定項目の設定状態を変更する（ステップＳ２０６）。そして、画像形成装置１０は、設定情報を変更した変更結果を端末装置２０に返信する（ステップＳ２０７）。
【００８１】
端末装置２０では、画像形成装置１０からの返信結果を受信して、設定状態の変更が完了したことを確認して（ステップＳ２０８）、画像形成装置１０に対するアプリのインストールを開始する（ステップＳ２０９）。
【００８２】
次に、具体例を参照して、本実施形態の端末装置２０におけるアプリのインストール動作について説明する。
【００８３】
先ず、端末装置２０が、アプリを動作させるために特定の設定状態となっていることが必要な設定項目や、アプリをインストールするために特定の設定状態となっていることが必要な設定項目を判定する際に用いる判定テーブルの一例を図８を参照して説明する。
【００８４】
この図８に示された判定テーブルでは、アプリの種類を判定するための条件と、その条件に合致するアプリの種類と、そのアプリの種類を実行またはインストールする際に特定の設定状態となっていることが必要な設定項目及びその特定の設定状態と、その特定の設定状態が必要となる状況（動作中なのかインストール時なのか）が対応付けられた構成となっている。
【００８５】
具体的には、この判定テーブルに基づいて、あるアプリのファイル構成中に”Contentslib”というディレクトリが存在する場合、そのアプリはＵＩアプリケーションであると判定され、このアプリの動作中にはＵＩアプリケーション起動プロセスの設定が有効となっていることが必要であると判定される。
【００８６】
また、あるアプリのファイルにJava（登録商標）拡張子のファイルがある場合には、そのアプリはユーザ拡張プラグインであると判定され、このアプリの動作中にはユーザ拡張プラグイン起動プロセスの設定が有効となっていることが必要であると判定される。
【００８７】
さらに、あるアプリのコンフィグファイル内において”SSLRequired”というタグが宣言されている場合、そのアプリは秘匿情報処理があるアプリであると判定され、動作中にはＳＳＬ／ＴＬＳ通信機能の設定が有効となっていることが必要であると判定される。
【００８８】
さらに、あるアプリのソース今度中に暗号化されていないパスワード情報が含まれている場合、そのアプリは秘匿情報処理があるアプリであると判定され、インストール時にはＳＳＬ／ＴＬＳ通信機能の設定が有効となっていることが必要であると判定される。
【００８９】
制御部３１が、この図８に示したような判定テーブルに基づいて、特定の状態となっていることが必要な設定項目を判定する具体的な様子を図９〜図１２を参照して説明する。
【００９０】
図９は、制御部３１が、アプリＡのコンポーネントに基づいて判定を行う場合の判定例を示している。
【００９１】
図９を参照すると、制御部３１は、アプリＡのコンポーネント中にContentslib”というディレクトリが存在することにより、このアプリＡをＵＩアプリケーションであると判定し、このアプリＡのの動作中にはＵＩアプリケーション起動プロセスの設定が有効となっていることが必要であると判定する。
【００９２】
図１０は、制御部３１が、アプリＢのコンポーネントに基づいて判定を行う場合の判定例を示している。
【００９３】
図１０を参照すると、制御部３１は、アプリＢのコンポーネント中に”Main.java”、”Transfer.java”というJava（登録商標）拡張子のファイルがあることにより、このアプリＢはユーザ拡張プラグインであると判定し、このアプリＢの動作中にはユーザ拡張プラグイン起動プロセスの設定が有効となっていることが必要であると判定する。
【００９４】
図１１は、制御部３１が、アプリＡのコンフィグファイルに基づいて判定を行う場合の判定例を示している。
【００９５】
図１１を参照すると、制御部３１は、アプリＡのコンフィグファイル内において”SSLRequired”というタグが宣言されていることにより、このアプリＡは秘匿情報処理があるアプリであると判定し、動作中にはＳＳＬ／ＴＬＳ通信機能の設定が有効となっていることが必要であると判定する。
【００９６】
図１２は、制御部３１が、アプリＢのコンフィグファイルに基づいて判定を行う場合の判定例を示している。
【００９７】
図１２を参照すると、制御部３１は、アプリＢのコンフィグファイル中には判定テーブルに設定されているような条件に合致するような情報は存在しないと判定し、このアプリＢを動作させるためやインストールするために設定状態を変更する必要があるような機能（設定項目）は特に無いと判定する。
【００９８】
上記で説明したような判定が行われることにより、制御部３１が、アプリＡ、アプリＢを画像形成装置１０にインストールしようとする際に変更が必要な設定項目を総合的に判定した結果の一例を図１３に示す。
【００９９】
図１３を参照すると、制御部３１は、（１）アプリの動作中は、ＵＩアプリケーション起動プロセスの設定が必要である、（２）アプリの動作中は、ユーザ拡張プラグイン起動プロセスの設定が有効となっていることが必要である、（３）アプリの動作中は、ＳＳＬ／ＴＬＳ通信機能の設定が有効となっていることが必要であると判定しているのが分かる。
【０１００】
次に、このような判定結果に基づいて端末装置２０が、アプリＡ、Ｂを動作させるために特定の設定状態となっていることが必要であると判定された設定項目の現在の設定状態を画像形成装置１０に問い合わせ、問い合わせを受けた画像形成装置１０が、自装置の設定状態を参照して、問合せを受けた設定項目の設定情報を端末装置２０に返信する様子を図１４のシーケンスチャートに示す。
【０１０１】
端末装置２０と画像形成装置１０との間では、例えば、ＳＯＡＰ（Simple Object Access Protocol）メッセージと呼ばれる情報を送受信することにより、設定状態の問い合わせとその返信結果がやり取りされる。
【０１０２】
先ず、端末装置２０から画像形成装置１０に対して、ＵＩアプリケーション起動プロセスの現在の設定状態が問い合わされる（ステップＳ２０２ａ）。そして、画像形成装置１０から端末装置２０に対して、問い合わせを受けたＵＩアプリケーション起動プロセスの現在の設定状態が返信される（ステップＳ２０３ａ）。
【０１０３】
また、端末装置２０から画像形成装置１０に対して、ユーザ拡張プラグイン起動プロセスの現在の設定状態が問い合わされる（ステップＳ２０２ｂ）。そして、画像形成装置１０から端末装置２０に対して、問い合わせを受けたユーザ拡張プラグイン起動プロセスの現在の設定状態が返信される（ステップＳ２０３ｂ）。
【０１０４】
そして、端末装置２０から画像形成装置１０に対して、ＳＳＬ／ＴＬＳ通信機能の現在の設定状態が問い合わされる（ステップＳ２０２ｃ）。そして、画像形成装置１０から端末装置２０に対して、問い合わせを受けたＳＳＬ／ＴＬＳ通信機能の現在の設定状態が返信される（ステップＳ２０３ｃ）。
【０１０５】
このようにして、端末装置２０が画像形成装置１０から取得した現在の設定状態の一例を図１５に示す。
【０１０６】
図１５では、端末装置２０が、ＵＩアプリケーション起動プロセスの現在の設定状態は「無効」であり、ユーザ拡張プラグイン起動プロセスの現在の設定状態は「有効」であり、ＳＳＬ／ＴＬＳ通信機能の現在の設定状態は「無効」となっている情報を取得した場合が示されている。
【０１０７】
このような情報を取得した端末装置２０は、ユーザ拡張プラグイン起動プロセスの設定状態は変更の必要はないが、ＵＩアプリケーション起動プロセスおよびＳＳＬ／ＴＬＳ通信機能の設定状態を「無効」から「有効」に変更する必要があると判定する。
【０１０８】
このような場合に、端末装置２０が画像形成装置１０に対して設定状態の変更を指示する様子を図１６のシーケンスチャートに示す。
【０１０９】
この端末装置２０から画像形成装置１０への設定状態の変更指示および変更結果の返信においても、例えば、上記で説明したＳＯＡＰメッセージと呼ばれる情報が用いられる。
【０１１０】
図１６を参照すると、先ず、端末装置２０から画像形成装置１０に対して、ＵＩアプリケーション起動プロセスおよびＳＳＬ／ＴＬＳ通信機能の設定状態を「無効」から「有効」に変更するような指示が送信される（ステップＳ２０５）。
【０１１１】
すると、この端末装置２０からの変更指示を受信した画像形成装置１０では、ＵＩアプリケーション起動プロセスおよびＳＳＬ／ＴＬＳ通信機能の設定状態を「無効」から「有効」に変更するような処理が実行される（ステップＳ２０６）。
【０１１２】
そして、画像形成装置１０から端末装置２０に対して、実行した設定状態の変更結果を返信する（ステップＳ２０７）。
【０１１３】
このような設定状態の変更処理において、指示された変更処理が正常に実行された場合の変更結果例を図１７に示す。
【０１１４】
この図１７に示した変更結果例では、ＵＩアプリケーション起動プロセスおよびＳＳＬ／ＴＬＳ通信機能の両方とも「無効」から「有効」に変更されている。そのため、端末装置２０では、この変更結果を確認して、アプリＡ、アプリＢを画像形成装置１０にインストールする処理を開始する。
【０１１５】
このような設定状態の変更処理において、指示された変更処理が正常に実行されなかった場合の変更結果例を図１８に示す。
【０１１６】
この図１８に示した変更結果例では、ＵＩアプリケーション起動プロセスについては「無効」から「有効」に正常に変更されたが、ＳＳＬ／ＴＬＳ通信機能については何等かの理由により設定状態を「有効」に変更する処理が実行できなかったことを示している。そのため、端末装置２０では、この変更結果を確認して、アプリＡ、アプリＢを画像形成装置１０にインストールする処理を中止する。
【０１１７】
なお、上記では、アプリの動作中にある特定の設定状態となっていることが必要な設定項目がある場合の動作について説明したが、インストール時のみある特定の設定状態となっていることが必要な設定項目がある場合には、インストール完了後に元の設定状態に戻すようにしても良い。
【０１１８】
このような場合の端末装置２０と画像形成装置１０との間のデータの送受信を図１９のシーケンスチャートを参照して説明する。
【０１１９】
なお、図１９に示したシーケンスチャートは、図７に示したシーケンスチャートに対して、ステップＳ２１１〜Ｓ２１４の処理が追加されたものであるため、この追加された処理についてのみ説明を行う。
【０１２０】
端末装置２０は、画像形成装置１０においてアプリのインストールが完了すると（ステップＳ２１０）、インストール時のみ有効であると判定された設定項目の設定状態を元の無効状態に戻す変更を指示する（ステップＳ２１１）。
【０１２１】
すると、画像形成装置１０では、この指示を受信して、変更を指示された設定項目の設定状態を有効状態から無効状態に変更する（ステップＳ２１２）。
【０１２２】
そして、画像形成装置１０は、この変更結果を端末装置２０に返信する（ステップＳ２１３）。すると、端末装置２０は、画像形成装置１０からの変更結果を受信して、設定状態の変更が完了したことを確認する（ステップＳ２１４）。
【符号の説明】
【０１２３】
１０    画像形成装置
１１    ＣＰＵ
１２    メモリ
１３    記憶装置
１４    通信インタフェース（ＩＦ）
１５    ユーザインタフェース（ＵＩ）装置
１６    制御バス
２０    端末装置
３０    ネットワーク
３１    制御部
３２    表示部
３３    記憶部
３４    格納装置
３５    通信部
４０    インストーラ
４１    アプリＡ
４２    アプリＢ
４３    インストール用プログラム
【図１】
2018037867.tif 000003
【図２】
2018037867.tif 000004
【図３】
2018037867.tif 000005
【図４】
2018037867.tif 000006
【図５】
2018037867.tif 000007
【図６】
2018037867.tif 000008
【図７】
2018037867.tif 000009
【図８】
2018037867.tif 000010
【図９】
2018037867.tif 000011
【図１０】
2018037867.tif 000012
【図１１】
2018037867.tif 000013
【図１２】
2018037867.tif 000014
【図１３】
2018037867.tif 000015
【図１４】
2018037867.tif 000016
【図１５】
2018037867.tif 000017
【図１６】
2018037867.tif 000018
【図１７】
2018037867.tif 000019
【図１８】
2018037867.tif 000020
【図１９】
2018037867.tif 000021