(57)【特許請求の範囲】
【請求項１】
表示部を有する情報処理装置であって、
画像処理装置に対応するデバイス管理画面を前記表示部に表示させる表示制御手段と、
前記表示制御手段によって前記表示部に表示された前記デバイス管理画面を介した指示に応じて、前記デバイス管理画面から起動することを示す識別情報を画像処理装置と連携するアプリケーションに対して入力することで、前記デバイス管理画面に関連付けられた前記アプリケーションを起動させる起動手段と、
を有し、
前記アプリケーションは、前記アプリケーションが前記デバイス管理画面から起動されたか否かと、前記情報処理装置に接続されている画像処理装置と、に基づいて処理対象を決定することを特徴とする情報処理装置。
【請求項２】
前記表示制御手段は、制御対象の画像処理装置として設定された画像処理装置に対応するデバイス管理制御用データに基づき、前記デバイス管理画面を前記表示部に表示させることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記起動手段によって起動された前記アプリケーションは、起動の際に前記識別情報が入力された場合、前記アプリケーションが提供する複数の機能の各機能に対応する選択項目から所定の機能の選択項目を表示せずに、表示しない前記選択項目以外の選択項目を表示することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
前記起動手段は、前記識別情報と、前記アプリケーションの機能を識別する機能識別情報と、を入力し、前記アプリケーションを起動させることを特徴とする請求項１乃至３の何れか１項に記載の情報処理装置。
【請求項５】
前記起動手段によって起動された前記アプリケーションは、起動の際に前記機能識別情報が入力された場合、前記アプリケーションが提供する複数の機能のうち、前記機能識別情報で識別される機能を起動する機能として決定することを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記起動手段によって起動された前記アプリケーションが前記デバイス管理画面の表示を変更するために記憶装置に記憶した情報に基づいて、前記デバイス管理画面の表示を変更する変更手段を更に有することを特徴とする請求項１乃至５の何れか１項に記載の情報処理装置。
【請求項７】
前記起動手段によって起動された前記アプリケーションは修復処理を行うための修復アプリケーションであることを特徴とする請求項１乃至６の何れか１項に記載の情報処理装置。
【請求項８】
前記起動手段は、前記アプリケーションを管理者権限で起動させることを特徴とする請求項１乃至７の何れか１項に記載の情報処理装置。
【請求項９】
表示部を有する情報処理装置が実行する情報処理方法であって、
画像処理装置に対応するデバイス管理画面を表示部に表示させる表示制御ステップと、
前記表示制御ステップで表示部に表示されたデバイス管理画面を介した指示に応じて、前記デバイス管理画面を介した指示に応じて起動することを示す識別情報を前記画像処理装置と連携するアプリケーションに対して入力することで、前記デバイス管理画面に関連付けられた前記アプリケーションを起動させる起動ステップと、
を含み、
前記アプリケーションは、前記アプリケーションが前記デバイス管理画面から起動されたか否かと、前記情報処理装置に接続されている画像処理装置と、に基づいて処理対象を決定することを特徴とする情報処理方法。
【請求項１０】
表示部を有するコンピュータを、
画像処理装置に対応するデバイス管理画面を前記表示部に表示させる表示制御手段と、
前記表示制御手段によって前記表示部に表示された前記デバイス管理画面を介した指示に応じて、前記デバイス管理画面から起動することを示す識別情報を画像処理装置と連携するアプリケーションに対して入力することで、前記デバイス管理画面に関連付けられた前記アプリケーションを起動させる起動手段と、
して機能させ、
前記アプリケーションは、前記アプリケーションが前記デバイス管理画面から起動されたか否かと、前記コンピュータに接続されている画像処理装置と、に基づいて処理対象を決定することを特徴とするプログラム。
【請求項１１】
前記表示制御手段は、制御対象の画像処理装置として設定された画像処理装置に対応するデバイス管理制御用データに基づき、前記デバイス管理画面を前記表示部に表示させることを特徴とする請求項１０に記載のプログラム。
【請求項１２】
前記起動手段によって起動された前記アプリケーションは、起動の際に前記識別情報が入力された場合、前記アプリケーションが提供する複数の機能の各機能に対応する選択項目から所定の機能の選択項目を表示せずに、表示しない前記選択項目以外の選択項目を表示することを特徴とする請求項１０又は１１に記載のプログラム。
【請求項１３】
前記起動手段は、前記識別情報と、前記アプリケーションの機能を識別する機能識別情報と、を入力し、前記アプリケーションを起動させることを特徴とする請求項１０乃至１２の何れか１項に記載のプログラム。
【請求項１４】
前記起動手段によって起動された前記アプリケーションは、起動の際に前記機能識別情報が入力された場合、前記アプリケーションが提供する複数の機能のうち、前記機能識別情報で識別される機能を起動する機能として決定することを特徴とする請求項１３に記載のプログラム。
【請求項１５】
前記起動手段によって起動された前記アプリケーションが前記デバイス管理画面の表示を変更するために記憶装置に記憶した情報に基づいて、前記デバイス管理画面の表示を変更する変更手段を更に有することを特徴とする請求項１０乃至１４の何れか１項に記載のプログラム。
【請求項１６】
前記起動手段によって起動された前記アプリケーションは修復処理を行うための修復アプリケーションであることを特徴とする請求項１０乃至１５の何れか１項に記載のプログラム。
【請求項１７】
前記起動手段は、前記アプリケーションを管理者権限で起動させることを特徴とする請求項１０乃至１６の何れか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、ＵＳＢ、Ｅｔｈｅｒｎｅｔ（登録商標）、無線ＬＡＮ等の様々なインタフェースを利用して、パーソナルコンピュータに周辺装置を接続し、自宅やオフィスで様々な形態でこのような周辺装置制御システムが有効に活用されている。ここで、ＵＳＢとは、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓの略である。また、以下、パーソナルコンピュータを、ＰＣと略す場合がある。周辺装置の例としては、例えば、プリンタ、複写機、ファクシミリ、スキャナ、デジタルカメラ、及びこれらの複合機能等が挙げられる。
米国マイクロソフト社のＷｉｎｄｏｗｓ（登録商標）７では、ＰＣに接続された周辺装置を管理する新しい機能が導入される予定である。ＰＣに接続された装置を表示するウィンドウであるＤｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｒｓと各装置の固有のアプリケーションやサービスへのリンク機能を有するＤｅｖｉｃｅ  Ｓｔａｇｅ（登録商標）である。Ｄｅｖｉｃｅ  Ｓｔａｇｅではビジュアルな画面を提供でき、ユーザが簡単に装置に関連する機能やサービスにアクセスすることができるようになる。
従来、Ｗｉｎｄｏｗｓのアプリケーションから、プリンタや、スキャナ、複写機、若しくはこれらの複合機等の周辺装置に対して印刷や画像読取り指示をする。この場合、ユーザは、アプリケーションを起動した後、出力先の装置を選択し、周辺装置に対し入出力指示を実行するという操作手順となる（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−８５１３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えば出力先の装置について情報処理装置の設定を修復するアプリケーション（以下、修復アプリケーションと称す）が存在する。修復アプリケーションには、一つの出力先装置に対して複数のプリンタアイコンが作成されていた場合、ユーザが使用したいプリンタアイコン以外のプリンタアイコンを削除する機能が存在する。しかし、Ｄｅｖｉｃｅ  Ｓｔａｇｅから各種アプリケーションが起動される場合は、Ｄｅｖｉｃｅ  Ｓｔａｇｅに関連付けられたプリンタアイコンをユーザが使用したいことは既に明確である。そのため、Ｄｅｖｉｃｅ  Ｓｔａｇｅから印刷を行うアプリケーションを起動して使用する場合は、ユーザが間違ったプリンタアイコンを使用してしまうことはない。したがって、Ｄｅｖｉｃｅ  Ｓｔａｇｅから起動された修復アプリケーションは、その他のプリンタアイコンを削除する処理を行う必要がない。
【０００５】
本発明は、アプリケーションの処理の無駄を省くことを目的とする。
【課題を解決するための手段】
【０００６】
そこで、本発明は、表示部を有する情報処理装置であって、画像処理装置に対応するデバイス管理画面を前記表示部に表示させる表示制御手段と、前記表示制御手段によって前記表示部に表示された前記デバイス管理画面を介した指示に応じて、前記デバイス管理画面から起動することを示す識別情報を画像処理装置と連携するアプリケーションに対して入力することで、前記デバイス管理画面に関連付けられた前記アプリケーションを起動させる起動手段と、を有し、前記アプリケーションは、前記アプリケーションが前記デバイス管理画面から起動されたか否かと、前記情報処理装置に接続されている画像処理装置と、に基づいて処理対象を決定することを特徴とする。
【発明の効果】
【０００７】
本発明によれば、アプリケーションの処理の無駄を省くことができる。
【図面の簡単な説明】
【０００８】
【図１】情報処理装置及び周辺装置からなる周辺装置制御システムの一例を示す図である。
【図２】周辺装置制御システムに係る各装置のハードウェア構成の一例を示す図である。
【図３】ＰＣのソフトウェア構成の一例を示す図である。
【図４】ＰＣにおけるプリンタドライバの構成を図３とは別の視点において示す図である。
【図５】Ｄｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｓ画面とデバイス管理画面との一例を示す図である。
【図６】ＭＦＰ（若しくはＰｒｉｎｔｅｒ）がネットワークやＵＳＢインタフェース等を介してＰＣに接続されたときに開始する処理の一例を示すフローチャートである。
【図７】デバイス管理制御用ファイルの一例を示す図である。
【図８】デバイス管理用制御ファイルのインストールの処理の一例を示すフローチャートである。
【図９】デバイス管理画面の起動処理の一例を示すフローチャートである。
【図１０】デバイス管理と修復アプリケーションとの機能構成の一例を示す図である。
【図１１】プリンタに関する情報処理装置内の設定を修復するアプリケーション画面の一例を示す図である。
【図１２】アプリケーションが起動したときの処理の一例を示すフローチャートである。
【図１３】アプリケーションから修復処理を実行したときの処理を表すフローチャートである。
【図１４】デバイス管理制御用ファイルの一例を示す図である。
【図１５】デバイス管理画面の一例を示す図である。
【図１６】デバイス管理制御用ファイルの一例を示す図である。
【図１７】デバイス管理と印刷アプリケーションとの機能構成の一例を示す図である。
【図１８】印刷アプリケーションの起動処理の一例を示すフローチャートである。
【図１９】印刷アプリケーションがＬＣＤに表示するメニュー画面のＵＩ表示例を示す図である。
【図２０】印刷アプリケーションの「アルバム」作成機能の第１段階である「画像の選択」時のＵＩ表示の一例を示す図である。
【図２１】「アルバム」作成機能の第２段階である「編集」時のＵＩ表示の一例を示す図である。
【図２２】印刷アプリケーションの終了時に行う処理の一例を示すフローチャートである。
【図２３】処理中に印刷アプリケーションが情報処理装置のＬＣＤに表示するメッセージ画面の一例を示す図である。
【図２４】デバイス管理のＵＩ表示画面の一例を示す図である。
【図２５】印刷アプリケーションのＵＩ表示画面の一例を示す図である。
【発明を実施するための形態】
【０００９】
発明の前提を以下に説明する。Ｄｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｒｓの画面（例えば、後述する図５（ａ）参照）は、Ｗｉｎｄｏｗｓの「スタートメニュー」から表示することができる。Ｄｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｒｓ画面からは更に各装置のＤｅｖｉｃｅ  Ｓｔａｇｅ画面（例えば、後述する図５（ｂ）参照）を開くことができる。プリンタを例に挙げると、写真やドキュメントを開いて表示・印刷するようなアプリケーションへのリンクをＤｅｖｉｃｅ  Ｓｔａｇｅ画面上から提供することが考えられる。また、プリンタやスキャナ等の装置の状態を、表示用ディスプレイ（例えば、後述するＬＣＤ２０６）に表示する、ステータスモニタなどへのリンクをＤｅｖｉｃｅ  Ｓｔａｇｅ画面上から提供することも考えられる。また、インターネットの普及に伴い、情報処理装置や周辺装置をインターネットに接続し、インターネットを利用した様々なオンラインサービスも提供されている。例えば、メーカーがインターネット上で提供するサポートサイトのリンクをＤｅｖｉｃｅ  Ｓｔａｇｅ画面上に設けることで、ユーザが簡単に装置に関連するサイトにアクセスできるようにするといった活用例も挙げられる。
以下、本発明の実施形態について図面に基づいて説明する。
【００１０】
＜第一の実施の形態＞
図１は、情報処理装置及び周辺装置からなる周辺装置制御システムの一例を示す図である。図１において、１、２は、情報処理装置であり、一般的なＰＣで構成される。ＰＣ１、ＰＣ２は、図２（ａ）で後述するようなハードウェアで構成され、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）としてＷｉｎｄｏｗｓ７と同等のＯＳがインストールされている。ＰＣ１、ＰＣ２は、それぞれＥｔｈｅｒｎｅｔ（登録商標）で構成されるネットワーク４、８に接続されている。３は、マルチファンクションプリンタ（以降、ＭＦＰと略す場合がある）であり、カラーインクジェットプリンタ、カラーファクシミリ、カラースキャナ等で構成され、本実施の形態における周辺装置の一例である。ＭＦＰ３は、ＡＢＣ社製のＫｍｍｎというモデル名のＭＦＰである。尚、本実施の形態における周辺装置（画像処理装置）としては、プリンタ、複写機、ファクシミリ、スキャナ、デジタルカメラ、及びこれらの複合機能を備える装置等であってもよい。ＭＦＰ３は、図２（ｂ）で後述するようなハードウェアで構成され、ＰＣ１とネットワーク４を介して接続されており、互いに双方向通信が可能である。８０は、アプリケーションであり、Ｗｉｎｄｏｗｓ用の実行可能形式のファイル（＊．ＥＸＥ）で構成される。本実施の形態の一例として、アプリケーション８０は、後述する図５（ａ）、図５（ｂ）に示すようなデバイス管理画面を表示する機能を有する。５０は、図４に示すようなプリンタドライバである。１５０は、ＦＡＸドライバである。１７０は、スキャナドライバである。ネットワーク４は、ＭＦＰ３を使用するユーザ（顧客）が住んでいる自宅に構築された一般家庭用のホームネットワークである。ＭＦＰ３は、この自宅内でネットワーク４を介してＰＣ１と接続されて家族間で共有使用されているＭＦＰである。ネットワーク８は、ＡＢＣ社内に構築されたオフィスネットワークである。ネットワーク８に接続されているＰＣ２は、Ｗｅｂサーバ９を備えており、インターネットを介してＡＢＣ社のＷｅｂサイトを提供している。１０は、ＰＣ１に挿入可能なＣＤ−ＲＯＭであり、ソフトウェアや電子ファイルが格納されている。１１、１２は、後述する図７で示すデバイス管理制御用ファイル（データ）を図案化したものであり、Ｗｅｂサーバ９やＣＤ−ＲＯＭ１０から配布される。５は、アナログ電話回線であり、ＰＣ１におけるファクシミリの送信又は受信に使用される。６は、フラッシュメモリであり、ＭＦＰ３のフラッシュメモリ装着用のスロット（図では省略）に装着することで、ＰＣ１からストレージとして参照することができる。７は、プリンタであり、ここでは、ＸＹＺ社製のＤｅｆｇというモデルである。プリンタ７は、ＭＦＰ３とは異なるデバイスである。プリンタ７の例としては、例えば、シングルファンクションのレーザプリンタや、インクジェットプリンタがあげられる。プリントエンジンは、インクジェット、電子写真方式、カラー方式、モノクロ方式の何れでもよい。
【００１１】
図２は、周辺装置制御システムに係る各装置のハードウェア構成の一例を示す図である。図２（ａ）は、ＰＣのハードウェア構成の一例を示す図である。ＰＣ１、ＰＣ２は、図２に示すようなハードウェアで構成されている。図２ではＰＣ１の例で説明する。
図２に示す通り、ＰＣ１は、ランダムアクセスメモリ部（ＲＡＭ２０１）、記憶部であるハードディスクドライブ部（ＨＤＤ２０２）、入力部の一例であるキーボード部（ＫＢＤ２０３）、制御部のＣＰＵ２０４を有する。更に、ＰＣ１は、表示部の一例である表示用ディスプレイ（ＬＣＤ２０６）、通信制御部の一例であるネットワークボード（ＮＢ２０５）、以上のＰＣ１の構成要素を互いに接続するバス２０７から構成される。尚、記憶部は、可搬性ＣＤ−ＲＯＭ又は内部据付のＲＯＭ等であってもよい。デバイス管理８０等のアプリケーションや、図３、図４、図１０、図１５に示す各モジュール（ソフトウェア）は、ＨＤＤ２０２に記憶され、必要に応じてＲＡＭ２０１に読み出されてＣＰＵ２０４により実行される。これにより、ＣＰＵ２０４が、デバイス管理８０等のアプリケーションや、図３、図４、図１０、図１５に示す各モジュール（ソフトウェア）の機能を実現する。
【００１２】
図２（ｂ）は、ＭＦＰのハードウェア構成の一例を示す図である。ＭＦＰ３は、図２に示すようなハードウェア構成を持つ。図２において、１５は、マイクロプロセッサ等から構成されるＣＰＵである。ＣＰＵ１５は、ＭＦＰ３の中央処理装置として、ＲＯＭ１６に記憶されているプログラムに従って、ＲＡＭ１７、通信部１８、記録部１９、操作部２０、表示部２１、読取り部２２、ファクシミリ制御部２３を制御する。ＲＯＭ１６にはプリンタドライバ５０（図４で後述する）の制御に従ってＭＦＰ３が記録（印刷）処理や、状態をＰＣ１へ伝える処理を行うプログラムが記憶されている。ＲＡＭ１７は、主にＰＣ１から送られて、それを基に記録部１９によって印刷される印字データが一時的に記憶される。また、ＲＡＭ１７には、読取り部２２で読取られた画像データ、ＰＣ１から送られてきたファクシミリの送信データ、ファクシミリ制御部で受信されたファクシミリの受信データ等も一時的に記憶される。通信部１８にはネットワーク４用の接続ポートやアナログ電話回線５用の接続ポート等が含まれており、Ｅｔｈｅｒｎｅｔやファクシミリのアナログ通信を制御する。記録部１９は、インクジェット方式の記録ヘッド、各カラーインク、キャリッジ、記録紙搬送機構等から構成される記録ユニットと、前記印字データを基に前記記録ヘッドにて印字用パルスを発生させる為のＡＳＩＣ等から構成される電気回路とから構成される。印刷可能なアプリケーション上での印刷操作又はファクシミリの送信操作によって、アプリケーションで開かれているファイルの表示内容（画像データ）が、スプールファイルとしてＰＣ１のＨＤＤ２０２に一時的に格納される。スプールファイルとして格納されるデータは、印刷装置で解釈可能な印刷コマンド形式や中間描画命令形式（ＥＭＦ形式）のデータである。そして、画像データは、プリンタドライバ５０又はＦＡＸドライバ１５０を介してＭＦＰ３制御用コマンドを含む印字データ又はファクシミリの送信データに変換された後、ネットワーク４を介してＭＦＰ３に送られる。ＭＦＰ３にて受信された印字データは、記録部１９で印字用パルスに変換されて、記録紙上に印刷される。ＭＦＰ３にて受信されたファクシミリの送信データは、ファクシミリ制御部２３でファクシミリの通信プロトコルに変換されて、アナログ電話回線５を介して相手先のファクシミリ装置に送信される。２０は、操作部であり、電源ボタン、リセットボタン等の各種ボタンから構成され、ＭＦＰ３を操作することができる。２１は、表示部であり、タッチパネルの液晶ディスプレイで構成され、ＭＦＰ３の状態の表示や、各種設定や電話番号の表示、入力等を行うことができる。２２は、読取り部であり、カラーイメージセンサや画像処理用のＡＳＩＣ等から構成される電気回路とから構成される。２３は、ファクシミリ制御部であり、ファクシミリ用のモデムやアナログ通信回路等から構成され、ファクシミリの通信プロトコルに従ってファクシミリの送信や受信を制御する。図２では、図２（ａ）に記載の装置と、ＭＦＰ３とはネットワーク２００を介して通信している。ここで、ネットワーク２００は、ｎｅｔｗｏｒｋ８、ｉｎｔｅｒｎｅｔ、ｎｅｔｗｏｒｋ４の少なくとも一つ若しくはこれらの組み合わせにより構成されるネットワークに対応する。
【００１３】
図３は、ＰＣのソフトウェア構成の一例を示す図である。図３において、９２は、Ｅｔｈｅｒｎｅｔを制御するＥｔｈｅｒｎｅｔ制御スタックである。９１は、ＩＰ  Ｎｅｔｗｏｒｋを制御するＩＰ  Ｎｅｔｗｏｒｋ制御スタックである。９０は、ＷＳＤ（Ｗｅｂ  Ｓｅｒｖｉｃｅｓ  ｏｎ  Ｄｅｖｉｃｅｓ）を制御するＷＳＤ制御スタックである。８９は、ＩＨＶ（Ｉｎｄｅｐｅｎｄｅｎｔ  Ｈａｒｄｗａｒｅ  Ｖｅｎｄｏｒ）の独自プロトコルを制御するＩＨＶネイティブプロトコル制御スタックである。８８は、ネットワークのプラグ  アンド  プレイ（以降、Ｎ−ＰｎＰと略す場合がある）を制御するＮ−ＰｎＰ制御スタックである。
尚、ネットワーク接続デバイスに対するサポートを提供する、プラグ  アンド  プレイの一連の拡張機能としてＷｉｎｄｏｗｓ  Ｖｉｓｔａ  ＯＳに標準搭載されている機能として、Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ  Ｅｘｔｅｎｓｉｏｎｓ（ＰｎＰ−Ｘ）が存在する。しかしながら、本実施の形態ではこれと同等の機能として前記Ｎ−ＰｎＰを利用する例で説明する。８５は、デバイスドライバ群であり、ＯＳに標準で同梱されている標準ドライバ群８７とＩＨＶから提供されるＩＨＶ製ドライバ群８６とから構成される。８４は、アプリケーション／ＤＤＩインタフェースであり、Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ（ＡＰＩ）、Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ（ＤＤＩ）から構成される。８０は、アプリケーションであり、ＯＳに標準で同梱されているデバイス管理（Ｄｅｖｉｃｅ  Ｍａｎａｇｅｍｅｎｔ）である。３０は、図４にて後述する修復アプリケーションである。修復アプリケーション３０は、画像処理装置と連携するアプリケーションの一例である。４１は、図４にて後述する印刷アプリケーションである。８２は、アプリケーション群であり、デバイス管理８０、アプリケーション３０、アプリケーション４１等から構成される。デバイス管理８０は、図５（ａ）、図５（ｂ）で後述するＤｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｒｓフォルダ５００やデバイス管理画面５５０を管理・実行する。図３のＰＣ１内のソフトウェアは、図２（ａ）のＰＣ及び、図１のＰＣ１、ＰＣ２等にも搭載可能である。
【００１４】
図４は、ＰＣにおけるプリンタドライバの構成を図３とは別の視点において示す図である。図４において、５０は、ＰＣ１にインストールされているＭＦＰ３用のプリンタドライバであり、３３〜３６、３９の複数のモジュールから構成される。３０は、ＯＳ側のプリンタ設定を適切なものに変更する修復アプリケーションである。アプリケーション３０の処理については図１２、図１３にて後述する。４１は、印刷可能なアプリケーションであり、例えば、ＯＳに標準で同梱されているテキストエディタや画像閲覧アプリ等に相当する。３１は、Ｇｒａｐｈｉｃｓ  Ｄｅｖｉｃｅ  Ｉｎｔｅｒｆａｃｅ（ＧＤＩ）であり、ＯＳの一部である。３２は、プリンタキューであり、スプーラ４０の一部として構成され、印刷ジョブがキューイングされる。キューイングされた印刷ジョブは、プリンタキューフォルダに表示される。３３は、プリントプロセッサであり、印刷レイアウトの変更や印刷画像に対する特殊処理を行う。３４は、グラフィックスドライバであり、プリンタドライバの画像処理のコアとして、ＧＤＩ３１から送られて来る描画命令を基に印刷用の画像処理を行い、印刷制御コマンドを作成する。３５は、ＵＩモジュールであり、プリンタドライバのユーザインタフェースの提供及び制御を行う。３６は、ランゲージモニタであり、データの通信Ｉ／Ｆとしてデータの送受信を制御する。３９は、ステータスモニタであり、ＭＦＰ３のインクの残量や、警告、エラー等の状態を表示する。３７は、ポートモニタであり、ランゲージモニタ３６から送られて来るデータを適切なポートに対して送信したり、ＭＦＰ３から送られて来るデータを、クラスドライバ３８を介して受信したりする処理を行う。３８は、クラスドライバであり、最もポートに近いローレベルのモジュールである。クラスドライバ３８は、本実施の形態ではＷＳＤやＩＨＶの独自プロトコルのプリンタクラスのドライバに相当し、ポート（本実施の形態ではネットワークポート）を制御する。プリンタドライバ５０は、ＭＦＰ３の製造元であるＡＢＣ社製のものである。
尚、図３の８８，９０，９１，９２，８４は、ＯＳが提供するモジュールである。尚、図４のＧＤＩ３１の一部が、８４に相当する。即ち、ＧＤＩ３１は、アプリケーションにより呼び出されるインタフェースである。ＧＤＩインタフェースを介した入力をＤＤＩコマンドに変換するのが、３４である。３４、３５が、図３の８７、８８に相当する。更に８９は、図４の３７の機能に相当する機能である。但し、ＩＨＶがＯＳの拡張機能として提供可能な部分である。
【００１５】
図５は、Ｄｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｓ画面とデバイス管理画面との一例を示す図である。図５（ａ）は、Ｄｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｒｓフォルダを表す図である。図５において、５００は、Ｄｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｒｓフォルダであり、ＰＣ１上に表示され、ＰＣ１で利用できる状態となっているプリンタやＦＡＸがドライバごとにこの中に表示される。本実施の形態においては、ＸＹＺ  Ｄｅｆｇという名称のデバイス５０１とＡＢＣ  Ｋｍｍｎという名称のデバイス５０３とが利用可能なプリンタとして表示されている。デフォルトマーク５０２は、システムのデフォルトプリンタを示すもので、ＸＹＺ  Ｄｅｆｇがデフォルトに設定されている状態である。ユーザが、ＡＢＣ  Ｋｍｍｎのシンボルをマウス等でクリックすると、図５（ｂ）のようなデバイス管理画面が表示される。
【００１６】
図６は、ＭＦＰ（若しくはＰｒｉｎｔｅｒ）がネットワークやＵＳＢインタフェース等を介してＰＣに接続されたときに開始する処理の一例を示すフローチャートである。図６のフローに係るプログラム（デバイス管理８０）は、ＨＤＤ２０２に記憶されており、ＲＡＭ２０１に読み出され、ＣＰＵ２０４により実行される。このプログラム（デバイス管理８０）は、ＯＳ若しくはアプリケーションプログラムとして提供されるインストール制御プログラムとして実現される。
図６において、ＰＣ（ＰＣ１）にデバイス（ＭＦＰ３）がネットワーク４を介して接続されると処理が開始される（Ｓ１３０１）。ＰＣ１が、デバイス（ＭＦＰ３）からデバイスＩＤを取得する（Ｓ１３０２）。デバイスＩＤは、例えば「ＭＦＧ：ＡＢＣ；ＭＤＬ：Ｋｍｍｎ；ＣＬＳ：ＰＲＩＮＴＥＲ；ＣＭＤ：Ｋ４；ＤＥＳ：ＡＢＣ  Ｋｍｍｎ；」のような文字列で表されるものである。デバイスＩＤは、ＰＣ１がネットワーク４を介してＭＦＰ３から取得することができるＭＦＰ３のプリンタ機能のデバイスＩＤであり、次の情報を表す。
製造元（ＭＦＧ：）：ＡＢＣ
モデル（ＭＤＬ：）：Ｋｍｍｎ
クラス（ＣＬＳ：）：ＰＲＩＮＴＥＲ
コマンド（ＣＭＤ：）：Ｋ４（ＡＢＣ社プライベートの印刷制御用コマンド）
ディスクリプション（ＤＥＳ：）：ＡＢＣ  Ｋｍｍｎ
【００１７】
次に、デバイス管理８０が、ドライバ（プリンタドライバ５０及びＦＡＸドライバ１５０）が未だインストールされていないか判別する（Ｓ１３０３）。ステップＳ１３０３でインストールされていないと判別された場合（Ｓ１３０３−ＮＯ）、デバイス管理８０が、ドライバ（プリンタドライバ５０及びＦＡＸドライバ１５０）をインストールする（Ｓ１３０４）。ドライバ（プリンタドライバ５０及びＦＡＸドライバ１５０）が正しくインストールされると、図５（ａ）に示すＤｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｒｓフォルダ５００にプリンタが登録された状態となる。
ステップＳ１３０３において、ドライバ（プリンタドライバ５０及びＦＡＸドライバ１５０）が既にインストールされていると判別された場合（Ｓ１３０３−ＮＯ）、ステップＳ１３０５へ進む。
そして、Ｓ１３０５では、デバイス管理８０は、デバイス管理制御用ファイル（図７）が未だインストールされていないか判別する。ステップＳ１３０５において、インストール済みのデバイス管理制御用ファイルがドライバ（プリンタドライバ５０及びＦＡＸドライバ１５０）と整合しているか否かは、デバイスＩＤに含まれる製造元（ＭＦＧ：）、モデル（ＭＤＬ：）情報を基に判定される。
ステップＳ１３０５でインストールされていないと判別された場合（Ｓ１３０５−ＮＯ）、デバイス管理８０は、図８で後述するデバイス管理制御用ファイルのインストールの処理を実行し、処理を完了する（Ｓ１３０６）。ステップＳ１３０５において、デバイス管理制御用ファイルが既にインストールされていると判別された場合（Ｓ１３０５−ＹＥＳ）、デバイス管理８０は、図６に示す処理を終了する（Ｓ１３０７）。
【００１８】
図８は、デバイス管理用制御ファイルのインストールの処理の一例を示すフローチャートである。図８のフローに係るプログラム（デバイス管理８０）は、ＨＤＤ２０２に記憶されており、ＲＡＭ２０１に読み出され、ＣＰＵ２０４により実行される。このプログラムは、ＯＳ若しくはアプリケーションプログラムとして提供されるインストール制御プログラムとして実現される。
図６のステップＳ１３０６において、デバイス管理用制御ファイルのインストールの処理が実行されると、デバイス管理８０が、図８の処理を開始する（Ｓ１４０１）。まず、デバイス管理８０が、ネットワーク４を介して接続されているデバイス（ＭＦＰ３）のデバイスＩＤを確認する（Ｓ１４０２）。
デバイス管理８０は、このデバイスＩＤに含まれている製造元（ＭＦＧ：）、モデル（ＭＤＬ：）情報を基に、デバイス管理８０がＰＣ１に接続されているデバイス（ＭＦＰ３）用のデバイス管理制御用ファイルを検索する（Ｓ１４０３）。図７のデバイス管理制御用ファイル８００には、＜ｄｍ：ｍａｎｕｆａｃｔｕｒｅｒ＞要素８０１、＜ｄｍ：ｍｏｄｅｌ＞要素８０２にデバイス（ＭＦＰ３）に対応した製造元（ＭＦＧ：）「ＡＢＣ」、モデル（ＭＤＬ：）「Ｋｍｍｎ」が記載されている。デバイス管理制御用ファイルは、デバイス管理制御用データの一例である。デバイス管理８０は、要素８０１、要素８０２に記載の情報を基に、Ｗｅｂサーバ９上又はＰＣ１に挿入されたＣＤ−ＲＯＭ１０に格納されているデバイス管理制御用ファイルからデバイス（ＭＦＰ３）用のデバイス管理制御用ファイルを検索する。
デバイス管理制御用ファイル１１又はデバイス管理制御用ファイル１２が見つかったか否かをデバイス管理８０が、判断する（Ｓ１４０４）。ステップＳ１４０４にて見つかったと判断した場合には、デバイス管理８０が、そのデバイス管理制御用ファイルをＰＣ１のＨＤＤ２０２内の所定の位置に保存し（Ｓ１４０５）、インストール処理を終了する（Ｓ１４０６）。本実施の形態においては、デバイス（ＭＦＰ３）に対応したデバイス管理制御用ファイル８００が検出され、インストールされたものとする。ステップＳ１４０４において、デバイス管理制御用ファイル１１やデバイス管理制御用ファイル１２が見つからなかった場合、デバイス管理８０は、デバイス管理制御用ファイルをインストールせずに、処理を終了する（Ｓ１４０６）。
【００１９】
図９は、デバイス管理画面の起動処理の一例を示すフローチャートである。図９のフローに係るプログラムは、ＨＤＤ２０２に記憶されており、ＲＡＭ２０１に読み出され、ＣＰＵ２０４により実行される。
図１０は、デバイス管理と修復アプリケーションとの機能構成の一例を示す図である。図１０は、図３の一部を詳細に説明した図である。デバイス管理８０は、表示部９０１、デバイス管理制御部９０２、リンク実行部９０３、デバイス管理制御用ファイル読取り部９０４、デバイス管理制御用ファイル格納部９０５からなる。デバイス管理制御用ファイル格納部９０５には、図８のフローのステップＳ１４０５で保存されたデバイス管理制御用ファイル８００が保持されている。
修復アプリケーション３０は、起動元判断部９０６、アプリケーション制御部９０７、接続デバイス検索部９０８、修復処理実行部９０９、修復項目判定部９１０により構成される。デバイス管理画面５５０は、図５（ａ）に示すＤｅｖｉｃｅ  ａｎｄ  Ｐｒｉｎｔｅｒｓフォルダ５００内のデバイスがユーザ等によって画面を介して選択されることにより起動・表示される。ここでは図５（ａ）のデバイス５０３が選択され、図５（ｂ）に示すデバイス管理画面５５０が起動された場合の例について説明する。
Ｄｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｒｓフォルダ５００内のデバイス５０３が選択されると、デバイス管理８０が、デバイス管理画面の起動の処理を開始する（Ｓ７０１）。
次にステップＳ７０２にて、デバイス管理制御部９０２が、Ｄｅｖｉｃｅ  ａｎｄ  Ｐｒｉｎｔｅｒｓフォルダ５００にて選択されたデバイス名を取得する。本実施の形態においては、デバイス５０３が選択されているので、デバイス５０３を制御対象のデバイスとして「ＡＢＣ  Ｋｍｍｎ」というデバイス名が取得される。
次に、デバイス管理制御用ファイル読取り部９０４が、ステップＳ７０２で取得されたデバイス名に基づいて、デバイス管理制御用ファイルをロードする（Ｓ７０３）。より具体的に説明すると、デバイス管理制御用ファイル読取り部９０４は、ステップＳ７０２で取得されたデバイス名に基づいて、図８のステップＳ１４０５で保存されたデバイス管理制御用ファイル８００をロードする。そして、デバイス管理制御用ファイル読取り部９０４が、図７に示すデバイス管理制御用ファイル８００の記述内容を解析し、必要な情報を取り出す（以下、単にパースするという）（Ｓ７０４）。デバイス管理制御用ファイル読取り部９０４によりパースされたデータの内容に従い、デバイス管理制御部９０２が、表示部９０１を介してデバイス管理画面５５０を表示するよう制御（表示制御）し（Ｓ７０５）、図９に示す処理を終了する（Ｓ７０６）。
【００２０】
図７に示すデバイス管理制御用ファイル８００には、前述したインストールに必要な＜ｄｍ：ｍａｎｕｆａｃｔｕｒｅｒ＞要素８０１、＜ｄｍ：ｍｏｄｅｌ＞要素８０２の他にデバイス管理画面５５０を構成するための情報が記載されている。
デバイス管理画面５５０の上部には、デバイスのアイコン５５１、デバイス名５５２、製造元情報５５３が表示される。デバイスのアイコン５５１のデータは、デバイス管理制御用ファイル格納部９０５の一部として保持されている（不図示）。また、デバイス名５５２は、Ｄｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｒｓフォルダ５００のデバイス５０３のデバイス名称が、製造元情報５５３は、＜ｄｍ：ｍａｎｕｆａｃｔｕｒｅｒ＞要素８０１に指定された文字列が表示される。
デバイス管理画面５５０の下部には、デバイス５０３に関連付けられた機能へのリンクが表示されている。プリンタキューボタン５５４、印刷設定ボタン５５５、インク残量ボタン５５６、デバイスステータスボタン５５７、アプリケーションＡ起動ボタン５５８が表示される。図７の＜ｄｍ：ｆｕｎｃｔｉｏｎｓ＞要素８０３に、それぞれのボタン及び機能を表す５つの＜ｄｍ：ｆｕｎｃｔｉｏｎ＞要素がセットされている。
まず、１つ目の＜ｄｍ：ｆｕｎｃｔｉｏｎ＞要素を説明する。＜ｄｍ：ｎａｍｅ  ｘｍｌ：ｌａｎｇ＝"ｅｎ−ＵＳ"＞ＯｐｅｎＰｒｉｎｔｅｒＱｕｅｕｅ＜／ｄｍ：ｎａｍｅ＞要素８０５には、プリンタキューボタン５５４上に表示される「Ｏｐｅｎ  Ｐｒｉｎｔｅｒ  Ｑｕｅｕｅ」という文字列がセットされている。＜ｄｍ：ｅｘｅｃｕｔｅ＞ｏｐｅｎＰｒｉｎｔｅｒＱｕｅｕｅ＜／ｄｍ：ｅｘｅｃｕｔｅ＞要素８０６には、プリンタキューフォルダを表示する機能（プログラム）を表すｏｐｅｎＰｒｉｎｔｅｒＱｕｅｕｅというコードがセットされている。ここでは図示しないが、プリンタキューフォルダは印刷ジョブの状態を表示する機能を有する。ステップＳ７０５において、＜ｄｍ：ｆｕｎｃｔｉｏｎ＞要素がデバイス管理制御用ファイル読取り部９０４によりパースされ、表示部９０１により図５（ｂ）に示すプリンタキューボタン５５４に要素８０５に記載の文字列が表示される。プリンタキューボタン５５４が押下されると、要素８０６に記載の機能が実行され、その結果、プリンタキューフォルダが表示される。
【００２１】
次に、２つ目の＜ｄｍ：ｆｕｎｃｔｉｏｎ＞要素を説明する。＜ｄｍ：ｎａｍｅ  ｘｍｌ：ｌａｎｇ＝"ｅｎ−ＵＳ"＞Ｐｒｉｎｔｉｎｇ  Ｐｒｅｆｅｒｅｎｃｅｓ＜／ｄｍ：ｎａｍｅ＞要素８０７には、印刷設定ボタン５５５上に表示される「Ｐｒｉｎｔｉｎｇ  Ｐｒｅｆｅｒｅｎｃｅｓ」という文字列がセットされている。＜ｄｍ：ｅｘｅｃｕｔｅ＞ｐｒｉｎｔｉｎｇＰｒｅｆｅｒｅｎｃｅｓ＜／ｄｍ：ｅｘｅｃｕｔｅ＞要素８０８には、印刷設定ダイアログを表示する機能（プログラム）を表すｐｒｉｎｔｉｎｇＰｒｅｆｅｒｅｎｃｅｓというコードがセットされている。ここでは図示しないが、印刷設定ダイアログとは、プリンタドライバ５０のＵＩモジュール３５が有する印刷設定画面を示す。ステップＳ７０５において＜ｄｍ：ｆｕｎｃｔｉｏｎ＞要素がデバイス管理制御用ファイル読取り部９０４によりパースされ、表示部９０１により図５（ｂ）に示すプリンタキューボタン５５４に要素８０７に記載の文字列が表示される。印刷設定ボタン５５５が押下されると、要素８０８に記載の機能が実行され、その結果、印刷設定ダイアログが表示される。
３つ目、４つ目の要素の説明については、ここでは説明を省略する。
次に、５つ目の＜ｄｍ：ｆｕｎｃｔｉｏｎ＞要素を説明する。＜ｄｍ：ｎａｍｅ  ｘｍｌ：ｌａｎｇ＝"ｅｎ−ＵＳ"＞Ｌａｕｎｃｈ  Ａｐｐｌｉｃａｉｔｏｎ  Ａ＜／ｄｍ：ｎａｍｅ＞要素８１３には、以下の情報がセットされている。つまり、アプリケーションＡ起動ボタン５５８上に表示される「Ｌａｕｎｃｈ  Ａｐｐｌｉｃａｉｔｏｎ  Ａ」という文字列がセットされている。＜ｄｍ：ｅｘｅｃｕｔｅ＞％ＰｒｏｇｒａｍＦｉｌｅｓ％￥ＡＢＣ￥ＡｐｐｌｉｃａｔｉｏｎＡ．ｅｘｅ／ｄｅｖｍｎｇ  ／ｄｅｖｎａｍｅ＜／ｄｍ：ｅｘｅｃｕｔｅ＞要素８１４には、以下の情報がセットされている。つまり、図１１（ａ）に示すアプリケーションＡを起動する機能を表す「％ＰｒｏｇｒａｍＦｉｌｅｓ％￥ＡＢＣ￥ＡｐｐｌｉｃａｔｉｏｎＡ．ｅｘｅ／ｄｅｖｍｎｇ／ｄｅｖｎａｍｅ」というコードがセットされている。ステップＳ７０５において＜ｄｍ：ｆｕｎｃｔｉｏｎ＞要素がデバイス管理制御用ファイル読取り部９０４によりパースされ、表示部９０１により図５（ｂ）に示すアプリケーションＡ起動ボタン５５８に要素８０７に記載の文字列が表示される。アプリケーションＡ起動ボタン５５８が押下されると、要素８１４に記載の機能が実行され、その結果、図１１（ａ）のアプリケーションＡの画面６００が表示される。アプリケーションＡは、図１０における修復アプリケーション３０に相当する。
【００２２】
図１２は、アプリケーションが起動したときの処理の一例を示すフローチャートである。図１２のフローに係るプログラム（修復アプリケーション３０）は、ＨＤＤ２０２に記憶されており、ＲＡＭ２０１に読み出され、ＣＰＵ２０４により実行される。
デバイス管理画面５５０のアプリケーションＡ起動ボタン５５８がユーザ等によって押下されると、図１０のデバイス管理８０内のデバイス管理制御部９０２がリンク実行部９０３を介して図７の要素８１４の内容を実行する。このことにより、アプリケーションＡの起動処理が実行される（Ｓ１００１）。
次に、アプリケーション制御部９０７が、要素８１４に記載の内容を起動元判断部９０６に渡す（Ｓ１００２）。図７の例で要素８１４は、デバイス管理画面からの起動を示す識別情報である「／ｄｅｖｍｎｇ」とデバイス名を示す「／ｄｅｖｎａｍｅ」とが指定されている。「／ｄｅｖｎａｍｅ」は、アプリケーション３０の起動時にリンク実行部９０３が図５（ａ）のＤｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｒｓフォルダ５００で管理されているデバイス名称に置き換える。本実施の形態においては、デバイス管理画面５５０の起動時にデバイス５０３が選択されているため、ステップＳ１００２にて図５のアイコン名として設定されている「ＡＢＣ  Ｋｍｍｎ」というデバイス名称（アイコン名称）をＯＳが取得する。そして、ＯＳは、取得したデバイス名称（アイコン名称）を起動元判断部９０６に渡す。
次に、接続デバイス検索部９０８が、接続されているプリンタを検索する（Ｓ１００３）。ステップＳ１００４にて接続デバイス検索部９０８は、プリンタが少なくとも一台は接続されているか確認する。接続されているプリンタが一台もない場合は、修復対象のプリンタが特定できないため、接続デバイス検索部９０８は、修復したいプリンタを接続するよう図１１（ｃ）に示すような画面を表示し通知を行う（Ｓ１００５）。
【００２３】
ステップＳ１００４にて、少なくとも一台のプリンタとの接続が確認すると、接続デバイス検索部９０８は、処理をステップＳ１００６へ進める。ステップＳ１００６では接続デバイス検索部９０８が、プリンタが複数台接続されているかどうかの確認を行う。接続プリンタが一台のみの場合、接続デバイス検索部９０８は、修復対象のプリンタを決定する（Ｓ１００７）。
ステップＳ１００６にて、接続デバイスが複数台であった場合は、起動元判断部９０６が、起動元がデバイス管理画面か否かを、起動時の引数を基に判断する（Ｓ１００８）。本実施の形態においては、要素８１４にて「／ｄｅｖｍｎｇ」が指定されて、アプリケーション３０が起動されているため、起動元判断部９０６は、ステップＳ１００８にてデバイス管理画面からの起動と判断する。例えば、デバイス管理画面以外からアプリケーション３０が起動された場合、「／ｄｅｖｍｎｇ」が引数に指定されていない。この場合、起動元判断部９０６は、ステップＳ１００８ではデバイス管理画面からの起動ではないと判断する。ステップＳ１００８にて起動元判断部９０６が、デバイス管理画面以外からの起動だと判断した場合、アプリケーション３０は、修復したいプリンタ以外のプリンタとの接続を切るよう図１１（ｄ）に示すような画面を表示し通知を行う（Ｓ１００９）。
ステップＳ１００８にて、起動元判断部９０６が、デバイス管理画面からの起動だと判断した場合は、修復したいプリンタは決定しているとみなし、アプリケーション３０の処理をステップＳ１０１０に進める。ステップＳ１０１０にて、起動元判断部９０６は、起動元のデバイス管理画面に関連付けられたデバイス名称と、接続デバイス検索部９０８が取得したデバイス名称と、が一致するかを確認する。デバイス名称が一致した場合、アプリケーション３０は、修復すべきプリンタを決定する（Ｓ１００７）。デバイス名称が一致しない場合、アプリケーション３０は、デバイス管理画面で関連付けられたデバイス名称のプリンタを接続するよう図１１（ｅ）に示すような画面を表示し通知を行う（Ｓ１０１１）。本実施の形態においては、デバイス管理画面で関連付けられたデバイス名称とは、プリンタのデバイス名称を指すが、これはプリンタのシリアルナンバーのような識別子であってもよい。この際、識別子をデバイス管理画面が保持し、アプリケーション３０の起動時のパラメータとしてアプリケーション３０に識別子を渡す必要がある。
【００２４】
次にステップＳ１０１２にて起動元判断部９０６は、起動元はデバイス管理画面であるかを確認する。起動元がデバイス管理画面でない場合、アプリケーション３０は、図１１（ａ）に示すような規定の修復画面を表示する（Ｓ１０１３）。ここで、図１１（ａ）には、アプリケーション３０が提供する各機能に対応する、ユーザが選択可能な項目（選択項目）が複数、表示されている。図１１（ａ）の例では、例えば、アプリケーション３０は、「不要な印刷ジョブを削除する。」や、「プリンタをオンラインに変更する。」等の選択項目が表示されている。一方、起動元がデバイス管理画面である場合、アプリケーション３０は、規定の修復画面から不要な修復項目（選択項目）を間引き（Ｓ１０１４）、図１１（ｂ）に示すような画面を表示する（Ｓ１０１３）。デバイス管理画面から各種アプリケーションを起動する環境では、そのアプリケーションでユーザが使用したいプリンタアイコンは特定されている。そのため、修復アプリケーション３０にて、不要なプリンタアイコンを削除する処理を行うことは無駄である。また、図１１（ａ）６０２の不要なアイコンを削除する選択肢を表示することはユーザにとって不要である。よって、ステップＳ１０１４で修復項目判定部９１０は、デバイス管理画面からの起動の際には不要な修復項目を間引く。例えば、修復項目判定部９１０は、不要なアイコンを削除する修復項目（図１１（ａ）６０２）は不要な項目とみなす。デバイス管理画面からアプリケーションを使用する場合、ユーザが使用したいプリンタアイコンが特定されている。したがって、修復項目判定部９１０は、通常使うプリンタに設定する修復項目（図１１（ａ）６０１）も不要な項目とみなし、間引く対象である項目としてもよい。ここで、間引く対象の項目は、アプリケーションごとに予め設定ファイル等に定めるようにしてもよい。尚、設定ファイル等を修正可能とすることで、間引く対象の項目を修正可能とする構成としてもよい。
ステップＳ１０１３にて図１１（ａ）もしくは図１１（ｂ）に示すような修復項目を表示する画面を表示し、アプリケーション３０は、修復機能の起動処理を終了する（Ｓ１０１５）。
デバイス管理画面がアプリケーション３０を起動する際に、デバイス管理画面が起動元であることを通知することによって、アプリケーション３０は図１１（ｅ）に示すような適切な通知を行うことが可能となる。更に、アプリケーション３０で提供している規定の機能に対応する修復項目のうち、所定の不要な修復項目を削除し、適切な機能のみをユーザに提供することが可能となる。
【００２５】
図１３は、アプリケーションから修復処理を実行したときの処理を表すフローチャートである。図１３のフローに係るプログラムは、ＨＤＤ２０２に記憶されており、ＲＡＭ２０１に読み出され、ＣＰＵ２０４により実行される。
アプリケーション３０上で図１１（ａ）の修復実行ボタン６２０又は、図１１（ｂ）の修復実行ボタン６２１がユーザ等によって選択されると、アプリケーション制御部９０７が修復処理を実行する（Ｓ１１０１）。まず、アプリケーション制御部９０７は、図１２のステップＳ１０１３で表示した修復画面で選択されている修復項目を取得する（Ｓ１１０２）。ステップＳ１１０２で取得した修復項目に従って、アプリケーション制御部９０７は、修復処理を実行する（Ｓ１１０３）。アプリケーション制御部９０７は、修復処理の結果（例えば、修復処理が成功したか、失敗したか）を例えばＲＡＭ２０１等に記憶するものとする。また、例えば、ＨＤＤ２０２には権限と、前記権限で可能な処理と、が対応付けられたデータが記憶されているものとする。例えば、アプリケーション制御部９０７は、ログインユーザの権限に基づき、前記データを検索し、前記権限で可能な処理を特定し、アプリケーション制御部９０７が実行しようとしている処理（修復処理）が実行可能か否かを判断する。そして、アプリケーション制御部９０７は、ログインユーザの権限で修復処理が実行可能でないと判断した場合、修復処理が失敗した旨と、失敗した原因（ここでは、権限不足で失敗した旨）と、をＲＡＭ２０１等に記憶する。また、例えば、アプリケーション制御部９０７は、修復処理に関わるＯＳ提供のＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を実行した際の戻り値から、修復処理が権限不足で失敗したことを判断してもよい。
【００２６】
次にステップＳ１１０４にてアプリケーション制御部９０７は、ＲＡＭ２０１等に記憶されている前記修復処理の結果に基づき、修復処理が成功したかどうかを確認する。修復処理が成功した場合、アプリケーション３０は、修復処理が成功した旨の修復結果を表示（Ｓ１１０５）した後、修復処理を終了（Ｓ１１１０）する。修復処理が失敗した場合、起動元判断部９０６は、起動元がデバイス管理画面であるかを確認する（Ｓ１１０６）。起動元がデバイス管理画面でない場合、アプリケーション３０は、修復処理が失敗した旨の修復結果を表示（Ｓ１１０５）した後、修復処理を終了する（Ｓ１１１０）。起動元がデバイス管理画面である場合、アプリケーション制御部９０７は、ＲＡＭ２０１等に記憶された情報に基づき、修復処理が失敗した原因が操作権限不足かどうかを確認する（Ｓ１１０７）。Ｓ１１０７にて操作権限不足であると判断した場合、アプリケーション制御部９０７は、処理をＳ１１０８に進める。アプリケーション制御部９０７は、ユーザの権限を昇格してデバイス管理画面からアプリケーション３０を起動することを指示する情報を情報処理装置内のアプリケーション制御用情報格納部９２０に記録する（Ｓ１１０８）。本実施の形態において、アプリケーション制御用情報格納部９２０は情報処理装置内のＨＤＤ２０２であり、例えばＷｉｎｄｏｗｓ  ＯＳのレジストリを想定している。その後、アプリケーション３０は、デバイス管理画面から修復機能を再度実行するよう促すことを含む修復結果を表示（Ｓ１１０５）した後、修復処理を終了する（Ｓ１１１０）。
【００２７】
ステップ１１０６にて、起動元判断部９０６が、起動元を判断することにより、アプリケーションＡは起動元がデバイス管理画面のときのみデバイス管理画面に特化した処理を行うことが可能となる。一方、ステップＳ１１０７にて操作権限不足でないと判定した場合、アプリケーション制御部９０７は、このユーザの環境においてデバイス管理画面から起動された修復アプリケーション３０は動作できないと判断する。そのため、Ｓ１１０９にてアプリケーション制御部９０７は、アプリケーションＡの起動ボタンを削除することを指示する情報を情報処理装置内のアプリケーション制御用情報格納部９２０に記録する。その後、アプリケーション３０は、修復処理が失敗した旨の修復結果を表示（Ｓ１１０５）した後、修復処理を終了する（Ｓ１１１０）。
【００２８】
図１４に示すデバイス管理制御用ファイル１２００は、図７で示したデバイス管理制御用ファイル８００の一部に相当する。デバイス管理制御用ファイル１２００には、デバイス管理画面５５０又は、デバイス管理画面１５００を構成するための情報が記載されている。デバイス管理８０がデバイス管理画面５５０又はデバイス管理画面１５００のどちらを表示するかは、ステップ１１０８でアプリケーション制御用情報格納部９２０に記録された情報に従う。この表示を判断する流れについて説明する。
デバイス管理制御用ファイル１２００内の＜ｄｍ：ｒｅｑｕｅｓｔ＞要素１２０１にはデバイス管理画面５５０にアプリケーションＡ起動ボタン５５８を表示する条件が記載されている。アプリケーション制御用情報格納部９２０に記録された情報があるかどうかが、「ｅｘｉｓｔ」属性で示されており、１２０１においては属性値として「"ＦＡＬＳＥ"」が記載されている。つまり、１２０１の＜ｄｍ：ｒｅｑｕｅｓｔ  ｅｘｉｓｔ＝"ＦＡＬＳＥ"＞は、アプリケーション制御用情報格納部９２０に記録された情報が存在しないという条件を示している。アプリケーション制御用情報格納部９２０に記録された情報が存在しない場合は、デバイス管理画面５５０の「Ｌａｕｎｃｈ  Ａｐｐｌｉｃａｉｔｏｎ  Ａ」ボタンが表示される。この場合に「Ｌａｕｎｃｈ  Ａｐｐｌｉｃａｉｔｏｎ  Ａ」ボタンが押され実行される処理については図１２、図１３で前述したとおりである。
一方、ステップ１１０８でアプリケーション制御用情報格納部９２０に記録された情報が存在した場合、１２０１で示す条件には合致しない。デバイス管理制御用ファイル１２００に示す次の＜ｄｍ：ｆｕｎｃｔｉｏｎ＞には、別の条件が１２０２にて記載されている。＜ｄｍ：ｒｅｑｕｅｓｔ＞要素１２０２には「ｅｘｉｓｔ」属性の属性値に「"ＴＲＵＥ"」が記載されているため、アプリケーション制御用情報格納部９２０に記録された情報が必須であることを示している。また、１２０２において「ｅｌｅｖａｔｉｏｎ」属性の属性値に「"ａｄｍｉｎ"」が記載されている。これは、ステップ１１０８でアプリケーション制御用情報格納部９２０に記録された情報には、管理者権限で起動させるという意味が含まれているという条件を示している。つまり、１２０２の＜ｄｍ：ｒｅｑｕｅｓｔ  ｅｘｉｓｔ＝"ＴＲＵＥ"  ｅｌｅｖａｔｉｏｎ＝"ａｄｍｉｎ"＞は、ステップ１１０８でアプリケーション制御用情報格納部９２０に記録された情報が管理者権限で起動せよとの記載があれば、条件が成立する。要素１２０２の条件が成立すると、図１５で示すデバイス管理画面１５００が表示される。
【００２９】
デバイス管理画面１５００のアプリケーションＡの起動ボタン１５０１には、「Ｌａｕｎｃｈ  Ａｐｐｌｉｃａｔｉｏｎ  Ａ（Ａｄｍｉｎｉｓｔｒａｔｏｒ  ｒｉｇｈｔｓ  ｉｓ  ｎｅｃｅｓｓａｒｙ）」という文字列がセットされる。このため、ユーザは管理者権限での起動が必要になる機能だということを明確に認識できる。また、１５０２にはアプリケーションＡを簡略的に示すアイコンが表示されるが、このアイコン１５０２にも管理者権限での起動が必要になる機能だということを示すアイコンに変更することも可能である。このため、管理者権限が不要な場合はアプリケーションＡを通常権限で起動し、管理者権限が必要な場合はアプリケーションＡを管理者権限で起動することが可能となり、デバイス管理画面からのアプリケーション起動処理を最適化することが可能となる。アプリケーションＡの起動ボタン１５０１がユーザによって押下される。すると、デバイス管理８０は、要素１２０３に記載の「％ＰｒｏｇｒａｍＦｉｌｅｓ％ＡＢＣ￥ＡｐｐｌｉｃａｔｉｏｎＡ．ｅｘｅ  ／ｄｅｖｍｎｇ  ／ｄｅｂｎａｍｅ  ／ａｄｍｉｎ」というコードに従って、アプリケーション３０を起動する。このとき、要素１２０３には「／ａｄｍｉｎ」という指示がされているため、リンク実行部９０３は、管理者権限でアプリケーション３０を起動する。
また、ステップＳ１１０７にて失敗原因が権限不足ではないと判断した場合、ユーザの環境では修復処理が行えないと判断し、デバイス管理画面１５００からアプリケーションＡの起動ボタンを削除することも可能である。ステップＳ１１０７にて失敗原因が権限不足でない場合、アプリケーション３０は、アプリケーション制御用情報格納部９２０にアプリケーションを表示しない設定を記録（Ｓ１１０９）する。このとき、アプリケーション３０は、アプリケーション制御用情報格納部９２０に情報が既に存在していた場合、前記情報をアプリケーション制御用情報格納部９２０から削除しておく。
【００３０】
デバイス管理画面の起動処理において、＜ｄｍ：ｒｅｑｕｅｓｔ＞要素１２０４には「ｅｘｉｓｔ」属性の属性値に「"ＴＲＵＥ"」が記載されているため、アプリケーション制御用情報格納部９２０に記録された情報が必須であることを示している。また、１２０４において「ｔａｓｋｄｉｓａｂｌｅ」属性の属性値に「"ＴＲＵＥ"」が記載されている。これは、アプリケーション制御用情報格納部９２０に記録された情報は、アプリケーションＡの起動ボタンは非表示にせよという情報を示している。つまり、１２０４の＜ｄｍ：ｒｅｑｕｅｓｔ  ｅｘｉｓｔ＝"ＴＲＵＥ"  ｔａｓｋｄｉｓａｂｌｅ＝"ＴＲＵＥ"＞は、アプリケーション制御用情報格納部９２０に記録された情報にアプリケーションＡの起動ボタンは削除せよとの記載があれば、条件が成立する。要素１２０４の条件が成立すると、表示部９０１は、図１５で示すデバイス管理画面１５１０を表示する。デバイス管理画面１５１０には１５１１で示すようにアプリケーションＡの起動ボタンは存在しない。
更に、ステップ１１０８でアプリケーション制御用情報格納部９２０に記録する情報を、現在、ＰＣ１にログインしているユーザの情報として、ユーザごとの記憶領域に記録すると、ユーザごとにデバイス管理画面の表示を切り替えることが可能となる。ユーザごとの記憶領域とは、例えばレジストリの「ＨＫＥＹ＿ＣＵＲＲＥＮＴ＿ＵＳＥＲ」で示す領域を指す。このような構成とすることによって、例えば、デバイス管理８０は、管理者権限への昇格が不要なユーザにはデバイス管理画面５５０を表示し、管理者権限への昇格が必要なユーザにはデバイス管理画面１５００を表示することが可能となる。
【００３１】
＜第二の実施の形態＞
第一の実施の形態ではプリンタ設定を適切なものに変更する修復アプリケーションを例にしたが、本実施の形態ではデバイス管理から、各種印刷物を作成、出力する印刷アプリケーションを起動する形態について説明する。前記印刷アプリケーションは後述するように、ユーザ操作に従って、単葉写真、アルバム、ＤＶＤ／ＣＤラベル、カレンダーの各印刷物の何れかを印刷する機能を持つものである。
本実施の形態における周辺装置制御システムのシステム構成は第一の実施の形態における図１と同等である。またＰＣ、プリンタのハードウェア構成は図２、ＰＣのソフトウェア構成は図３、ＰＣにおけるプリンタドライバの構成は図４とそれぞれ同等であるため、これらについての説明は省略する。ただし本実施の形態では、アプリケーションＡ  ３０は後述する印刷アプリケーション１７００を指すものとする。
本実施の形態においても図５（ａ）の形式のＤｅｖｉｃｅｓ  ａｎｄ  Ｐｒｉｎｔｅｒｓフォルダ５００が情報処理装置のＬＣＤ２０６に表示され、情報処理装置で利用できる状態になっているプリンタやＦＡＸがドライバごとにこの中に表示される。この内ＡＢＣ  Ｋｍｍｎという名称のデバイスのシンボル５０３をユーザ等がマウス等でクリックすると、図５（ｂ）に示すデバイス管理画面５５０が表示される。
デバイス接続時の動作、デバイス管理制御用ファイルインストール処理、及びデバイス管理画面起動処理のフローチャートはそれぞれ図６、図８及び図９と同等であるため、これらについても説明は省略する。
【００３２】
ただし本実施の形態ではデバイス管理制御用ファイルとして図１６に示すデバイス管理制御用ファイル１６００を用いる。図１６は、本実施の形態におけるデバイス管理制御用ファイルの一部を示した図である。デバイス管理制御用ファイル１６００は、第一の実施の形態の図１４に示されたデバイス管理制御用ファイル１２００と同様、＜ｄｍ：ｒｅｑｕｅｓｔ＞要素１６０１、１６０４を含む。要素１６０１の「ｐｈｏｔｏｐｒｉｎｔ」属性、要素１６０４の「ａｌｂｕｍ」属性が共に属性値"ＴＲＵＥ"となっている。これは後述する印刷アプリケーション終了処理で記録される、アプリケーション制御用情報「ｐｈｏｔｏｐｒｉｎｔ」又は「ａｌｂｕｍ」がそれぞれ存在するという条件を示しており、これらの情報の有無に従って表示が切り替わる。初期状態ではアプリケーション終了処理にて記録されるアプリケーション制御用情報は何れも存在しておらず、＜ｄｍ：ｎａｍｅ＞要素１６０２、１６０５に対応するボタンは共に表示されない。一方＜ｄｍ：ｎａｍｅ＞要素１６０７には先行する＜ｄｍ：ｒｅｑｕｅｓｔ＞要素がないため、対応する「Ｌａｕｎｃｈ  Ａｐｐｌｉｃａｔｉｏｎ  Ａ」ボタン５５８は、常時、表示される。その結果、デバイス管理画面は前述のように図５（ｂ）に示す５５０の形式で表示される。尚、本実施の形態では「Ａｐｐｌｉｃａｔｉｏｎ  Ａ」は後述する印刷アプリケーション１７００を指すものとする。
＜ｄｍ：ｅｘｅｃｕｔｅ＞要素１６０３、１６０６、１６０８には、＜ｄｍ：ｎａｍｅ＞要素１６０２、１６０５、１６０７に対応するボタンが押下された際に実行されるコードがそれぞれ記載されている。＜ｄｍ：ｅｘｅｃｕｔｅ＞要素１６０３、１６０６、１６０８に記載されたコードの内、「％ＰｒｏｇｒａｍＦｉｌｅｓ％￥ＡＢＣ￥ＡｐｐｌｉｃａｔｉｏｎＡ．ｅｘｅ」は、印刷アプリケーション１７００の実行モジュールの所在を指定している。「／ｄｅｖｍｎｇ」は、デバイス管理画面から起動されたことを示す第１のコマンドラインオプションである。要素１６０３における「／ｐｈｏｔｏ」及び要素１６０６における「／ａｌｂｕｍ」は、印刷アプリケーション１７００中のどの機能を実行するかを指定する機能識別情報の一例である第２のコマンドラインオプションである。要素１６０８には、どの機能を実行するかを指定する前記第２のコマンドラインオプションは含まれない。「／ｄｅｖｎａｍｅ」は、デバイス名を示し、第一の実施の形態と同様、印刷アプリケーション１７００の起動時に実際のデバイス名称に置き換えられる。
【００３３】
図１７は、デバイス管理と印刷アプリケーションとの機能構成の一例を示す図である。デバイス管理８０の構成は第一の実施の形態の図１０に示されるものと同等である。印刷アプリケーション１７００は、起動元判断部１７０６、アプリケーション制御部１７０７、ＵＩ制御部１７０８、編集処理部１７０９、印刷処理部１７１０により構成される。また、アプリケーション制御部１７０７は、アプリケーション終了処理時にアプリケーション制御用情報をアプリケーション制御用情報格納部９２０へ書き込む。
以下、図１８のフローチャートを用いて印刷アプリケーションの起動処理について説明する。図１８のフローに係るプログラム（印刷アプリケーション１７００）は、ＨＤＤ２０２に記憶されており、ＲＡＭ２０１に読み出され、ＣＰＵ２０４により実行される。
デバイス管理画面５５０のアプリケーションＡ起動ボタン５５８がユーザ等によって押下されると、図１７のデバイス管理８０内のデバイス管理制御部９０２がリンク実行部９０３を介して図１６の要素１６０８の内容を実行する。このことによって、アプリケーションＡの起動処理が実行される（Ｓ１８０１）。
次に、アプリケーション制御部１７０７は、印刷アプリケーション１７００の起動元及び起動機能を示す情報として要素１６０８に記載の内容を取得し、ＲＡＭ２０１中の印刷アプリケーション１７００が管理する領域へ格納する（Ｓ１８０２）。そして、アプリケーション制御部１７０７は、取得した内容の中にどの機能を実行するかを指定する前記第２のコマンドラインオプションが含まれるかどうかを判定する（Ｓ１８０３）。要素１６０８には前記第２のコマンドラインオプションは含まれないため、アプリケーション制御部１７０７は、ステップＳ１８０４へ進む。
【００３４】
Ｓ１８０４ではアプリケーション制御部１７０７は、要素１６０８の内容を起動元判断部１７０６に渡す。起動元判断部１７０６は、要素１６０８の内容中にデバイス管理画面からの起動を示す前記第１のコマンドラインオプションが含まれるかどうかを判定する。要素１６０８には前記第１のコマンドラインオプションが含まれているため、起動元判断部１７０６は、デバイス管理画面からの起動と判定し、ステップＳ１８０５へ進む。
ステップＳ１８０５では、アプリケーション制御部１７０７は、アプリケーション制御用情報格納部９２０を参照し、後述するアプリケーション終了処理にて記録される前記アプリケーション制御用情報を取得し、その情報に基づいてメニュー表示項目を間引く。ただし初期状態では前述の通りアプリケーション終了処理にて記録される前記アプリケーション制御用情報が存在しないため、間引かれる項目はない。その後、アプリケーション制御部１７０７は、ＵＩ制御部１７０８を介してＰＣ１のＬＣＤ２０６へ、図１９に示すようなメニュー画面１９００を表示する（Ｓ１８０６）。
図１９は、印刷アプリケーションがＬＣＤに表示するメニュー画面のＵＩ表示例を示す図である。メニュー画面１９００には、「写真印刷」ボタン１９０１、「アルバム」ボタン１９０２、「ＤＶＤ／ＣＤラベル」ボタン１９０３、「カレンダー」ボタン１９０４が含まれる。ユーザが何れかのボタンを押下すると、ＵＩ制御部１７０８はアプリケーション制御部１７０７へどの項目が選択されたかを通知する（Ｓ１８０７）。
その後、Ｓ１８０７で取得したユーザ入力に基づいて、アプリケーション制御部１７０７は、単葉写真、アルバム、ＤＶＤ／ＣＤラベル、カレンダーの内のどれを印刷する機能を起動するかを決定する（Ｓ１８０８）。そして、アプリケーション制御部１７０７は、印刷アプリケーションの起動処理を終了する（Ｓ１８０９）。以後、アプリケーション制御部１７０７が、ＵＩ制御部１７０８、編集処理部１７０９、印刷処理部１７１０を統括制御し、Ｓ１８０８で決定された機能が実行される。
【００３５】
尚、Ｓ１８０３で起動機能の指定情報があると判定された場合には、アプリケーション制御部１７０７が前記第２のコマンドラインオプションを取得する（Ｓ１８１０）。
そして取得した前記第２のコマンドラインオプションに基づいて、アプリケーション制御部１７０７は、単葉写真、アルバム、ＤＶＤ／ＣＤラベル、カレンダーの内のどれを印刷する機能として起動するかを決定する（Ｓ１８０８）。例えばアプリケーション制御部１７０７は、前記第２のコマンドラインパラメータが、図１６の要素１６０３に含まれる「／ｐｈｏｔｏ」だった場合には単葉写真印刷、要素１６０６に含まれる「／ａｌｂｕｍ」だった場合にはアルバム印刷を起動するよう決定する。尚、この場合はＳ１８０６の処理を通らないため、メニュー画面１９００を表示することなく、アプリケーション制御部１７０７は、直ちに指定された機能を実行する。
また、Ｓ１８０４で起動元がデバイス管理画面ではないと判定された場合とは、デバイス管理８０と無関係に印刷アプリケーション１７００が実行された場合である。この場合、Ｓ１８０５でのメニュー表示項目の間引きを行わずにＳ１８０６へ移行し、アプリケーション制御部１７０７は、メニュー画面１９００を表示する。よって、デバイス管理画面以外から印刷アプリケーション１７００を起動した場合には、常時、項目の間引かれていない状態のメニュー画面１９００が表示される。
【００３６】
次に図２０、図２１を用いて印刷アプリケーション１７００の印刷物作成動作について説明する。図２０は、印刷アプリケーションの「アルバム」作成機能の第１段階である「画像の選択」時のＵＩ表示の一例を示す図である。図２１は、「アルバム」作成機能の第２段階である「編集」時のＵＩ表示の一例を示す図である。印刷アプリケーション１７００のアルバム作成機能では、表紙と裏表紙との間に１以上の本文ページを含み、全ページを同一サイズの紙面に印刷するアルバムを作成する。
図１８のフローチャートのステップＳ１８０７で、図１９のメニュー画面１９００中の「アルバム」ボタン１９０２が選択された場合、図２０に示す「アルバム」作成機能の「画像の選択」画面２０００が情報処理装置のＬＣＤ２０６に表示される。ステップＳ１８１０で前記第２のコマンドラインオプションとして「／ａｌｂｕｍ」が取得された場合も同様である。これは、アプリケーション制御部１７０７、ＵＩ制御部１７０８、編集処理部１７０９が連携して処理する。
フォルダ表示、選択部２００１には情報処理装置のＨＤＤ２０２中のフォルダ構成が表示される。またユーザ操作により特定フォルダ（例えば「Ｓｃｅｎｅｒｙ」フォルダ２００２）が選択されると、選択されたフォルダ内に記録されている画像ファイルの縮小画像（２００４他）が画像表示、選択部２００３に表示される。「画像の選択」画面２０００下部には表紙画像領域２００５、ページ画像領域２００６、裏表紙画像領域２００７が設けられている。ユーザが画像表示、選択部２００３に表示されている縮小画像の何れかをマウスによるドラッグ・アンド・ドロップ操作により表紙画像領域２００５へ移動させると、前記縮小画像のコピー２００８が表紙画像領域２００５に表示される。そして前記縮小画像に対応する画像ファイルが作成するアルバムの表紙内に配置される対象画像として指定される。ページ画像領域２００６、裏表紙画像領域２００７も表紙画像領域２００５と同様であり、それぞれアルバム本文中の画像２００９、裏表紙用の画像２０１０が指定される際に用いられる。
【００３７】
「次へ」ボタン２０１１が押下されると、配置対象画像の選択は終了し、画像の配置調整等の編集段階へ移行される。「終了」ボタン２０１２が押下されると印刷アプリケーション１７００は、処理を終了する。このとき、後述する印刷アプリケーションの終了処理が実行される。
編集段階へ移行すると、編集処理部１７０９は、表紙、本文ページ、裏表紙の各紙面領域に対して「画像の選択」画面２０００で選択された画像を配置する。またアプリケーション制御部１７０７、ＵＩ制御部１７０８、編集処理部１７０９が連携し、図２１に示す「アルバム」作成機能の「編集」画面２１００を情報処理装置のＬＣＤ２０６に表示する。
表紙表示部２１０１には表紙ページの縮小画像２１０５が表示される。ページ表示部２１０２、裏表紙表示部２１０３についても同様であり、これらの中で選択されたページ２１０６の拡大画像がページ編集部２１０４に表示される。ここではページ編集部２１０４の縦横比に対して紙面が縦長であるため、ユーザはスクロールバー２１１３を用いて紙面上のどの範囲をページ編集部２１０４に表示するかを指定する。
ユーザはページ編集部２１０４に表示されたページ画像上で、オブジェクトを操作、追加、削除することによりページ内配置の編集を行う。前記オブジェクトとしては画像、テキスト、図形等が含まれるがこれらに限定されない。また、これらに対する編集処理については一般的な画像編集アプリケーションで行われているものと同様であり、説明を省略する。
「印刷」ボタン２１１１が押下されると、アプリケーション制御部１７０７は、印刷処理部１７１０へ作成されたアルバムデータを渡し、表紙表示部２１０１、ページ表示部２１０２、裏表紙表示部２１０３に縮小表示していたアルバムを所定のサイズで印刷する。印刷先のプリンタは、デバイス管理８０のリンク実行部９０３が、印刷アプリケーション１７００起動時にコマンドラインパラメータ「／ｄｅｖｎａｍｅ」を置き換えることにより指定したデバイスを使用する。当該指定がない場合、図５（ａ）にてデフォルトマーク５０２が付加されているシステム標準のプリンタが使用される。アプリケーション制御部１７０７は、印刷先のプリンタを選択するダイアログボックス等のＵＩを表示してもよい。
「終了」ボタン２１１２が押下されると印刷アプリケーション１７００は、処理を終了する。このとき、後述する印刷アプリケーションの終了処理が実行される。
尚、他の機能、即ち「単葉写真」、「ＤＶＤ／ＣＤラベル」、「カレンダー」の作成機能は、配置、編集可能なオブジェクトの種類や、編集対象の紙面領域のサイズ、形状、ページ数等に差異があるが、主要な点は「アルバム」作成と同様である。よってここでは説明を省略する。
【００３８】
次に図２２のフローチャートと図２３とを用いて印刷アプリケーション１７００の終了処理について説明する。図２２は、印刷アプリケーションの終了時に行う処理の一例を示すフローチャートである。図２３は、処理中に印刷アプリケーションが情報処理装置のＬＣＤに表示するメッセージ画面の一例を示す図である。印刷アプリケーション１７００の「アルバム」作成機能の各段階における「終了」ボタン２０１２、２１１２が押下されると、アプリケーション制御部１７０７は、印刷アプリケーション１７００の終了処理を開始する（Ｓ２２０１）。他の機能、即ち「単葉写真」、「ＤＶＤ／ＣＤラベル」、「カレンダー」の作成機能画面における同様のボタンが押下された場合も同様である。
まず、アプリケーション制御部１７０７は、アプリケーション起動時の処理のＳ１８０２でＲＡＭ２０１へ格納した、印刷アプリケーション１７００の起動元を示す情報を起動元判断部１７０６へ渡す。起動元判断部１７０６は、前記情報に基づいてデバイス管理画面からの起動であるかどうかを判定する（Ｓ２２０２）。デバイス管理画面からの起動であった場合はＳ２２０３へ移行する。
次にアプリケーション制御部１７０７は、印刷アプリケーション１７００で実行された機能が「単葉写真」、「アルバム」、「ＤＶＤ／ＣＤラベル」、「カレンダー」のどれの作成機能であったかを示す情報を取得する（Ｓ２２０３）。
【００３９】
次いでアプリケーション制御部１７０７は、ＵＩ制御部１７０８を介して、情報処理装置のＬＣＤ２０６へ図２３に示すボタン登録確認メッセージ２３００を表示する（Ｓ２２０４）。メッセージ本文２３０１には、Ｓ２２０３で取得した機能情報に基づいて機能名が提示され、メニュー画面１９００を通らずに前記機能名の機能を直接起動するためのボタンをデバイス管理８０のデバイス管理画面５５０に表示するかどうかをユーザに問い合わせる。図２３は「アルバム」作成が行われた場合に表示するメッセージ例であるが、他の機能が行われた場合も同様に機能名がメッセージ本文２３０１に表示される。
その後、アプリケーション制御部１７０７は、ＵＩ制御部１７０８を介してユーザからの入力を取得し、前記入力によって処理を分岐する（Ｓ２２０５）。ユーザが「はい」ボタン２３０２を押下した場合、アプリケーション制御部１７０７は、ステップＳ２２０６へ移行する。そしてアプリケーション制御部１７０７は、Ｓ２２０３で取得した機能情報に対応する機能の起動ボタンをデバイス管理８０のデバイス管理画面５５０に追加表示するための情報を、アプリケーション制御用情報格納部９２０へ書き込む。また同時に、アプリケーション制御部１７０７は、他の機能の起動ボタンを表示するための情報が存在していた場合にはそれらを削除する。例えばＳ２２０３で取得した機能情報が「アルバム」作成だった場合、アプリケーション制御部１７０７は、アプリケーション制御用情報格納部９２０であるレジストリに「ａｌｂｕｍ」という情報を記録する。そして、アプリケーション制御部１７０７は、前記レジストリに他の機能である単葉写真の起動ボタンを表示させるための「ｐｈｏｔｏｐｒｉｎｔ」という情報、或いはＤＶＤ／ＣＤラベル作成やカレンダー作成に対応する情報が存在していれば、それを削除する。前記「ａｌｂｕｍ」、「ｐｈｏｔｏｐｒｉｎｔ」という情報は、図１６に示したデバイス管理制御用ファイル１６００の要素１６０４及び１６０１にそれぞれ対応するものである。
そして、アプリケーション制御部１７０７は、印刷アプリケーションの処理を終了する（Ｓ２２０７）。一方、ユーザが図２３のボタン登録確認メッセージ２３００に対して「いいえ」ボタン２３０３を押下した場合は、Ｓ２２０６を通らずに、即ちレジストリの更新を行わずに、アプリケーション制御部１７０７は、印刷アプリケーションの処理を終了する。
尚、Ｓ２２０２で起動元判断部１７０６が、起動元はデバイス管理８０ではないと判定した場合は、Ｓ２２０３からＳ２２０６までの一連の処理は行われずに、直ちに印刷アプリケーションの処理は終了する。
【００４０】
続いて、前記のように印刷アプリケーション１７００をデバイス管理８０から起動した後、再度、デバイス管理８０の画面を開いた際の動作について、図１６、図２４、図２５を用いて説明する。図２４は、デバイス管理のＵＩ表示画面の一例を示す図である。図２５は、印刷アプリケーションのＵＩ表示画面の一例を示す図である。
ここでは前記のように印刷アプリケーション１７００で「アルバム」作成をし、ユーザが図２３のメッセージに対して「はい」ボタン２３０２を押下してアプリケーションを終了した場合を想定する。この場合、Ｓ２２０６にてアプリケーション制御用情報格納部９２０に「ａｌｂｕｍ」という情報が記録されている。
この状態でデバイス管理８０を再度開いた際には、デバイス管理８０のデバイス管理制御用ファイル読み取り部９０４がデバイス管理制御用ファイル格納部９０５からデバイス管理制御用ファイル１６００を読み取る。また、デバイス管理制御部９０２がアプリケーション制御用情報格納部９２０に記録された情報を取得する。それらに基づいて表示部９０１を制御することにより、図２４に示すデバイス管理画面２４００が表示される。
デバイス管理制御用ファイル１６００内の＜ｄｍ：ｒｅｑｕｅｓｔ＞要素１６０４は、アプリケーション制御用情報格納部９２０の情報「ａｌｂｕｍ」が存在することをボタンの表示条件とすることを示している。上述した状態でデバイス管理８０を開いた場合には、要素１６０４が示す条件が満たされるため、要素１６０５が示す文字列「Ｃｒｅａｔｅ  Ａｌｂｕｍ」を表示するボタン２４０２が表示される。一方＜ｄｍ：ｒｅｑｕｅｓｔ＞要素１６０１が表示条件として示す情報「ｐｈｏｔｏｐｒｉｎｔ」は存在しないため、要素１６０２が示す文字列「Ｐｒｉｎｔ  Ｐｈｏｔｏｓ」を表示するボタンは現れない。また要素１６０７が示す文字列「Ｌａｕｎｃｈ  Ａｐｐｌｉｃａｔｉｏｎ  Ａ」を表示するボタン２４０１は先行する＜ｄｍ：ｒｅｑｕｅｓｔ＞要素を持たないため、前述の通り常時表示される。
ここで新たに表示されたボタン２４０２が押下された場合には、リンク実行部９０３がデバイス管理制御用ファイル１６００内のボタン２４０２に対応する要素１６０６にしたがって印刷アプリケーション１７００を起動する。これにより図１８に示す印刷アプリケーションの起動処理が実行される。この場合、Ｓ１８０３にて起動機能の指定情報があると判定される。Ｓ１８１０では要素１６０６のコマンドライン文字列に含まれる第２のコマンドラインオプション「／ａｌｂｕｍ」に基づいて、起動機能の指定情報として「アルバム」作成が取得される。そしてメニュー画面１９００を表示するＳ１８０６を通ることなく印刷アプリケーションの起動処理は終了し、直接「アルバム」作成の第１段階の画面２０００へ移行することとなる。
【００４１】
一方、デバイス管理８０のデバイス管理画面２４００で、ボタン２４０１が押下された場合、リンク実行部９０３がデバイス管理制御用ファイル１６００内のボタン２４０１に対応する要素１６０８にしたがって印刷アプリケーション１７００を起動する。これにより図１８に示す印刷アプリケーションの起動処理が実行される。この場合にはＳ１８０３で起動機能の指定情報はない、Ｓ１８０４で起動元がデバイス管理画面であるとそれぞれ判定され、Ｓ１８０５へ移行する。そしてアプリケーション制御用情報格納部９２０の情報に基づいて、メニュー項目の間引きが行われる。より具体的にはアプリケーション制御用情報格納部９２０に情報「ａｌｂｕｍ」があるため、この情報に対応する「アルバム」ボタンがメニューから消去される。その結果、Ｓ１８０６では図２５に示すメニュー画面２５００が表示される。この画面には図１９のメニュー画面に表示されていた「アルバム」ボタン１９０２が表示されていない。メニュー画面２５００でボタン２５０１、２５０２、２５０３が押下された場合の処理動作は、図１９のメニュー画面１９００でボタン１９０１、１９０３、１９０４が押下された場合の処理動作とそれぞれ同様である。
【００４２】
以上示したように、印刷アプリケーション１７００内で実際にユーザが実行した機能を直接起動するボタン２４０２をデバイス管理８０のデバイス管理画面２４００に追加表示させる。このことにより、ユーザが再度使用する可能性が高い機能を少ない操作数で起動できるようになる。また、どの機能を直接起動するボタンを表示するのかを、印刷アプリケーション１７００の動作時に同的に更新することにより、次回デバイス管理画面を開く際には前回と異なる機能を呼び出すよう処理することが可能となる。これにより図１７に示したソフトウェア群全体としてのユーザの操作性が向上する。
デバイス管理８０から起動された場合には、デバイス管理８０のデバイス管理画面２４００に追加表示した機能を、印刷アプリケーション１７００のメニュー画面２５００から削除している。このことにより、印刷アプリケーション１７００として実行できる機能を減らすことなく、アプリケーションＵＩから不必要な選択肢の表示をなくしている。メニュー画面２５００への表示項目の削除は図１８のＳ１８０４にて起動元がデバイス管理８０であると判定された場合のみ行っている。よってデバイス管理８０の存在する環境での印刷アプリケーション１７００のＵＩ処理の無駄が省かれると共にユーザの操作性が向上する。このときデバイス管理８０が存在しない環境や、デバイス管理８０からの起動以外の方法により起動した場合の印刷アプリケーション１７００の機能には影響は与えない。
【００４３】
尚、前述の説明では、初期状態ではアプリケーション制御用情報格納部９２０には、各機能ボタンを表示させる「ｐｈｏｔｏｐｒｉｎｔ」や「ａｌｂｕｍ」等の情報は存在しないものとして説明した。これを初期状態でも最も使用頻度が高いと予想される機能のボタンは表示させるように構成してもよい。
また印刷アプリケーションの終了処理にてアプリケーション制御用情報の更新時には、ボタン登録確認メッセージ２３００によりユーザに問い合わせを行うものとした。この問い合わせを省略して常時アプリケーション制御用情報の更新を行うように構成し、ユーザ操作の回数を減らすようにしてもよい。
また、前述の説明ではアプリケーション制御用情報の更新時には、その直前に印刷アプリケーション１７００で実行した機能に対応するボタンをデバイス管理８０に表示するよう制御していた。これを、印刷アプリケーション１７００を情報処理装置にインストール後、機能ごとに使用頻度を記録し、それらを比較することにより特定期間に最も使用頻度が高かった機能のボタンをデバイス管理８０の画面に表示するよう制御してもよい。また、デバイス管理８０に、複数の機能ボタンが同時に追加表示されるように制御してもよい。
【００４４】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００４５】
以上、上述した各実施形態によれば、Ｄｅｖｉｃｅ  Ｓｔａｇｅから起動されたことをアプリケーションが知ることにより、アプリケーションは無駄な処理を省くことが可能となる。また、上述した各実施形態によれば、アプリケーションが異なる処理を提供する必要があると判断した場合に、Ｄｅｖｉｃｅ  Ｓｔａｇｅの表示を適切なものに変更することができる。そして、その後、Ｄｅｖｉｃｅ  Ｓｔａｇｅは次回アプリケーションを起動する際に、前回とは異なる機能を呼び出すよう処理することが可能となり、ユーザの操作性を向上させることができる。
【００４６】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図１】
0005562002.tif 000002
【図２】
0005562002.tif 000003
【図３】
0005562002.tif 000004
【図４】
0005562002.tif 000005
【図５】
0005562002.tif 000006
【図６】
0005562002.tif 000007
【図７】
0005562002.tif 000008
【図８】
0005562002.tif 000009
【図９】
0005562002.tif 000010
【図１０】
0005562002.tif 000011
【図１１】
0005562002.tif 000012
【図１２】
0005562002.tif 000013
【図１３】
0005562002.tif 000014
【図１４】
0005562002.tif 000015
【図１５】
0005562002.tif 000016
【図１６】
0005562002.tif 000017
【図１７】
0005562002.tif 000018
【図１８】
0005562002.tif 000019
【図１９】
0005562002.tif 000020
【図２０】
0005562002.tif 000021
【図２１】
0005562002.tif 000022
【図２２】
0005562002.tif 000023
【図２３】
0005562002.tif 000024
【図２４】
0005562002.tif 000025
【図２５】
0005562002.tif 000026