(57)【特許請求の範囲】
【請求項１】
設定された印刷属性に従い、入力されたデータから印刷装置で処理すべき印刷データを生成する情報処理装置であって、
所定の記憶領域に対応付ける印刷属性を設定する設定手段と、
前記記憶領域にデータが投入されたことを検知する検知手段と、
前記検知手段により前記データの投入が検知されたことに応じて、前記設定手段による印刷属性が設定された時点から前記印刷装置の状態が変化したか否かを判定する判定手段と、
前記判定手段により前記印刷装置の状態が変化していると判定されたことに基づいて、前記設定手段により設定された印刷属性を変更する変更手段と、
前記判定手段により前記印刷装置の状態が変化していないと判定された場合に、前記変更手段による前記印刷属性の変更を行うことなく、前記記憶領域に投入されたデータに前記設定手段により設定された前記印刷属性を適用して生成した印刷データを前記印刷装置に送信し、前記判定手段により前記印刷装置の状態が変化していると判定された場合に、前記記憶領域に投入されたデータに前記変更手段により変更された印刷属性を適用して生成した印刷データを前記印刷装置に送信する送信手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記変更手段が前記印刷属性を変更する前に、前記印刷属性の変更を確認するための確認画面を表示手段に表示する表示制御手段を更に有することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記印刷属性には、前記印刷データを生成するプリンタドライバの設定が含まれることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記表示制御手段は、変更を確認するための項目として、前記印刷属性の設定の追加、変更、及び前記印刷装置と接続するデバイスの有無に関する情報のうちの少なくともひとつを、前記表示手段に表示させることを特徴とする請求項２に記載の情報処理装置。
【請求項５】
設定された印刷属性に従い、入力されたデータから印刷装置で処理すべき印刷データを生成する情報処理装置における情報処理方法であって、
前記情報処理装置の設定手段が、所定の記憶領域に対応付ける印刷属性を設定する設定工程と、
前記情報処理装置の検知手段が、前記記憶領域にデータが投入されたことを検知する検知工程と、
前記情報処理装置の判定手段が、前記検知工程により前記データの投入が検知されたことに応じて、前記設定工程による印刷属性が設定された時点から前記印刷装置の状態が変化したか否かを判定する判定工程と、
前記情報処理装置の変更手段が、前記判定工程により前記印刷装置の状態が変化していると判定されたことに基づいて、前記設定工程により設定された印刷属性を変更する変更工程と、
前記情報処理装置の送信手段が、前記判定工程により前記印刷装置の状態が変化していないと判定された場合に、前記変更工程による前記印刷属性の変更を行うことなく、前記記憶領域に投入されたデータに前記設定工程により設定された前記印刷属性を適用して生成した印刷データを前記印刷装置に送信し、前記判定工程により前記印刷装置の状態が変化していると判定された場合に、前記記憶領域に投入されたデータに前記変更工程により変更された印刷属性を適用して生成した印刷データを前記印刷装置に送信する送信工程と、
を有することを特徴とする情報処理方法。
【請求項６】
前記変更工程が前記印刷属性を変更する前に、前記情報処理装置の表示制御手段が、前記印刷属性の変更を確認するための確認画面を表示手段に表示する表示制御工程を更に有することを特徴とする請求項５に記載の情報処理方法。
【請求項７】
前記印刷属性には、前記印刷データを生成するプリンタドライバの設定が含まれることを特徴とする請求項５に記載の情報処理方法。
【請求項８】
前記表示制御工程は、変更を確認するための項目として、前記印刷属性の設定の追加、変更、及び前記印刷装置と接続するデバイスの有無に関する情報のうちの少なくともひとつを、前記表示手段に表示させることを特徴とする請求項６に記載の情報処理方法。
【請求項９】
請求項５乃至８のいずれか１項の情報処理方法の各工程をコンピュータに実行させるためのプログラム。
【請求項１０】
請求項９に記載のプログラムを格納したコンピュータ可読の記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷データを処理するための情報処理技術に関するものである。
【背景技術】
【０００２】
印刷装置に対して印刷ジョブを投入する手段として、プリンタドライバやホットフォルダなどがある。ホットフォルダを用いる場合、ホストコンピュータのデスクトップ上などにホットフォルダを作成し、その際にユーザが所望する印刷属性を設定する。そしてユーザがそのフォルダに印刷を行いたいファイルをドラッグアンドドロップすると、予め設定された印刷属性に従って、印刷処理を実行するものである。一度設定された印刷属性はホットフォルダに固定的に使用できるので、同一の設定で印刷を繰り返すことができる（例えば、特許文献１）。
【０００３】
プリンタドライバでも、ホットフォルダを用いる場合と類似した処理を行うことが可能である。例えば、プリンタドライバ上で印刷属性の設定を行い、その印刷属性設定を「お気に入り設定」として保存しておき、印刷実行時に印刷属性を読み出して、ユーザの設定した印刷属性により、印刷を行うことができる。
【０００４】
プリンタドライバやホットフォルダを用いて印刷ジョブを投入することにより、一度設定した印刷属性を保存することが可能となり、同じ設定でジョブを繰り返し流すことができるという利点がある。
【特許文献１】特開２００５−１１５５６８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述した従来の技術では、印刷属性が固定されてしまうためにデバイスの状態変化に対応することができなかった。そのため、ホットフォルダ等で印刷属性を設定した時に比べ、給紙カセット内に用意されている紙種の変更やフィニッシャの付け替え・取り外しや、ＩＣＣプロファイルなどリソースの変更が起きた場合、柔軟に対応することができないという問題がある。
【０００６】
本発明は、上記問題を鑑み、従来のホットフォルダ技術やドライバ技術では不可能であった、デバイスの状態変化（設定の追加、変更、デバイスの取り外し等）に対する柔軟な対応を可能にする情報処理技術の提供を目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するべく、本発明に係る情報処理装置は、主として以下の構成を備えることを特徴とする。
【０００８】
すなわち、本発明に係る情報処理装置は、設定された印刷属性に従い、入力されたデータから印刷装置で処理すべき印刷データを生成する情報処理装置であって、
所定の記憶領域に対応付ける印刷属性を設定する設定手段と、
前記記憶領域にデータが投入されたことを検知する検知手段と、
前記検知手段により前記データの投入が検知されたことに応じて、前記設定手段による印刷属性が設定された時点から前記印刷装置の状態が変化したか否かを判定する判定手段と、
前記判定手段により前記印刷装置の状態が変化していると判定されたことに基づいて、前記設定手段により設定された印刷属性を変更する変更手段と、
前記判定手段により前記印刷装置の状態が変化していないと判定された場合に、前記変更手段による前記印刷属性の変更を行うことなく、前記記憶領域に投入されたデータに前記設定手段により設定された前記印刷属性を適用して生成した印刷データを前記印刷装置に送信し、前記判定手段により前記印刷装置の状態が変化していると判定された場合に、前記記憶領域に投入されたデータに前記変更手段により変更された印刷属性を適用して生成した印刷データを前記印刷装置に送信する送信手段と、を備えることを特徴とする。
【０００９】
あるいは、本発明に係る情報処理方法は、設定された印刷属性に従い、入力されたデータから印刷装置で処理すべき印刷データを生成する情報処理装置における情報処理方法であって、
前記情報処理装置の設定手段が、所定の記憶領域に対応付ける印刷属性を設定する設定工程と、
前記情報処理装置の検知手段が、前記記憶領域にデータが投入されたことを検知する検知工程と、
前記情報処理装置の判定手段が、前記検知工程により前記データの投入が検知されたことに応じて、前記設定工程による印刷属性が設定された時点から前記印刷装置の状態が変化したか否かを判定する判定工程と、
前記情報処理装置の変更手段が、前記判定工程により前記印刷装置の状態が変化していると判定されたことに基づいて、前記設定工程により設定された印刷属性を変更する変更工程と、
前記情報処理装置の送信手段が、前記判定工程により前記印刷装置の状態が変化していないと判定された場合に、前記変更工程による前記印刷属性の変更を行うことなく、前記記憶領域に投入されたデータに前記設定工程により設定された前記印刷属性を適用して生成した印刷データを前記印刷装置に送信し、前記判定工程により前記印刷装置の状態が変化していると判定された場合に、前記記憶領域に投入されたデータに前記変更工程により変更された印刷属性を適用して生成した印刷データを前記印刷装置に送信する送信工程と、を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、デバイスの状態変化やリソースの変更に対して動的な対応が可能となるため、ユーザの意図に沿わない出力結果となることを防ぐことができ、効率的な印刷を行うための情報処理が可能となる。
【発明を実施するための最良の形態】
【００１１】
（ホットフォルダを用いた印刷システムの概要）
まず、ホットフォルダによる印刷システムの例について説明する。図１Ａはホットフォルダを利用して印刷を行うシステムの構成を概略的に示す図である。１００は情報処理装置（ホストコンピュータ）であり、４０８および１２０８はネットワーク１０５に接続可能なネットワークプリンタ（以下、単に「プリンタ」という。）である。プリンタ４０８、１２０８は、ホストコンピュータ１００から印刷ジョブを受信して印刷を行うことが可能である。プリンタ４０８、１２０８には、後処理装置（フィニッシャ）４１５、１２１５がそれぞれ接続している。ホストコンピュータ１００はオペレーティングシステムがインストールされており、そのオペレーティングシステム上にホットフォルダを作成するためのアプリケーションがインストールされる。
【００１２】
後に説明するデバイス状態リストの生成、デバイス状態リスト管理テーブル等の情報処理は、図１Ｂに示すような構成の情報処理装置（ホストコンピュータ）上で実現される。図１Ｂにおいて、ホストコンピュータ１００はアプリケーションが稼動するコンピュータである。ホストコンピュータ１００は、オペレーティングシステム（ＯＳ）やプリンタドライバ、アプリケーションプログラム、ホットフォルダアプリケーション等を実行するＣＰＵ１０１を備える。これらプログラムは、ＲＯＭ１０２又はハードディスク（ＨＤ）１１１に記憶され、あるいはフレキシブルディスク（ＦＤ）１１２により供給される。
【００１３】
ＣＰＵ１０１は、システムバス１０４に接続される各デバイスを総括的に制御する。ＲＡＭ１０３は、ＣＰＵ１０１の主メモリ、ワークエリア等として機能する。キーボードコントローラ（ＫＢＣ）１０５は、キーボード（ＫＢ）１０９や不図示のポインティングデバイス等からの指示入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）１０６はＣＲＴディスプレイ（ＣＲＴ）１１０の表示を制御する。ディスクコントローラ（ＤＫＣ）１０７は、ハードディスク（ＨＤ）１１１およびフレキシブルディスク（ＦＤ）１１２へのアクセスを制御する。これらディスク媒体には、ブートプログラム、オペレーティングシステム、編集ファイル、ユーザファイル、アプリケーションプログラム、ネットワーク制御プログラム等が記憶されている。
【００１４】
ネットワークインターフェース（Ｉ／Ｆ）１０８は、ネットワーク１０５を介してネットワーク機器等と双方向にデータをやり取りする。ネットワークとしてはＬＡＮやインターネットなどの通信媒体が用いられる。尚、後述の説明においては、特に断りのない限り処理を実行するハードウエア上の主体はＣＰＵ１０１であり、ソフトウエア上の主体はハードディスク（ＨＤ）１１１にインストールされたアプリケーションプログラムである。
【００１５】
次に、図２および図３により、ホットフォルダを利用した印刷の操作を説明する。
【００１６】
図２はホストコンピュータ１００のディスプレイに表示されるデスクトップ画面を示す図である。２０１がデスクトップ画面、２０２がマウスカーソル、２０６がこれから印刷しようとするドキュメントファイルである。尚、印刷するファイルのフォーマットはネットワークプリンタ４０８、１２０８が解釈可能なフォーマットである必要がある。このフォーマットは一般にＰＤＦ(Portable Document Format)、ＰＳ(PostScript)、ＪＰＥＧ、ＴＩＦＦファイルが含まれる。２０３から２０５はホットフォルダであり、例えば、ホットフォルダ２０３には予め両面印刷の属性が設定されている。また、ホットフォルダ２０４には製本印刷の属性が、ホットフォルダ２０５には４-ＵＰ印刷、１０部印刷、両面印刷の属性が設定されている。
【００１７】
ここで、ユーザがドキュメントファイル２０６を製本印刷で印刷出力する場合の操作を図３により説明する。
【００１８】
まず、ユーザは印刷するドキュメントファイル２０６をマウスでドラッグをして、製本印刷の属性が設定されているホットフォルダ２０４に重ねる。重ねたあとマウスのボタンを離してホットフォルダ２０４にドロップする。このとき、ホットフォルダアプリケーションは印刷属性情報とともにドロップされたファイルをネットワークプリンタ４０８、１２０８に送信する。ネットワークプリンタ４０８、１２０８は、送信された印刷属性情報とドキュメントファイル２０６に基づき、予め設定された印刷属性で印刷を実行する。
【００１９】
（ＯＳとホットフォルダアプリケーション）
次に、オペレーティングシステム（ＯＳ）とホットフォルダアプリケーションについて説明する。
【００２０】
図４はホストコンピュータ１００にインストールされているオペレーティングシステム４１１およびホットフォルダアプリケーション４０２の概略的な構成を示すブロック図である。ホットフォルダアプリケーション４０２は、オペレーティングシステム４１１によりホットフォルダアプリケーションの起動や終了、その他オペレーティングシステム４１１のサービスの提供を受けることが可能である。
【００２１】
なお、ホットフォルダは実行形式のアプリケーションとしているが、構成としてはオペレーティングシステムに登録するサービスとすることも可能である。また、ここで説明するホットフォルダは、ユーザが設定した印刷属性をＸＭＬフォーマットのジョブチケットとして保存することとする。
【００２２】
更に、ネットワークプリンタ４０８、１２０８は印刷属性としてこのジョブチケットも解釈可能とする。ホットフォルダアプリケーション４０２は、印刷属性などの設定を制御するＵＩ制御部４０４、ＵＩ制御部４０４でユーザが設定した印刷属性のジョブチケットを生成、保存するジョブチケット制御部４０６を有する。また、ホットフォルダアプリケーション４０２は、ジョブチケットとホットフォルダ、プリンタを関連づけるジョブチケット管理テーブル４０３を有する。更に、ホットフォルダアプリケーション４０２は、ホットフォルダにドロップされたファイルとそのフォルダに関連付けられたジョブチケットを基にジョブを生成し、プリンタに送信するジョブ生成送信制御部４０５を有する。
【００２３】
ジョブチケット制御部４０６が生成したジョブチケットは、オペレーティングシステムのＡＰＩ(Application Programming Interface)を通して、オペレーティングシステムのジョブチケット保存領域４０７に保存される。
【００２４】
また、４１０はホストコンピュータ１００のネットワークインターフェースであり、プリンタ４０８のネットワークインターフェース４０９と通信媒体で接続されている。ネットワークインターフェース４１０は、プリントジョブの送信やプリンタのステータス（状態）を示す情報の授受などを行う。プリンタ４０８の内部には色変換処理に用いるプロファイル情報４１２や、中間調処理を行うためのスクリーンデータ４１３、現在カセット内に入っている用紙の情報４１４などが保存されている。また、プリンタ４０８にはフィニッシャ４１５が接続されており、排紙時にステイプルなどの処理を行うことが可能である。
【００２５】
（ホットフォルダの作成手順）
次に、ユーザがホットフォルダを作成する手順を図５により説明する。尚、ユーザは、印刷属性がデフォルトの設定から、ページレイアウト設定を「４ＵＰ」、片面/両面設定を「両面」、印刷部数設定を「１０部」に変更して印刷属性を設定するものとする。
【００２６】
ステップＳ５０１において、ユーザは任意の場所にフォルダを作成し、ユーザ自身でわかり易い名称を付与する。通常、ホットフォルダはホストコンピュータのデスクトップ上にあったほうが便利であるため、デスクトップに作成する。また、フォルダ名称としては、デフォルトから変更した印刷属性がわかるように、「４ＵＰ＿１０部_両面印刷」と付与する。もちろんこの名称は他のものでもよい。この手順により、デスクトップは図２に示すホットフォルダ２０５のように、「４ＵＰ_１０部_両面印刷」というフォルダが生成される。
【００２７】
次に、ステップＳ５０２において、ホットフォルダアプリケーション４０２を立ち上げ、ホットフォルダ設定ダイアログを開く。
【００２８】
図６はホットフォルダアプリケーションを立ち上げたときに表示されるダイアログの一例を示した図であり、６０１はホットフォルダアプリケーションダイアログである。６０２はホットフォルダを作成するシート、６０３は既に作成してあるホットフォルダを編集するためのシートである。図６において、６０４はホットフォルダとして設定をするターゲットフォルダのフォルダパスを指定するコントロールである。６０５はターゲットフォルダパスを指定するコントロール６０４でフォルダパスを直接入力する代わりに、参照ダイアログで指定するために参照ダイアログを開くためのボタンである。６０６は印刷出力ターゲットとするプリンタを選択するためのターゲットプリンタ指定コントロールである。
【００２９】
また、６０７はターゲットプリンタ指定コントロールで、ホットフォルダにドロップされたファイル（データ）の出力先として指定されたプリンタ（以下、「ターゲットプリンタ」という。）を直接入力する代わりに、参照ダイアログで指定するために参照ダイアログを開くためのボタンである。尚、このターゲットプリンタ指定コントロールで指定する方法はターゲットプリンタのＩＰアドレス(192.168.0.100)としているが、特定できる方法であれば他の方法でもよい。
【００３０】
６０８はホットフォルダに設定する印刷属性設定ダイアログを開くための設定ボタンであり、６０９は現在の状態でターゲットホットフォルダに印刷属性及びターゲットプリンタを設定するためのホットフォルダ設定ボタンである。
【００３１】
そして、６１０はホットフォルダアプリケーションを終了するためのボタンである。
【００３２】
説明を図５に戻し、ステップＳ５０３において、作成したフォルダをターゲットフォルダとして指定する。ステップＳ５０１において、デスクトップにフォルダ名「４ＵＰ_１０部_両面印刷」を作成したので、ターゲットフォルダ指定コントロール６０４に、このフォルダを指定するためのデスクトップへのパスを入力する。尚、フォルダ名より前のフォルダパスはオペレーティングシステムに依存するものとする。
【００３３】
次に、ステップＳ５０４において、ターゲットホットフォルダの印刷属性を設定する。ユーザは、印刷属性設定を行うために印刷属性設定ボタン６０８（図６）を押下する。このボタンを押下したとき、図７、図８に示す印刷属性設定ダイアログが表示される。
【００３４】
（印刷属性設定ダイアログの説明）
図７はホットフォルダの印刷属性を設定するダイアログであり、７０１は印刷属性設定ダイアログ、７０２はページ設定に関する各種設定を表示するためのタブ、７０３は印刷品質に関する各種設定を出すためのタブである。７０４から７０９はページ設定に関する各種設定（用紙サイズ、用紙タイプ、部数、ページレイアウト、両面印刷の有無、排紙方法）が可能である。
【００３５】
尚、図７は設定できる印刷属性のはじめの部分を示したものであり、ここに表示されている印刷属性以外の設定はスクロールコントロール７１０を用いて表示させることが可能である。
【００３６】
尚、ここに表示している以外の印刷属性については省略する。ここでは、印刷属性のデフォルト設定として、出力用紙サイズをＡ４、用紙タイプを普通紙、部数を１０部、ページレイアウトを４ページ/枚、両面印刷、排紙方法としてステイプルが設定するものとする。
【００３７】
ＯＫボタン７１１の押下により、設定された印刷属性が確定する。内容を破棄して、図６のホットフォルダダイアログに戻る場合は、キャンセルボタン７１２を押下する。
【００３８】
尚、出力用紙サイズ７０４、用紙タイプ７０５のプルダウンメニューを表示する際に、プリンタ４０８に保存されている用紙情報４１３を参照する構成にしてもよい。同様に、排紙方法７０９を設定する際、プリンタ４０８からフィニッシャ４１５が接続されているか否かの情報を取得して、それに応じて排紙方法７０９のプルダウンメニューを変更する構成にしてもよい。
【００３９】
また、印刷品質タブ７０３をクリックすると、図８のようなＵＩが表示される。８０１〜８０３は図７の７０１〜７０３と同様であり、図８では印刷品質タブ８０３が選ばれた状態になっている。８０４から８０９は印刷品質に関する各種設定であり、８１０は図７の７１０と同様のスクロールコントロールである。
【００４０】
ＯＫボタン８１１により、ＵＩ画面の設定が確定する。キャンセルボタン８１２の押下により、ホットフォルダダイアログ（図６）に戻る。
【００４１】
ここで、ＵＩ画面の設定欄８０４〜８０７の設定項目は色変換に関するものであり、実際のプリント作業時はプリンタ４０８にあるプロファイル情報４１２を用いる。また、カラーモードの設定８０８は、プリンタ４０８のスクリーンデータ４１３と関連しており、プリント時にはこの情報を用いる。尚、設定欄８０４から８０７、８０９の設定を行う際に、プロファイル情報４１２や、スクリーンデータ４１３を参照してプルダウンメニューを変更する構成にしてもよい。
【００４２】
図６のホットフォルダダイアログにおいて、ホットフォルダ設定ボタン６０９を押下すると、図５のステップＳ５０６においてターゲットフォルダに対して、ジョブチケットが生成される。そして、ターゲットプリンタの情報とともにジョブチケット管理テーブルが更新される。
【００４３】
（ジョブチケット、ジョブチケット管理テーブルの生成）
次にステップＳ５０６で生成されるジョブチケットと、ジョブチケット管理テーブルの生成について説明する。
【００４４】
図９は、図５のステップＳ５０５で設定した印刷属性に対するジョブチケットの一例を示す図である。ここで説明するジョブチケットはＸＭＬ形式としているが、他に印刷属性を記録、識別できる方法であれば他の記述形式でもよい。ジョブチケット中、用紙サイズはＡ４（９０１）、用紙タイプは普通紙を示す"Ｐｌａｉｎ"（９０２）となっている。また、部数は１０部（９０３）、ページレイアウトは４ページ/枚（９０４）、両面設定（９０５）、排紙設定はステイプル（９０６）である。
【００４５】
図９は、図７で設定された印刷属性に対応したジョブチケットを示しているが、図８に示す出力プロファイルやカラーモードなど他の印刷属性についても同様の方法で記述することができる。このように生成されたジョブチケットは、オペレーティングシステム４１１のＡＰＩを通して、オペレーティングシステムの管理下にあるジョブチケット保存領域４０７に保存される。
【００４６】
（ジョブチケット管理テーブル）
図１０はジョブチケット管理テーブル４０３を示す図である。ホットフォルダアプリケーション４０２は、生成されたジョブチケットの名称と、ターゲットのホットフォルダのフォルダパスと、ターゲットプリンタとを対応付けたジョブチケット管理テーブルを生成し、保持する。図１０において、ターゲットのホットフォルダのフォルダパス（１００２）と、ターゲットプリンタ（１００３）、ジョブチケットの名称（１００４）が、ジョブチケット管理テーブル４０３に格納されている。
【００４７】
ターゲットのホットフォルダのフォルダパスはフルパス、ターゲットプリンタは指定されたＩＰアドレス、ジョブチケットを格納するディレクトリは予め定めているため、ファイル名のみの記載となっている。ホットフォルダアプリケーション４０２はユーザがあるフォルダにファイルをドロップしたとき、そのフォルダ名称をキーとして、この管理テーブルからターゲットのプリンタおよび対応するジョブチケットを知ることが可能となる。
【００４８】
（ホットフォルダの処理）
次にホットフォルダの処理について説明する。
【００４９】
図１１はユーザがホットフォルダにファイルをドロップしたときのホットフォルダの処理手順を示した図である。
【００５０】
まず、ステップＳ１１０１において、ユーザがホットフォルダにファイルをドロップするのを監視する。ここで、ファイルがドロップされない場合はステップＳ１１０１に戻り監視を繰り返す。ファイルがドロップされた場合はステップＳ１１０２に進み、ジョブチケット管理テーブル４０３からホットフォルダに設定されているジョブチケットを検索して取得する。この際にターゲットプリンタの情報も取得する。最後にステップＳ１１０４にてジョブをプリンタに送信して、処理を終了する。
【００５１】
（第1実施形態）
次に、本発明の第１実施形態を図面の参照により説明する。情報処理装置およびプリンタを有するシステムの構成、ホットフォルダの表示、操作については、それぞれ図１Ａ、Ｂ〜図３と同様である。
【００５２】
本実施形態に係る情報処理装置（ホストコンピュータ）により実行されるホットフォルダアプリケーションの構成を図１２に示す。図１２において、ホストコンピュータ１２０１は、ＯＳ１２１１とホットフォルダアプリケーション１２０２を備える。ＯＳ１２１１には、ジョブチケット保存領域１２０７とデバイス状態リスト保存領域１２１８とが含まれている。
【００５３】
ホットフォルダアプリケーションはジョブチケット管理テーブル１２０３、ＵＩ制御部１２０４、ジョブチケット制御部１２０６、ジョブ生成送信制御部１２０５、デバイス状態リスト管理テーブル１２１６、デバイス状態リスト制御部１２１７を有する。
【００５４】
ホストコンピュータ１２０１はプリンタ１２０８と通信可能であり、プリンタ１２０８にはフィニッシャ（後処理装置）１２１５が接続している。
上述のホストコンピュータ１２０１〜フィニッシャ１２１５は、図４のホストコンピュータ１００、ホットフォルダアプリケーション４０２〜フィニッシャ４１５と同様の処理を行うことが可能である。
【００５５】
図４と異なる構成として、図１２においては、更に、デバイス状態リスト管理テーブル１２１６とデバイス状態リスト制御部１２１７、デバイス状態リスト保存領域１２１８が加わっている。ＵＩ制御部１２０４で設定を行う際、デバイス状態リスト制御部１２１７はデバイス状態リストを生成し、デバイス状態リスト管理テーブル１２１６はデバイス状態リストを、ホットフォルダのフォルダパスと指定されたターゲットプリンタと対応付けて管理する。そして、デバイス状態リスト制御部１２１７はオペレーティングシステム１２１１のＡＰＩを通して、オペレーティングシステム１２１１のデバイス状態リスト保存領域１２１８にデバイス状態リストを保存する。
【００５６】
設定された印刷属性（ジョブチケット）に従い、入力されたデータからプリンタ（１２０８）で処理すべき印刷データを生成するホストコンピュータ１２０１は以下の構成を備える。ホストコンピュータ１２０１は所定の記憶領域にデータが投入されると、所定の記憶領域に対応付けられた印刷属性を適用して、プリンタ（１２０８）にデータを送信する送信部を有する。
【００５７】
また、ホストコンピュータ１２０１は所定の記憶領域に対応付ける印刷属性を設定する設定部とプリンタ（１２０８）の状態を示す状態情報（プリンタにおける設定の追加、変更、デバイスの取り外しに関する情報を少なくとも一つを含む情報）を取得する取得部を有する。
【００５８】
また、ホストコンピュータ１２０１は取得部が取得した状態情報に、所定の記憶領域に対応付けられた印刷属性を適応させるべく印刷属性を変更する変更部を有する。
【００５９】
ホットフォルダアプリケーション１２０２の各制御部は、ＣＰＵ１０１の制御の下、ホストコンピュータ１２０１を構成する送信部、設定部、取得部、変更部の処理を実行することが可能である。
【００６０】
（ホットフォルダの作成）
次に、本発明の実施形態におけるホットフォルダの作成の流れを図１３の図１３を用いて説明する。ステップＳ１３０１〜Ｓ１３０６は、先に説明した図５のステップＳ５０１〜Ｓ５０６と同様なので説明は省略する。
【００６１】
ステップＳ１３０５にてホットフォルダを設定した後、処理はステップＳ１３０６に並行して、ステップＳ１３０７に進められる。ホットフォルダアプリケーション１２０２は、ホストコンピュータと接続するデバイス（図１２の場合、プリンタ１２０８）の状態の情報を取得する。ここで取得するデバイスの状態の情報とは、ユーザがホットフォルダアプリケーション１２０２で設定できる印刷属性全般に関連するものである。よって、デバイス（プリンタ１２０８）が保持しているプロファイル情報１２１２やスクリーンデータ１２１３のみでなく、デバイス（プリンタ）１２０８に接続するフィニッシャ１２１５に関するフィニッシャ情報１２２０はデバイス情報になる。また、情報処理装置内にプロファイル情報を保持している場合は、その情報も含めてデバイス情報となる。
【００６２】
そして、ステップＳ１３０８において、デバイス状態リストの生成及びデバイス状態リスト管理テーブルの生成が行われる。
【００６３】
ここで、ホットフォルダアプリケーションを立ち上げたときに表示されるダイアログにより、ターゲットフォルダのフォルダパス、ターゲットプリンタ、印刷設定等が指定される（図６〜図８）。また、印刷属性の設定により生成されるジョブチケットは、図９の構成と同様である。ジョブチケットと、指定されたターゲットフォルダのフォルダパス、及びターゲットプリンタは、図１０と同様にジョブチケット管理テーブル１２０３により管理される。
【００６４】
（デバイス状態リスト）
次に、図１３のステップＳ１３０７で取得するデバイス状態情報に基づくデバイス状態リストについて説明する。ここでは、例として、図７及び図８におけるホットフォルダアプリケーションの印刷設定を例に説明する。図７の「ページ設定」（７０２）、「印刷品質」（７０３）で、デバイス側の情報が関係するのは出力用紙サイズ（７０４）、用紙タイプ（７０５）、排紙方法（７０９）である。また、図８のページ設定（８０２）、印刷設定（８０３）で、デバイス側の情報が関係するのはＲＧＢソースプロファイル（８０４）、ＣＭＹＫシミュレーションプロファイル（８０６）、出力プロファイル（８０７）、中間調（８０９）の各項目である。
【００６５】
図１４Ａは、ホットフォルダアプリケーションの印刷設定と、デバイス側の情報の対応関係を示す図である。出力用紙サイズ（７０４）及び用紙タイプ（７０５）は、図１２の用紙情報（１２１４）が対応している。また、ＲＧＢソースプロファイル（８０４）、ＣＭＹＫシミュレーションプロファイル（８０６）、出力プロファイル（８０７）は、プロファイル情報１２１２が対応している。そして、中間調はスクリーンデータ１２１３が対応し、排紙方法はフィニッシャ情報１２２０が対応している。
【００６６】
図１４Ｂは、デバイスから取得する状態情報を例示する図である。図１４Ｂにおいて、プロファイル情報のＲＧＢソースプロファイルは「ｓＲＧＢ」と「ｇａｍｍａ １．８ Ｍｏｎｉｔｏｒ」が組み込まれている。また、プロファイル情報のＣＭＹＫシミュレーションプロファイルは「ＪａｐａｎＣｏｌｏｒ」、「ＳＷＯＰ」が組み込まれている。また、出力プロファイルは「ＯｕｔｐｕｔＰｒｏｆｉｌｅ(Ｄｅｆａｕｌｔ)」が組み込まれている。
【００６７】
更に、中間調（Ｈａｌｆｔｏｎｅｓ）は「Ｓｃｒｅｅｎ１」、「Ｓｃｒｅｅｎ２」、「Ｅｒｒｏｒ Ｄｉｆｆｕｓｉｏｎ」がデバイス（プリンタ）１２０８に組み込まれている。
【００６８】
また、排出方法の設定では、プリンタのカセットは２つ有り、カセット１はＡ４普通紙（Ａ４  ｎｏｒｍａｌ）、カセット２はＡ３光沢紙（Ａ３  ｐｈｏｔｏ  ｐａｐｅｒ）が装填されている。デバイス（プリンタ）に接続されているフィニッシャ（後処理装置）は、名称が「Ｆｉｎｉｓｈｅｒ-Ａ」である。
【００６９】
図１４Ｂに示す状態をデバイス状態リストで表すと、図１５のようになる。表現形式は、ジョブチケット（例えば、図９）と同様にＸＭＬ形式で記述しているが、この形式の限定されず、例えば、ＨＴＭＬ、ＳＧＭＬ等の構造化文書の記載により、表現することが可能である。
【００７０】
また、本実施形態ではプリンタ１２０８と接続するフィニッシャ１２１５のデバイス情報をまとめて記述しているが、プリンタ１２０８とフィニッシャ１２１５とを、それぞれ独立したデバイスとして区別して記述してもよい。
【００７１】
（デバイス状態リスト管理テーブル）
デバイス状態リスト制御部１２１７は、生成されたデバイス状態リストと、ターゲットのホットフォルダのフォルダパスと、ターゲットプリンタとを対応付けたデバイス状態リスト管理テーブル１２１６を生成する。デバイス状態リスト管理テーブルは、ホットフォルダアプリメーション１２０２内に保持される。図２６は、デバイス状態リスト管理テーブル２６０１の構成を例示する図である。デバイス状態リスト管理テーブル２６０１は、ターゲットとなるホットフォルダのフォルダパス２６０２と、出力先となるターゲットプリンタを特定するためのアドレス情報２６０３（例えば、ＩＰアドレス）、そして、デバイス状態リスト２６０４を対応付ける。
【００７２】
図２６において、ターゲットホットフォルダのフォルダパスはフルパス、ターゲットプリンタは指定されたＩＰアドレス、デバイス状態リストを格納するディレクトリは予め定めているため、ファイル名のみの記載となっている。
【００７３】
ホットフォルダアプリケーション１２０２はユーザがあるホットフォルダにファイルをドロップしたとき、そのフォルダ名称をキーとして、デバイス状態リスト管理テーブルからターゲットのプリンタおよび対応するデバイス状態リストを知ることが可能となる。
【００７４】
（ホットフォルダの処理）
次に、本発明の実施形態に係るホットフォルダの処理フローについて、図１６のフローチャートを参照して説明する。このフローチャートは、ホットフォルダアプリケーション１２０２の全体的な制御の下、ジョブチケット制御部１２０６、デバイス状態リスト制御部１２１７、ＵＩ制御部１２０４により実行される。
【００７５】
まず、ステップＳ１６０１において、ホットフォルダにファイル（データ）が投入されたか否かの判定を行う。
【００７６】
ステップＳ１６０１において、ファイル（データ）が投入されない場合（Ｓ１６０１−ＮＯ）、ファイル（データ）投入の待機状態となる。
【００７７】
ファイル（データ）が投入された場合（Ｓ１６０１−ＹＥＳ）、処理はステップＳ１６０２へ進められ、ジョブチケット管理テーブル１２０３（図１０を参照）を検索して対応するホットフォルダに設定されたジョブチケットを取得する。例えば、図１０のジョブチケット管理テーブルに示すように、ホットフォルダが指定されると、これに対応するジョブチケットを特定することが可能である。
【００７８】
次に、ステップＳ１６０４において、先に図１４Ａ、Ｂ及び図１５の参照により説明ように、現在のデバイスに設定されている状態情報を取得する。
【００７９】
ステップＳ１６０５において、デバイス状態リスト管理テーブル１２０６（図２６）を検索して、対応するホットフォルダのデバイス状態リストを取得する。ここで取得するデバイス状態リストは、デバイス状態リスト管理テーブルが更新されていない場合、ホットフォルダ作成時のデバイス状態リストとなる。デバイス状態リスト管理テーブルが更新されている場合、更新後の最新のデバイス状態リストが取得される。
【００８０】
そして、ステップＳ１６０７において、デバイス状態リスト制御部１２１７は、対応するホットフォルダのデバイス状態リスト（Ｓ１６０５）と、現在のデバイスの状態情報（Ｓ１６０４）とを比較する。
【００８１】
ステップＳ１６０８において、ステップＳ１６０５で取得したデバイス状態リストと現在のデバイスの状態情報とが一致する場合、ホットフォルダアプリケーション１２０２は、デバイスの状態が変更されていないと判定する。デバイスの状態が変更されていない場合（Ｓ１６０８−Ｎｏ）、処理はステップＳ１６１１に進められ、ホットフォルダに投入されたファイル（データ）は、指定されたターゲットプリンタ（図１２の場合、１２０８）に送信される。
【００８２】
一方、ステップＳ１６０８の判定において、ステップＳ１６０５で取得したデバイス状態リストと現在のデバイスの状態情報とが一致しない場合、ホットフォルダアプリケーション１２０２は、デバイスの状態が変更されていると判定する。
【００８３】
デバイスの状態が変更されている場合（Ｓ１６０８−Ｙｅｓ）、処理はステップＳ１６０９に進められ、ホットフォルダアプリケーション１２０２は、ユーザに印刷属性の変更を促すユーザインタフェース（ＵＩ）をＣＲＴ１１０に表示する。
【００８４】
ＵＩから印刷属性の変更がなされない場合（Ｓ１６０９−Ｎｏ）、処理はステップＳ１６１１に進められ、印刷属性が変更されない状態でジョブの送信が実行される（Ｓ１６１１）。
【００８５】
一方、ステップＳ１６０９において、ＵＩから印刷属性が変更された場合、処理はステップＳ１６１０及びＳ１６１２に進められる。
【００８６】
ステップＳ１６１０において、ユーザが変更した印刷属性の情報を元にジョブチケット制御部１２０６がジョブチケットの再作成を行い、ステップＳ１６１１において、指定されたターゲットプリンタにジョブが送信される。
【００８７】
ステップＳ１６１０において、ジョブチケット制御部１２０６は、再作成したジョブチケットを、ジョブチケット管理テーブル１２０３に保存して、ジョブチケット管理テーブル１２０３を更新する（Ｓ１６７０）。次回のジョブ投入時は、ジョブチケット管理テーブル１２０３から、更新されたジョブチケットが取得される。
【００８８】
また、ステップＳ１６１２において、デバイス状態リスト制御部１２１７はユーザにより変更された印刷属性の情報を元にデバイス状態リストの再作成を行い、デバイス状態リスト１２１６の情報を更新する（Ｓ１６８０）。更新されたデバイス状態リスト１２１６は、ステップＳ１６０９において変更された印刷属性に基づくものであり、再作成されたジョブチケットに対応したものとなる。
【００８９】
例えば、続けてファイル（データ）をホットフォルダに投入した場合、現在のデバイス状態の情報と、デバイス状態リストの情報とは、一致したものとなり、連続してターゲットプリンタとして指定されているプリンタにジョブを送信することが可能になる。
【００９０】
（ＵＩ表示）
ステップＳ１６０９において表示される印刷属性の変更を促すＵＩの表示について説明する。図１８は、ホットフォルダ作成時において、ページ設定を入力するためのＵＩであり、図１９は、ホットフォルダ作成時における印刷品質を設定するためのＵＩである。ここで入力された情報に基づいて、印刷属性が設定される。ここでは、初期状態として、ホットフォルダ作成時のデバイス状態を示す情報として、図１４Ｂに示すデバイス情報が設定されているものとする。また、その後デバイス側の状態が変更されて、図１７に示すようなデバイス状態になっているとする。
【００９１】
デバイス状態リスト制御部１２１７は、デバイスの状態が変更された項目を図１４Ｂと図１７の各項目について比較して、変更の有無を判定する。図１４Ｂと図１７における変更点は、１７０１〜１７０３に示す３点である。すなわち、ホットフォルダ作成時（図１４Ｂ）に比べて、シシミュレーションプロファイル（Ｓｉｍｕｌａｔｉｏｎ Ｐｒｏｆｉｌｅ）に「Ｅｕｒｏ Ｓｃａｌｅ」が追加されている（１７０１）。また、カセット２はＡ３の光沢紙からＡ３普通紙（Ａ３  ｎｏｒｍａｌ）に変更されている（１７０２）。更に、フィニッシャ１２１５は取り外されたため「ｎｏｎｅ」（削除）となっている（１７０３）。
【００９２】
出力用紙サイズは、図１８において「Ａ３」と設定され（１８０１）、用紙タイプは「光沢紙」と設定されている（１８０２）。また、排紙方法は「ステイプル」が指定されている（１８０３）。更に、シミュレーションプロファイルは、図１９において、「Ｊａｐａｎ  Ｃｏｌｏｒ」（１９０１）と設定されている。
【００９３】
ＵＩ制御部１２０４は、デバイス状態リスト制御部１２１７による判定結果に従い出力用紙サイズ１８０１、用紙タイプ１８０２及び排紙方法１８０３、シミュレーションプロファイルを設定するためのＵＩをＣＲＴ１１０に表示するための表示制御を行う。
【００９４】
図２０は、シミュレーションプロファイルを追加するためのＵＩであり、初期状態の設定（Ｊａｐａｎ  Ｃｏｌｏｒ）２０１０に、追加されたシミュレーションプロファイルとして、「Ｅｕｒｏ Ｓｃａｌｅ」（２０２０）が追加されている。このＵＩから追加されたシミュレーションプロファイルとして、「Ｅｕｒｏ Ｓｃａｌｅ」を選択して、実行ボタン２０３０が押下されると、追加されたデバイス状態を反映して、デバイス状態リストが更新される。
【００９５】
図２１は、紙種を変更するためのＵＩであり、初期状態の設定（Ａ３光沢紙）に、変更された紙種として「Ａ３普通紙」（２１２０）が追加されている。このＵＩから変更された紙種を選択して、実行ボタン２１３０が押下されると、変更されたデバイス状態を反映して、デバイス状態リストが更新される。
【００９６】
図２２は、フィニッシャの削除を反映するためのＵＩである。フィニッシャが取り外されたため、フィニッシャの機能である「ステイプルの表記」（図１８の１８０３を参照）が削除され、プリンタ単体で可能なソート処理（２２１０）等が選択可能となる。選択された状態で実行ボタン２２２０が押下されると、変更されたデバイス状態を反映して、デバイス状態リストが更新される。    ここで、デバイス状態リスト制御部１２１７は、状態変更について、選択肢が一つしかない場合は、警告メッセージを表示する等してデバイス状態リストの更新を自動的に行うことも可能である。デバイス状態リスト制御部１２１７は、印刷属性の設定に矛盾が生じるか否か判定することが可能であり、印刷属性に矛盾が生じる場合、ユーザに対して、警告メッセージなどを表示して、異常状態を報知することも可能である。ジョブチケット制御部１２０６は、対象となる印刷属性が存在しないジョブチケットを再作成することも可能である。
【００９７】
本実施形態に拠れば、ホットフォルダの印刷属性が現在のデバイスの状態情報の変更により整合しない場合でも、状態情報の変更に応じた印刷属性の更新とデバイス状態リストの再作成により、現在のデバイスの状態情報との整合を計ることが可能になる。
【００９８】
本実施形態に拠れば、デバイスの状態変化（設定の追加、変更、デバイスの取り外し等）に対する動的な対応を可能にする情報処理技術の提供が可能になる。
【００９９】
あるいは、本実施形態に拠れば、デバイスの状態変化やリソースの変更に対して動的な対応が可能となるため、ユーザの意図に沿わない出力結果となることを防ぐことができ、効率的な印刷を行うための情報処理が可能になる。
【０１００】
（第２実施形態）
次に、第２実施形態として、ホットフォルダアプリケーションに拠らず、プリンタドライバ上からホットフォルダを作成する処理について説明する。
【０１０１】
図２３はプリンタドライバ上からホットフォルダを作成する処理の流れを説明するフローチャートである。
【０１０２】
まず、ステップＳ２３０１において、ホストコンピュータ上のプリンタドライバを起動する。プリンタドライバの起動により、ホットフォルダを作成するためのＵＩがＣＲＴ１１０に表示される。
【０１０３】
ステップＳ２３０２において、プリンタドライバの起動により、表示されたＵＩから、ホットフォルダ作成ボタン（不図示）が押下されたか判定する。
【０１０４】
ホットフォルダ作成ボタンが押下されなかった場合（Ｓ２３０２−Ｎｏ）、処理はステップＳ２３０５に進められ、プリンタドライバの設定に従って、印刷が実行される（Ｓ２３０５）。
【０１０５】
一方、ステップＳ２３０２に判定において、ホットフォルダ作成ボタンが押下された場合（Ｓ２３０２−ＹＥＳ）、処理はステップＳ２３０２に進められ、プリンタドライバはホットフォルダ設定画面を起動する（Ｓ２３０３）。
ここで、起動されるホットフォルダ設定画面は、例えば、図６に示すダイアログであり、この画面より、ホットフォルダとして設定をするターゲットフォルダのフォルダパス、ターゲットプリンタを指定することができる。
【０１０６】
そして、ステップＳ２３０４において、ホットフォルダ設定画面より設定された内容に従って、プリンタドライバは、ホットフォルダを作成する。ここで作成されるホットフォルダ及びジョブ投入後のホットフォルダの処理は、第１実施形態で説明した内容と同様であり、ジョブチケット（図９）、デバイス状態リスト（図１４Ｂ、図１５）が作成される。そして、デバイスの状態に変更が生じている場合、図１６のフローチャートに従って、プリンタドライバの制御の下、ジョブチケット管理テーブル（１２０３）及びデバイス状態リスト管理テーブル（１２１６）は更新される。
【０１０７】
図２４はプリンタドライバを含むホストコンピュータ内部のソフトウエアの構成を示した図である。ホストコンピュータ２４０１にはＯＳ２４０２がインストールされている。プリンタドライバ２４０４やアプリケーションプログラム２４０７はＯＳ２４０２上にインストールされ、ＯＳ２４０２により制御される。
【０１０８】
プリンタドライバ２４０４は、ユーザＩ／Ｆ（ＵＩ）の表示や設定の保存などを行うユーザＩ／Ｆ（ＵＩ）ドライバ２４０５を含む。また、プリンタドライバ２４０４は、アプリケーションプログラム２４０７からＯＳ２４０２を通して指示される印刷描画命令をプリンタが解釈可能なコードに変換するグラフィックドライバ２４０６を含む。ＵＩドライバ２４０５は、アプリケーションプログラム２４０７からＯＳ２４０２を通して印刷設定が指示されたとき、印刷設定ダイアログ、プロパティシートを表示する。ここでは、印刷設定ダイアログ、プロパティシートの例については省略する。
【０１０９】
ＯＳ２４０２が管轄する保存領域内に、プリンタドライバの設定保存領域２４０３があり、ＵＩドライバ２４０５にてユーザが設定した印刷属性はこのプリンタドライバ設定保存領域２４０３に保存される。また、ＵＩドライバ２４０５、グラフィックドライバ２４０６、アプリケーションプログラム２４０７はＯＳ２４０２を介してこのプリンタドライバ設定保存領域２４０３にアクセスすることができ、ユーザが設定した印刷属性を読み取ることが可能である。
【０１１０】
更に、ホストコンピュータ２４０１側の通信Ｉ／Ｆ２４０９とプリンタ２４０８側の通信Ｉ／Ｆ２４１０とはネットワークなどの通信媒体で接続されているものとする。グラフィックドライバ２４０６はＯＳ２４０２を介してプリンタ２４０８に印刷データの送信が可能であり、またプリンタ２４０８の状態情報を、ＯＳ２４０２を介して取得することも可能である。
【０１１１】
（ホットフォルダとプリンタドライバの関係）
図２５はホットフォルダとプリンタドライバの関係を示す図である。ここで、ＯＳ２５０２は、図２４におけるプリンタドライバ設定保存領域２４０３に加えて、生成されたジョブチケットを保存するためのジョブチケット保存領域１２０７と、デバイス状態リストを保存するための保存領域１２１８を備える。ここで、ジョブチケット保存領域１２０７、デバイス状態リスト保存領域１２１８に保存されるジョブチケット及びデバイス状態リストは、プリンタドライバ２４０４により生成されるものである。
【０１１２】
プリンタドライバ２４０４は、ホットフォルダ２５０４と通信するために、外部通信制御部２５０５とエキスポート関数２５０７が具備されている。またホットフォルダ２５０４も同様に外部通信制御部２５０６とエキスポート関数２５０８が具備されており、これらによりプリンタドライバ２４０４と通信が可能である。この構成により、プリンタドライバ２４０４とホットフォルダ２５０４は規定された手順、データ構造により指示および情報の交換が可能となる。
【０１１３】
プリンタドライバ２４０４が生成したホットフォルダに投入されたファイル（データ）の処理は、第１実施形態で説明した、図１６のフローチャートと同様の処理の流れになるので、ここでは詳細な説明は省略する。
【０１１４】
尚、図１６の処理において参照されるジョブチケット管理テーブル１２０３、デバイス状態管理テーブル１２１６は、プリンタドライバ２４０４中に構成してもよく、あるいは、図２５に示すようにＯＳ２５０２上に構成することも可能である。ＯＳ２５０２上にジョブチケット管理テーブル１２０３及びデバイス状態リスト管理テーブル１２１６が設けられた場合、プリンタドライバ２４０４は、ＯＳ２５０２を介して、これらのテーブルを参照することができるものとする。
【０１１５】
また、プリンタドライバ２４０４は、デバイスの状態に変更が生じた場合、この変更に対応する印刷属性の変更に基づき、ジョブチケット及びデバイス状態リストの再作成を行う。更に、プリンタドライバ２４０４は、再作成したジョブチケット及びデバイス状態リストに基づき、ジョブチケット管理テーブル１２０３及びデバイス状態リスト管理テーブル１２１６の更新を行う。
【０１１６】
本実施形態によれば、プリンタドライバを処理の主体として、デバイスの状態変化（設定の追加、変更、デバイスの取り外し等）に対する動的な対応を可能にする情報処理技術の提供が可能になる。
あるいは、本実施形態に拠れば、デバイスの状態変化やリソースの変更に対して動的な対応が可能となるため、ユーザの意図に沿わない出力結果となることを防ぐことができ、効率的な印刷を行うための情報処理が可能になる。
【０１１７】
（第３実施形態）
次に、ユーザが指定する印刷属性として保存する「お気に入り設定」に対して本発明を適用した場合の第３実施形態について説明する。
【０１１８】
図２７はプリンタドライバを含むホストコンピュータ内部のソフトウエアの構成を示した図である。
【０１１９】
ホストコンピュータ２７０１にはプリンタドライバ２７１３やアプリケーションプログラム２７０７がインストールされ、ＯＳ２７０２により制御される。
【０１２０】
プリンタドライバ２７１３は、図２４の構成と同様に、ユーザＩ／Ｆ（ＵＩ）の表示や設定の保存などを行うユーザＩ／Ｆ（ＵＩ）ドライバ２４０５を含む。また、プリンタドライバ２７１３は、アプリケーションプログラム２４０７からＯＳ２４０２を通して指示される印刷描画命令をプリンタが解釈可能なコードに変換するグラフィックドライバ２４０６を含む。更に、プリンタドライバ２７１３は、デバイス状態リスト管理テーブル２７１２を含む。デバイス状態リスト管理テーブル２７１２は、プリンタ２７０８から取得したデバイスの状態情報に基づくデバイス状態リストを管理することが可能である。
【０１２１】
図３１は、本実施形態において、プリンタドライバ２７１３に構成されるデバイス状態リスト管理テーブルを例示する図である。図３１において、ユーザにより設定された印刷属性（３１０１）と、ターゲットプリンタ（３１０２）そしてデバイスの状態情報に基づくデバイス状態リスト（３１０３）が対応付けられる。プリンタドライバ２７１３は、例えば、ある印刷属性を「お気に入り」情報として読み出すと、これに対応するターゲットプリンタを特定するためのアドレス情報（例えば、ＩＰアドレス）と、印刷属性に対応するデバイス状態リストを特定することが可能である。
【０１２２】
ＯＳ２７０２上には、プリンタドライバ設定保存領域２４０３の他、デバイス状態リスト保存領域２７１１が設けられている。プリンタドライバ２７１３が取得したデバイスの状態情報の基づくデバイス状態リスト（例えば図１５）は、ＯＳ２７０２を介して、デバイス状態リスト保存領域２７１１に保存される。
【０１２３】
また、プリンタドライバ２７１３上でユーザが設定した印刷属性は「お気に入り」として、プリンタドライバ設定保存領域２４０３に保存される。設定された印刷属性（「お気に入り」情報）は、ＯＳ２４０２を介してプリンタドライバ２７１３上で、保存及び更新を管理することが可能である。
【０１２４】
プリンタドライバ２７１３は、ユーザにより設定された印刷属性（「お気に入り」情報）を、デバイスから取得する情報とは異なる属性の情報として管理する。
【０１２５】
図２８は、プリンタドライバ２７１３の制御の下に実行される「お気に入り」情報の保存とデバイスの状態情報の取得、デバイス状態リスト管理テーブルの生成に関する処理の流れを説明するフローチャートである。
【０１２６】
まず、ステップＳ２８０１において、プリンタドライバ２７１３のダイアログ画面の起動を行う。ステップＳ２８０２において、ユーザが印刷属性の設定を行う。この印刷属性は、ユーザにより設定される「お気に入り」情報となる。
【０１２７】
ステップＳ２８０３において、先のステップＳ２８０２において、設定された印刷属性（「お気に入り」情報）の保存が指示されたか判定する。ステップＳ２８０３の判定において、印刷属性（「お気に入り」情報）の保存が指示されていない場合（Ｓ２８０３−Ｎｏ）、処理はステップＳ２８０７に進められる。印刷を実行する場合（Ｓ２８０７−Ｙｅｓ）、処理はステップＳ２８０８に進められ、印刷が実行される。
【０１２８】
一方、ステップＳ２８０３の判定において、印刷属性（「お気に入り」情報）の保存が指示された場合（Ｓ２８０３−ＹＥＳ）、処理はステップＳ２８０４に進められる。そして、プリンタドライバ２７１３は、ＯＳ２７０２を介して、プリンタドライバ設定保存領域２４０３に印刷属性（「お気に入り」情報）を保存する。
【０１２９】
ステップＳ２８０５において、プリンタドライバ２７１３は、デバイス（プリンタ）２４０８のデバイスの情報を取得する。ここで、ホストコンピュータ２７０１側の通信Ｉ／Ｆ２７０９とプリンタ２４０８側の通信Ｉ／Ｆ２７１０とはネットワーク等の通信媒体で接続されているものとする。プリンタドライバ２７１３はＯＳ２７０２を介してプリンタ２４０８に印刷データの送信が可能である。また、プリンタドライバ２７１３はプリンタ２４０８の状態情報を、ＯＳ２７０２を介して取得することも可能である。
【０１３０】
説明を図２８に戻し、ステップＳ２８０６において、プリンタドライバ２７１３は、デバイス状態リストの生成及びデバイス状態リスト管理テーブルを生成する。これらの処理は、図１３のステップＳ１３０８に対応するものである。
【０１３１】
ステップＳ２８０７において、印刷を実行するか判定し、印刷を行わない場合（Ｓ２８０７−Ｎｏ）、処理を終了する。一方、印刷を行う場合（Ｓ２８０７−ＹＥＳ）、処理をステップＳ２８０８に進めて、印刷を実行し（Ｓ２８０８）、処理を終了する。
【０１３２】
図２９は、ユーザの設定による印刷属性（「お気に入り」情報）とデバイスから取得した情報に基づく印刷処理の流れを説明するフローチャートである。本処理は、プリンタドライバ２７１３の制御の下、実行される。
【０１３３】
まず、ステップＳ２９０１において、プリンタドライバ２７１３のダイアログ画面をＣＲＴ１１０上に起動する。
【０１３４】
そしてステップＳ２９０２において、プリンタドライバ設定保存領域２４０３に保存された印刷属性（「お気に入り」情報）の呼び出しを行う。
【０１３５】
ステップＳ２９０３において、現在のデバイスの状態情報を取得する。
【０１３６】
一方、ステップＳ２９０４において、プリンタドライバ２７１３は、呼び出した印刷属性に関し、デバイス状態リスト管理テーブル２７１２を検索して、ユーザが設定した印刷属性（「お気に入り」情報）保存時のデバイス状態リストを取得する。例えば、図３１において、印刷属性Ａ（３１０１）が呼び出された場合、対応するデバイス状態リスト（ｄｅｖｉｃｅ＿Ａ＿００１）（３１０３）が取得される。
【０１３７】
そしてステップＳ２９０６において、プリンタドライバ２７１３は、「お気に入り」情報保存時のデバイスの状態情報と、現在のデバイスの状態情報とを比較する。
【０１３８】
そして、ステップＳ２９０７において、両状態情報が一致する場合、プリンタドライバ２７１３は、デバイスの状態は変更されていないと判定する。デバイスの状態が変更されていない場合（Ｓ２９０７−Ｎｏ）、処理はステップＳ２９１２に進められ、印刷が実行される（Ｓ２９１２）。
【０１３９】
一方、ステップＳ２９０７の判定において、「お気に入り」情報保存時のデバイスの状態情報と、現在のデバイスの状態情報とが一致しない場合、プリンタドライバ２７１３は、デバイスの状態が変更されていると判定する。
【０１４０】
デバイスの状態が変更されている場合（Ｓ２９０７−ＹＥＳ）、処理はステップＳ２９０８に進められ、プリンタドライバ２７１３の表示制御の下、印刷属性の変更を促すユーザインタフェース（ＵＩ）３００１がＣＲＴ１１０上に表示される。
【０１４１】
図３０は、ステップＳ２９０８において表示されるＵＩ３００１を例示する図である。ＵＩ３００１は、ユーザが設定した印刷属性（「お気に入り」情報）を変更するための印刷属性変更部３００２を備える。印刷属性変更部３００２には、印刷属性の追加（３００５）、印刷属性の変更（３００６）、印刷属性の削除（３００７）に関する内容を設定することができる。
【０１４２】
ユーザは、印刷属性変更部３００２から印刷属性を設定して（３００５〜３００７）、実行ボタン３００４を押下すると、設定された印刷属性が確定する。
【０１４３】
ユーザが、印刷属性変更部３００２からから、印刷属性（「お気に入り」情報）を変更した場合（Ｓ２９０９−ＹＥＳ）、処理はステップＳ２９１０に進められる。プリンタドライバ２７１３は、プリンタドライバ設定保存領域２４０３に保存された印刷属性（「お気に入り」情報）を更新する（Ｓ２９１０）。この更新の結果は、プリンタドライバ設定保存領域２４０３に保存されている印刷属性に反映される。次回の呼び出しにおいては、更新後の印刷属性が呼び出される。
【０１４４】
ステップＳ２９０９における判定で、印刷属性が変更されない場合（Ｓ２９０９−Ｎｏ）、処理は、ステップＳ２９１２に進められ、印刷が実行される（Ｓ２９１２）。
【０１４５】
ステップＳ２９１０において、プリンタドライバ設定保存領域２４０３に保存された印刷属性（「お気に入り」情報）が更新されると、処理はステップＳ２９１１に進められる。プリンタドライバ２７１３は、印刷属性の変更に対応したデバイス状態リストの再作成を行う。そして、プリンタドライバ２７１３は、再作成したデバイス状態リストに基づいて、デバイス状態リスト管理テーブル２７１２を更新する（Ｓ２９１５）。
【０１４６】
そして、ステップＳ２９１１の処理の終了後、処理はステップＳ２９１２に進められ、変更された印刷属性を反映した印刷処理が実行され(Ｓ２９１２)、処理を終了する。
【０１４７】
本実施形態では、ユーザが設定する印刷属性の例として、「お気に入り」情報を例として説明したが、本発明の趣旨は、この例に限定されるものではない。例えば、デバイスから取得した状態情報とは別に、ユーザによる設定可能な印刷属性に関連する情報であってもよい。
【０１４８】
本実施形態に拠れば、保存されている印刷属性が、現在のデバイスの状態情報の変更により整合しない場合でも、状態情報の変更に応じた印刷属性の更新とデバイス状態リストの再作成により、現在のデバイスの状態情報との整合を計ることが可能になる。
【０１４９】
本実施形態に拠れば、デバイスの状態変化（プリンタにおける設定の追加、変更、デバイスの取り外しに関する情報を少なくとも一つを含む情報の変化等）に対する動的な対応を可能にする情報処理技術の提供が可能になる。
【０１５０】
あるいは、本実施形態に拠れば、デバイスの状態変化やリソース（例えば、デバイスの画像形成プログラムや画像形成回路、デバイスのフィニッシャなどのオプショなどに代表されるデバイス構成）の変更に対して柔軟な対応が可能となるため、ユーザの意図に沿わない出力結果となることを防ぐことができ、効率的な印刷を行うための情報処理が可能になる。
【０１５１】
（他の実施形態）
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給することによっても、達成されることは言うまでもない。また、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【０１５２】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１５３】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【０１５４】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される。また、プログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【０１５５】
【図１Ａ】ホットフォルダを利用して印刷を行うシステムの構成を概略的に示す図である。
【図１Ｂ】情報処理装置（ホストコンピュータ）の構成を説明するブロック図である。
【図２】ホットフォルダを利用した印刷の操作を説明する図である。
【図３】ホットフォルダを利用した印刷の操作を説明する図である。
【図４】ホストコンピュータにインストールされているオペレーティングシステムおよびホットフォルダアプリケーションの概略的な構成を示すブロック図である。
【図５】ユーザがホットフォルダを作成する手順を示した図である。
【図６】ホットフォルダアプリケーションを立ち上げたときに表示されるダイアログの一例を示した図である。
【図７】ホットフォルダの印刷属性を設定するダイアログを示した図である。
【図８】印刷品質設定画面の例を示した図である。
【図９】印刷属性に対するジョブチケットの一例を示す図である。
【図１０】ジョブチケット管理テーブルを示す図である。
【図１１】ホットフォルダにファイルをドロップしたときのホットフォルダの処理手順を示した図である。
【図１２】本実施形態に係る情報処理装置により実行されるホットフォルダアプリケーションの構成を示す図である。
【図１３】本発明の実施形態におけるホットフォルダの作成の流れを説明する図である。
【図１４Ａ】ホットフォルダアプリケーションの印刷設定と、デバイス側の情報の対応関係を示す図である。
【図１４Ｂ】デバイスから取得する状態情報を例示する図である。
【図１５】ＸＭＬ形式で記述したデバイス状態リストの例を示した図である。
【図１６】本発明の実施形態に係るホットフォルダの処理の流れを説明する図である。
【図１７】ジョブ投入時におけるデバイス状態を例示する図である。
【図１８】ホットフォルダを作成した際のページ設定を例示する図である。
【図１９】ホットフォルダを作成した際の印刷品質を例示する図である。
【図２０】シミュレーションプロファイルを追加するためのＵＩである。
【図２１】紙種を変更するためのＵＩである。
【図２２】フィニッシャの削除を反映するためのＵＩである。
【図２３】プリンタドライバ上からホットフォルダを作成する処理の流れを説明するフローチャートである。
【図２４】プリンタドライバを含むホストコンピュータ内部のソフトウエアの構成を示した図である。
【図２５】ホットフォルダとプリンタドライバの関係を示す図である。
【図２６】デバイス状態リスト管理テーブルの構成を例示する図である。
【図２７】プリンタドライバを含むホストコンピュータ内部のソフトウエアの構成を示した図である。
【図２８】プリンタドライバの制御の下に実行される「お気に入り」情報の保存とデバイスの状態情報の取得、デバイス状態リスト管理テーブルの生成に関する処理の流れを説明するフローチャートである。
【図２９】ユーザの設定による印刷属性（「お気に入り」情報）とデバイスから取得した情報に基づく印刷処理の流れを説明するフローチャートである。
【図３０】ステップＳ２９０８において表示されるＵＩ３００１を例示する図である。
【図３１】第３実施形態において、プリンタドライバに構成されるデバイス状態リスト管理テーブルを例示する図である。
【図１Ａ】
0004732113.tif 000002
【図１Ｂ】
0004732113.tif 000003
【図２】
0004732113.tif 000004
【図３】
0004732113.tif 000005
【図４】
0004732113.tif 000006
【図５】
0004732113.tif 000007
【図６】
0004732113.tif 000008
【図７】
0004732113.tif 000009
【図８】
0004732113.tif 000010
【図９】
0004732113.tif 000011
【図１０】
0004732113.tif 000012
【図１１】
0004732113.tif 000013
【図１２】
0004732113.tif 000014
【図１３】
0004732113.tif 000015
【図１４Ａ】
0004732113.tif 000016
【図１４Ｂ】
0004732113.tif 000017
【図１５】
0004732113.tif 000018
【図１６】
0004732113.tif 000019
【図１７】
0004732113.tif 000020
【図１８】
0004732113.tif 000021
【図１９】
0004732113.tif 000022
【図２０】
0004732113.tif 000023
【図２１】
0004732113.tif 000024
【図２２】
0004732113.tif 000025
【図２３】
0004732113.tif 000026
【図２４】
0004732113.tif 000027
【図２５】
0004732113.tif 000028
【図２６】
0004732113.tif 000029
【図２７】
0004732113.tif 000030
【図２８】
0004732113.tif 000031
【図２９】
0004732113.tif 000032
【図３０】
0004732113.tif 000033
【図３１】
0004732113.tif 000034