(57)【要約】【課題】第１のアプリケーションでドライバを選択することで第２のアプリケーションが管理する仮想デバイスオブジェクトへドライバを登録することができる技術を提供すること。【解決手段】情報処理装置１００は、画像処理装置１０１に対応するドライバを選択可能な第１のアプリケーションを用いて、ドライバに対応する仮想デバイスオブジェクトを第２のアプリケーションの管理下にし、作成された仮想デバイスオブジェクトを表示し、第１のアプリケーションでユーザが選択するドライバを抽出して第２のアプリケーションに引き継ぎ、第２のアプリケーションを用いて、ドライバを仮想デバイスオブジェクトに登録し、ユーザがファイルを用いて仮想デバイスオブジェクトを選択した場合、仮想デバイスオブジェクトに登録したドライバを用いてファイルを出力する。【選択図】図８
2014102560.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置に対応するドライバを選択可能な第１のアプリケーションを用いて、前記ドライバに対応する仮想デバイスオブジェクトを第２のアプリケーションの管理下に作成する作成手段と、
作成された前記仮想デバイスオブジェクトを表示する表示手段と、
前記第１のアプリケーションでユーザが選択する前記ドライバを抽出し、前記ドライバを前記第２のアプリケーションに引き継ぐ引き継ぎ手段と、
前記第２のアプリケーションを用いて、前記引き継ぎ手段が引き継ぐ前記ドライバを前記仮想デバイスオブジェクトに登録する登録手段と、
ユーザがファイルを用いて前記仮想デバイスオブジェクトを選択した場合、前記登録手段が前記仮想デバイスオブジェクトに登録した前記ドライバを用いて前記ファイルを出力する出力手段と、を有することを特徴とする情報処理装置。
【請求項２】
前記引き継ぎ手段は、
前記登録手段が登録した前記ドライバである第１のドライバを前記第２のアプリケーションに引き継いだ後、前記第１のドライバに対応する前記画像処理装置の機能に対応する第２のドライバを抽出し、抽出された前記第２のドライバを前記第２のアプリケーションに引き継ぐ
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記引き継ぎ手段は、
前記第２のアプリケーションに引き継がれた前記第１のドライバに設定されたネットワークアドレスと同一のネットワークアドレスが設定されたドライバを抽出し、
前記抽出されたドライバのうち、前記第１のドライバと機能が異なるドライバを前記第２のドライバとして抽出する
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記引き継ぎ手段は、
前記第１のアプリケーションに登録されているドライバのうち、前記第１のドライバに設定されたネットワークアドレスと同一のネットワークアドレスが設定されたドライバが抽出できない場合に、前記情報処理装置のオペレーティングシステムに登録されているドライバのうち、前記第１のドライバに設定されたネットワークアドレスと同一のネットワークアドレスが設定されたドライバを抽出し、
前記抽出されたドライバのうち、前記第１のドライバと機能が異なるドライバを前記第２のドライバとして抽出する
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記引き継ぎ手段は、さらに、前記第２のアプリケーションに登録されているドライバのうち、前記第１のアプリケーションに登録されていないドライバを抽出し、抽出された前記ドライバを前記第１のアプリケーションに登録する
ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記表示手段は作成された前記仮想デバイスオブジェクトを前記情報処理装置が有する第１の画面に表示し、
前記作成手段は、
前記第１のアプリケーションを用いて、少なくとも前記画像処理装置を示すアイコンを含み、前記画像処理装置に対応する仮想デバイスオブジェクトの作成を指示するための操作領域を有する第２の画面を表示し、
前記操作領域に含まれるアイコンが選択された場合に、該アイコンが示す画像処理装置のネットワークアドレスが設定されているドライバの機能を該ドライバに問い合わせることで確認し、
前記確認したドライバの機能が予め決められた機能と同一である場合に、前記アイコンが示す画像処理装置の仮想デバイスオブジェクトの作成が可能であると判断して、前記仮想デバイスオブジェクトの作成を指示するための操作項目を表示する
ことを特徴とする請求項１乃至５のいずれか一項に記載の情報処理装置。
【請求項７】
前記引き継ぎ手段は、
前記第１の画面に表示された前記仮想デバイスオブジェクトが、前記第２の画面にドラッグアンドドロップ操作が行われたことを検知した際に、前記第２の画面にドロップされた仮想デバイスオブジェクトに登録されているドライバを抽出し、
前記抽出されたドライバが前記第１のアプリケーションに登録されているか否かを判断し、
前記抽出されたドライバが前記第１のアプリケーションに登録されていない場合に、前記抽出されたドライバを前記第１のアプリケーションに引き継ぐ
ことを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記作成手段は、さらに、前記第２の画面にドロップされた仮想デバイスオブジェクトに設定されているドライバが前記第１のアプリケーションに引き継がれた場合に、前記第２の画面の前記操作領域に、前記仮想デバイスオブジェクトに対応する画像処理装置を示すアイコンを表示する
ことを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記第１または第２のアプリケーションに登録されたドライバの登録を解除する解除手段をさらに備え、
前記解除手段は、前記引き継ぎ手段が前記第１または第２のアプリケーションの一方から他方に対し前記ドライバを引き継いだ後に、引き継ぎ元に登録された前記ドライバの登録を解除する
ことを特徴とする請求項１乃至８のいずれか一項に記載の情報処理装置。
【請求項１０】
前記画像処理装置により実行される機能に対応するドライバは、少なくともプリンタ用ドライバまたはＦＡＸ用ドライバを含む
ことを特徴とする請求項１乃至９のいずれか一項に記載の情報処理装置。
【請求項１１】
コンピュータを、
画像処理装置に対応するドライバを選択可能な第１のアプリケーションを用いて、前記ドライバに対応する仮想デバイスオブジェクトを第２のアプリケーションの管理下に作成する作成手段と、
作成された前記仮想デバイスオブジェクトを表示する表示手段と、
前記第１のアプリケーションでユーザが選択する前記ドライバを抽出し、前記ドライバを前記第２のアプリケーションに引き継ぐ引き継ぎ手段と、
前記第２のアプリケーションを用いて、前記引き継ぎ手段が引き継ぐ前記ドライバを前記仮想デバイスオブジェクトに登録する登録手段と、
ユーザがファイルを用いて前記仮想デバイスオブジェクトを選択した場合、前記登録手段が前記仮想デバイスオブジェクトに登録した前記ドライバを用いて前記ファイルを出力する出力手段と、として機能させることを特徴とするプログラム。
【請求項１２】
画像処理装置に対応するドライバを選択可能な第１のアプリケーションを用いて、前記ドライバに対応する仮想デバイスオブジェクトを第２のアプリケーションの管理下に作成する作成工程と、
作成された前記仮想デバイスオブジェクトを表示する表示工程と、
前記第１のアプリケーションでユーザが選択する前記ドライバを抽出し、前記ドライバを前記第２のアプリケーションに引き継ぐ引き継ぎ工程と、
前記第２のアプリケーションを用いて、前記引き継ぎ工程が引き継ぐ前記ドライバを前記仮想デバイスオブジェクトに登録する登録工程と、
ユーザがファイルを用いて前記仮想デバイスオブジェクトを選択した場合、前記登録工程が前記仮想デバイスオブジェクトに登録した前記ドライバを用いて前記ファイルを出力する出力工程と、を有することを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、制御方法およびプログラムに関する。
【背景技術】
【０００２】
ＰＣなどの情報処理装置からプリンタやＦＡＸ装置などの複合機デバイスに出力を指示する場合、ユーザは、出力対象の文書をアプリケーションを用いて情報処理装置が備える画面上に開く。そして、ユーザはプリンタドライバを介して文書の印刷を指示することが一般的である。近年の複合機デバイスは、印刷、ＦＡＸ、スキャンといった様々な機能を備える。一般的に、機能に応じた各種ドライバが存在し、ユーザは機能に応じて適するドライバを使用する。例えば、印刷時はプリンタドライバ、ＦＡＸ送信時はＦＡＸドライバを使用する。また、複合機デバイスへの出力の利便性をより向上させるため、複数のドライバを仮想デバイスアプリケーションとして統合する技術が提案されている。
【０００３】
例えば、特許文献１は、ネットワークに接続された複数の印刷装置を連携させた仮想分散プリンタを用いて印刷する機能を実現する分散印刷制御装置を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−２２１７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献１が開示する分散印刷制御装置を用いた場合、複数の印刷装置に対応するプリンタドライバを、ユーザは個別に仮想分散プリンタに登録する作業が必要となる。また、アプリケーションからプリンタドライバを引き継いで仮想分散プリンタを作成することについては開示がない。
【０００６】
ここで、第１のアプリケーションがユーザからドライバの選択を受付けることができ、第２のアプリケーションは何らかのドライバが登録可能な仮想デバイスオブジェクトを管理している環境を想定する。特許文献１はこのような環境を想定していないため、ユーザが第１のアプリケーションにおけるドライバの選択と仮想デバイスオブジェクトへのドライバの登録をそれぞれ別に行わなければならない虞がある。
【０００７】
本発明は、第１のアプリケーションでドライバを選択することで第２のアプリケーションが管理する仮想デバイスオブジェクトへドライバを登録することができる技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記の目的を達成するための本発明に係る情報処理装置は、画像処理装置に対応するドライバを選択可能な第１のアプリケーションを用いて、前記ドライバに対応する仮想デバイスオブジェクトを第２のアプリケーションの管理下に作成する作成手段と、作成された前記仮想デバイスオブジェクトを表示する表示手段と、前記第１のアプリケーションでユーザが選択する前記ドライバを抽出し、前記ドライバを前記第２のアプリケーションに引き継ぐ引き継ぎ手段と、前記第２のアプリケーションを用いて、前記引き継ぎ手段が引き継ぐ前記ドライバを前記仮想デバイスオブジェクトに登録する登録手段と、ユーザがファイルを用いて前記仮想デバイスオブジェクトを選択した場合、前記登録手段が前記仮想デバイスオブジェクトに登録した前記ドライバを用いて前記ファイルを出力する出力手段と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、第１のアプリケーションでドライバを選択することで第２のアプリケーションが管理する仮想デバイスオブジェクトへドライバを登録することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】本実施形態の情報処理システムの構成を示す模式図である。
【図２】情報処理装置のハードウェア構成を示す模式図である。
【図３】出力機能の設定を行うためのＵＩ表示の一例を示す模式図である。
【図４】情報処理装置のソフトウェア構成を示す模式図である。
【図５】文書管理アプリケーションのＵＩ表示の一例を示す模式図である。
【図６】仮想デバイスオブジェクトの論理的な構成の一例を示す模式図である。
【図７】仮想デバイスオブジェクトのＵＩ表示の一例を示す図である。
【図８】仮想デバイスオブジェクトの生成処理手順を示すフロー図である。
【図９】仮想デバイスオブジェクトの作成可否判定処理手順を示すフロー図である。
【図１０】仮想デバイスオブジェクトの新規作成処理手順を示すフロー図である。
【図１１】別機能ドライバの探索処理手順を示すフロー図である。
【図１２】プリンタ用ドライバ設定の引き継ぎ処理手順を示すフロー図である。
【図１３】ＦＡＸ用ドライバ設定の引き継ぎ処理手順を示すフロー図である。
【図１４】文書管理アプリケーションへの自動登録処理手順を示すフロー図である。
【図１５】文書管理アプリケーションから登録機能を解除する処理手順を示すフロー図である。
【図１６】仮想デバイスオブジェクトの新規作成処理手順を示すフロー図である。
【図１７】未登録ドライバの登録処理手順を示すフロー図である。
【発明を実施するための形態】
【００１１】
＜システム構成＞
図１は、本発明の一実施形態の情報処理システムの構成を示す。図１に示す情報処理システムは、ＰＣなどの情報処理装置とプリンタやＦＡＸなどの複合機デバイスとを備え、各装置はネットワークを介して通信可能である。ＰＣは、ユーザが使用するコンピュータであり、Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒの略称である。図１に示す情報処理装置１００は、複合機デバイス（ＭＦＰ１０１及びＭＦＰ１０２）に対して印刷やＦＡＸ送信を指示する、ＭＦＰは、Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌの略称である。ＭＦＰ１０１及びＭＦＰ１０２は複合機であって、プリンタ機能、ＦＡＸ機能、コピー機能、スキャナ機能、ファイル送信機能等を備える。
【００１２】
なお、情報処理装置１００には、所定のオペレーティングシステム（ＯＳ）がインストールされ、かつ、特定の機能処理を実行する各種アプリケーションがインストールされている。ここで、特定の機能処理とは、文書処理、表計算処理、プレゼンテーション処理、画像処理、図形処理等が含まれ、各アプリケーションはそれぞれ独自のデータ構造（ファイル構造）を備える。さらに、ＯＳは、各ファイルの識別子を参照して対応するアプリケーションに印刷指示を行える構成となっている。
【００１３】
また、本実施形態を示す情報処理装置１００には、文書ファイルの管理のための文書管理アプリケーション４００ならびに複合機デバイスを利用するための仮想デバイスアプリケーション４１０がインストールされている。なお、文書管理アプリケーション４００ならびに仮想デバイスアプリケーション４１０についての詳細は、図４を用いて後述する。１０３は上記装置が接続されているネットワークであって、ネットワーク１０３を介して上記装置は情報の相互通信を行っている。
【００１４】
＜情報処理装置のハードウェア構成＞
図２は、図１に示す情報処理装置１００のハードウェア構成を示す。図２に示すように、情報処理装置１００は、ＣＰＵ２０１、表示部２０２、ＲＡＭ２０３、ＲＯＭ２０４、入力デバイス２０５、外部メモリ２０６、ＩＯ２０７を備える。ＣＰＵ２０１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）は、各種プログラムを実行し、様々な機能を実現するユニットである。ＲＡＭ２０３（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）は、各種プログラムや実行情報を保管し、ＣＰＵ２０２の一時的な作業記憶領域として利用されるユニットである。ＲＯＭ２０４（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）は、各種プログラムを記憶するユニットである。ＣＰＵ２０２は、ＲＯＭ２０４に記憶されているプログラムをＲＡＭ２０３にロードしプログラムを実行する。
【００１５】
表示部２０２は、ユーザに出力情報の視覚的なフィードバックを与える。入力デバイス２０５は、キーボードやポインティングデバイスなどのユーザ操作入力を受付ける。外部メモリ２０６には、例えばＨＤＤ（ハードディスクドライブ）やＦＤＤ（フレキシブルディスクドライブ）など任意のメモリが使用される。Ｉｎｐｕｔ／Ｏｕｔｐｕｔインターフェース２０７は、外部機器との通信を行う。各ユニットは、バスを介して各処理部とデータを送受信することが可能である。なお、周辺機器との接続形態は有線／無線を問わない。情報処理装置１００は、ＩＯ２０７を介してネットワーク１０３により複合機デバイス１０１及び１０２と接続する。
【００１６】
＜文書管理アプリケーションのソフトウェア構成＞
図４は、情報処理装置１００が有する文書管理アプリケーション４００と仮想デバイスアプリケーション４１０の機能構成の一例を示す。図４（Ａ）に示す文書管理アプリケーション４００は、アプリケーション制御部４０１、画面表示管理部４０２、ＵＩ入力管理部４０３、仮想デバイスアプリケーション管理部４０４、出力制御部４０５、出力管理部４０６、出力機能管理部４０７を備える。
【００１７】
アプリケーション制御部４０１は、アプリケーション内部の各処理部の連携を統合制御する。画面表示管理部４０２は、文書管理アプリケーション４００のＧＵＩとして画面表示制御を行う。ＵＩ入力管理部４０３は、画面表示管理部４０２により表示された文書管理アプリケーション４００のＧＵＩ（グラフィカルユーザインターフェース）を介して、ユーザによる入力デバイス２０５の操作を検知し、ユーザの操作情報を取得する。なお、文書管理アプリケーション４００のＧＵＩの一例については、図５を用いて後述する。
【００１８】
出力機能管理部４０７は、文書管理アプリケーション４００に登録された出力機能（図５、５０５〜５１０）、図３に示す出力設定、および出力機能に対応するドライバを管理する。出力制御部４０５は、ユーザからの出力機能の選択ならびに出力指示をＵＩ入力管理部４０３を介して受け付けると、選択された出力先（５０５〜５１０）へ文書ファイルを渡し、文書ファイルを用いて各機能を実行するように指示を伝達する。印刷機能を示すデバイスオブジェクト５０６、５０７が選択された場合、出力制御部４０５は、デバイスオブジェクト５０６または５０７に登録されているプリンタドライバへ文書ファイルの出力指示を伝達する。また、ＦＡＸ機能を示すデバイスオブジェクト５０８が選択された場合、出力制御部４０５は、デバイスオブジェクト５０８に登録されているＦＡＸドライバへ文書ファイルの出力指示を伝達する。
【００１９】
指示を受け付けた各ドライバは、出力指示として指定された文書ファイルを複合機デバイス１０１及び１０２が解釈可能な出力指示情報に変換する。出力指示情報とは、印刷出力の場合は印刷用のデータ形式（例えば、ＰＤＬ（ＰＡＧＥ  ＤＥＳＣＲＩＰＴＩＯＮ  ＬＡＮＧＵＡＧＥ）等）に変換することを指す。またＦＡＸ送信の場合はＦＡＸ送信用のデータ形式（例えば、ラスターデータ等）に変換することを指す。そして、ドライバは、変換した印刷指示情報をネットワーク１０３を介して複合機デバイス１０１または１０２へ送信する。
【００２０】
出力管理部４０６は、出力機能管理部４０７を介して、各出力機能のステータス情報や実行ジョブのステータス情報を取得する。特に、印刷機能を示すデバイスオブジェクト５０６、５０７やＦＡＸ機能を示すデバイスオブジェクト５０８の場合、出力管理部４０６は、複合機デバイス１０１及び１０２のステータス情報や実行ジョブのステータス情報を取得する。複合機デバイス１０１及び１０２との通信は、出力機能管理部４０７を介して行われる。より詳細には仮想デバイスアプリケーションを用いて後述する。
【００２１】
仮想デバイスアプリケーション管理部４０４は、ユーザから出力機能の選択ならびに仮想デバイスオブジェクト作成指示をＵＩ入力管理部４０３を介して受け付け、図６に示す仮想デバイスオブジェクト６００を生成可能か否か判断する。仮想デバイスアプリケーション管理部４０４は、仮想デバイスオブジェクト６００の生成が可能であれば、仮想デバイスアプリケーション４１０に仮想デバイスオブジェクト６００の生成指示と生成に必要な情報を伝達する。仮想デバイスアプリケーション４１０は、文書管理アプリケーション４００から伝達された生成指示と情報に基づいて、仮想デバイスオブジェクト６００を生成する。
【００２２】
＜仮想デバイスアプリケーションのソフトウェア構成＞
図４（Ｂ）に示す仮想デバイスアプリケーション４１０は、複数のデバイスオブジェクト（図５、５０５〜５１０）を統合した図７に示す画面に仮想デバイスオブジェクト７０３を生成して、仮想デバイスとして機能させる。図７に示す画面は、仮想デバイスオブジェクト７０３が表示される第１の画面である。仮想デバイスアプリケーション４１０は、生成した仮想デバイスオブジェクト７０３をデスクトップ画面７００上に表示する。仮想デバイスオブジェクト７０３は、複合機デバイスに対する印刷やＦＡＸ送信等の出力指示を行う機能、複合機デバイスの使用状態や出力ジョブの実行状況を表示する機能を備えている。仮想デバイスアプリケーション４１０は、図７に示すデバイスオブジェクト７０１、７０２のように、デバイスの機能ごとに仮想デバイスオブジェクトを生成してもよい。すなわち、プリンタとして利用できる仮想デバイスオブジェクトとＦＡＸとして利用できる仮想デバイスオブジェクトをそれぞれ独立して生成してもよい。デバイスの機能をオブジェクトとして表示することで、ユーザの視認性を向上させることが可能となる。
【００２３】
仮想デバイスアプリケーション４１０は、アプリケーション制御部４１１、ＵＩ入力管理部４１２、画面表示管理部４１３、デバイスオブジェクト情報取得部４１４、出力制御部４１５、出力管理部４１６、仮想デバイスオブジェクト管理部４１７を備える。アプリケーション制御部４１１は、アプリケーション内部の機能の連携を統合制御する。ＵＩ入力管理部４１２は、画面表示管理部４１３により表示された仮想デバイスアプリケーション４１０のＧＵＩを介して、ユーザによる入力デバイス２０５の操作を検知し、ユーザの操作情報を取得する。
【００２４】
画面表示管理部４１３は、一例として図７に示すように、仮想デバイスオブジェクト７０３、７１１の表示や、出力機能７１２、７１４を選択するための表示や、出力設定７１３、７１５の表示等の画面表示制御を行う。また仮想デバイスオブジェクトの操作はファイルをドラッグアンドドロップすることによって行われる。図７に示すように、出力機能７１２はユーザがファイルをドラッグすることでプリンタ機能を選択したことを示し、ユーザがファイルをドロップすることにより出力設定７１３が表示される。ここで出力設定７１３は後述するテンプレートの一覧を選択するための画面である。なお、本明細書におけるテンプレートとは複数の印刷設定の組み合わせを意味する。その後、ユーザが出力設定７１３に表示された設定を選択すると、ユーザが選択した設定に従って仮想デバイスオブジェクトに登録されているプリンタドライバによりドロップされたファイルの出力が行われる。また、出力機能７１４はユーザがファイルをドラッグすることでＦＡＸ機能を選択したことを示し、ユーザがファイルをドロップすることにより出力設定７１５が表示される。そして、ユーザが出力設定７１５に表示された項目を選択して、各項目を設定する。最後にユーザがＯＫボタンを押下することで設定に従って仮想デバイスオブジェクトに登録されているＦＡＸドライバによりドロップされたファイルの出力が行われる。また、仮想デバイスオブジェクトを右クリックすることによりプリンタ設定画面３００及びＦＡＸ設定画面３０１を表示させることも可能である。
【００２５】
デバイスオブジェクト情報取得部４１４は、ＯＳにより管理される各種デバイスオブジェクトの情報や、各デバイスオブジェクトに割り当てられている各種ドライバの情報を取得する。つまり、デバイスオブジェクト情報取得部４１４は、印刷用デバイスオブジェクト７０１やＦＡＸ用デバイスオブジェクト７０２などを取得する。印刷用デバイスオブジェクトにはプリンタドライバが割り当てられている。また、ＦＡＸ用デバイスオブジェクトにはＦＡＸドライバが割り当てられている。
【００２６】
仮想デバイスオブジェクト管理部４１７は、図６に示すような仮想デバイスオブジェクト６００を生成し、管理下におく。より具体的には、仮想デバイスオブジェクト管理部４１７は、デバイスオブジェクト情報取得部４１４から取得したデバイスオブジェクトの情報を基に、各種ドライバを登録し、仮想デバイスオブジェクト６００を構築する。また、仮想デバイスオブジェクト管理部４１７は、仮想デバイスオブジェクトの構成や仮想デバイスオブジェクトの機能設定等の設定情報を、外部メモリ２０６の設定ファイルに書き込んだり、設定ファイルから設定情報を読み込む。
【００２７】
出力制御部４１５は、複合機デバイス１０１及び１０２へ出力の指示を行う。より具体的には、出力制御部４１５は、ユーザからの出力指示をＵＩ入力管理部４１２を介して受け付けると、デバイスオブジェクトに割り当てられている、出力指示に対応する機能を実行するドライバへ出力指示を行う。つまり、出力制御部４１５は、出力指示が印刷指示の場合は印刷用のプリンタドライバへ、ＦＡＸ送信の場合はＦＡＸドライバへ出力指示する。指示を受け付けた各ドライバは出力指示として指定された文書ファイルを複合機デバイス１０１及び１０２で解釈可能な、図４（Ａ）を用いて上述した出力指示情報に変換する。そして、各ドライバは変換した印刷指示情報を、ネットワーク１０３を介して複合機デバイス１０１及び１０２へ送信する。
【００２８】
出力管理部４１６は、複合機デバイス１０１及び１０２と通信し、複合機デバイス１０１及び１０２のステータス情報や実行ジョブのステータス情報を取得する。ここで、デバイスオブジェクトに設定されている出力ポート（図６、６０４、６０５）が、仮想デバイスアプリケーション４１０のアプリケーションに対応した監視用ポートである場合は、以下の処理を行う。すなわち、出力管理部４１６は、この出力ポートを介して複合機デバイス１０１及び１０２のステータス情報（印刷可能、エラー等）や実行ジョブ（印刷、ＦＡＸ送信）のステータス情報（処理中、完了等）を取得する。出力管理部４１６は取得したステータス情報を画面表示管理部４１３へ渡し、画面表示管理部４１３は仮想デバイスオブジェクトのＧＵＩ上へ表示する（不図示）。
【００２９】
＜文書管理アプリケーションＵＩ例＞
図５は、情報処理装置１００が有する、第２の画面として機能する文書管理アプリケーション４００のＵＩの一例を示す。文書管理アプリケーション４００は、メインウィンドウ５００の中に、ナビゲーションペイン５０１、ファイルリストペイン５０２、プレビューペイン５０３、出力先アイコン表示領域５０４を有している。ナビゲーションペイン５０１は、文書を保管するライブラリやフォルダ―をツリー表示する領域である。ファイルリストペイン５０２は、ナビゲーションペイン５０１でユーザが選択したフォルダの内の文書ファイル等を表示する領域である。プレビューペイン５０３は、ファイルリストペイン５０２でユーザが選択した文書のプレビューを表示する領域である。
【００３０】
出力先アイコン表示領域５０４は、出力機能毎に、文書ファイルの出力先として登録したアプリケーション、デバイス、および共有フォルダ―等のアイコンを表示する領域である。文書管理アプリケーション４００は、様々な出力先を登録する機能を備えている。出力先の登録例として、複合機デバイスに印刷を実行させるためのデバイスオブジェクト５０６、５０７や、複合機デバイスにＦＡＸ送信させるためのデバイスオブジェクト５０８などがある。出力先アイコン表示領域５０４は操作領域としても機能し、出力先アイコン表示領域５０４のアイコン上でユーザがマウスを右クリックすると、画面表示管理部４０２は、メニュー５００１または５００２を表示する。
【００３１】
図５に示すように、仮想デバイスアプリケーションの作成が可能な出力機能の場合、画面表示管理部４０２は、ユーザがマウスを右クリックすることで表示されるメニュー５００１内に「仮想デバイス作成」を指示可能な操作項目を表示する。一方、仮想デバイスアプリケーションの作成が不可能な出力機能の場合、画面表示管理部４０２は、ユーザがマウスを右クリックすることで表示されるメニュー５００２内に「仮想デバイス作成」を指示可能な操作項目を表示しない。また、画面表示管理部４０２は、ユーザがメニューの「変更」を選択すると、図３に示すように、出力機能の能力に応じて設定可能な項目を表示する。
【００３２】
図３は、プリンタ設定画面３００およびＦＡＸ設定画面３０１を示す。プリンタ設定画面３００はデバイスオブジェクト５０６又は５０７を右クリックした際に表示されるメニュー５００１又は５００２で「変更」を選択された場合に表示される。ＦＡＸ設定画面３０１はデバイスオブジェクト５０８を右クリックした際に表示されるメニュー５００１又は５００２で「変更」を選択された場合に表示される。印刷機能の各種設定は、プリンタ設定画面３００に示すように以下のような具体例が挙げられる。プリンタの選択設定や、デバイスステータスの表示のＯＮ／ＯＦＦ設定。印刷時に無条件で予め指定されたテンプレート設定を適用するか否かを設定するためのＯＮ／ＯＦＦ設定。アイコンボタン名称。アノテーションの印刷のＯＮ／ＯＦＦ。印刷時に原稿サイズに近いサイズの用紙を使用するか否かを設定するためのＯＮ／ＯＦＦ設定。
【００３３】
また、ＦＡＸ機能の各種設定は、画面３０１に示すように以下のような具体例が挙げられる。選択している文書をひとまとめにして送信するか否かを設定するためのＯＮ／ＯＦＦ設定。ＦＡＸ送信時にプレビューを確認するか否かを設定するためのＯＮ／ＯＦＦ設定。アイコンボタン名称。カバーシートの添付のＯＮ／ＯＦＦ設定。カバーシートのテンプレートの選択。ＦＡＸ送信イメージの保存のＯＮ／ＯＦＦ設定。ＦＡＸ送信時のＦＡＸ番号を文書から自動取得するか否かを設定するためのＯＮ／ＯＦＦ設定。ＦＡＸドライバのアドレス帳から送信先ＦＡＸ番号を取得して指定するか否かを設定するためのＯＮ／ＯＦＦ設定。デバイスのアドレス帳から送信先ＦＡＸ番号を取得して指定するか否かを設定するためのＯＮ／ＯＦＦ設定。アノテーションの印刷のＯＮ／ＯＦＦ設定。印刷時に原稿サイズに近いサイズの用紙を使用するか否かを設定するためのＯＮ／ＯＦＦ設定。外線発信番号を送信時に指定するか否かを設定するためのＯＮ／ＯＦＦ設定。送信時刻指定。
【００３４】
＜仮想デバイスオブジェクト論理構成図＞
図６は、仮想デバイスアプリケーション４１０が生成する仮想デバイスオブジェクト６００の論理的な構成例を模式的に示す。仮想デバイスアプリケーション４１０は、デバイスオブジェクトを用いて仮想デバイスオブジェクト６００を生成する。仮想デバイスオブジェクト６００は、各デバイスオブジェクトへのＩ／Ｆとして仮想デバイスオブジェクトＩ／Ｆ６０１を有する。仮想デバイスオブジェクト６００は、複合機デバイスに対応する論理的なデバイスを表すデバイスオブジェクト６０２、６０３も有する。
【００３５】
本実施形態では、仮想デバイスオブジェクト６００は、印刷用のデバイスオブジェクト６０２及びＦＡＸ用のデバイスオブジェクト６０３を割り当てられるように構成される。また、各デバイスオブジェクト６０２、６０３には出力ポート６０４、６０５が設定される。出力管理部４１６は、この出力ポートを介して各機能を実現する複合機デバイス１０１、１０２のデバイス機能部６０６、６０７へジョブを出力する。具体的には、ユーザから印刷指示を受け付けた場合、仮想デバイスオブジェクト６００は、印刷用に割り当てられているデバイスオブジェクト６０２を介して印刷機能部６０６に出力する。ＦＡＸ送信の場合、仮想デバイスオブジェクト６００はＦＡＸ用に割り当てられているデバイスオブジェクト６０３を介してＦＡＸ機能部６０７に出力する。
【００３６】
さらに、各デバイスオブジェクトに設定されている出力ポート６０４、６０５が監視用ポートである場合、出力管理部４１６は以下の処理を行う。すなわち、出力管理部４１６は、出力ポートを介して複合機デバイスのデバイス機能部６０６、６０７のステータス情報（印刷可能、エラー等）や実行ジョブ（印刷、ＦＡＸ送信）のステータス情報（処理中、完了等）を取得する。出力管理部４１６は取得したステータス情報を画面表示管理部４１３へ渡し、画面表示管理部４１３は仮想デバイスオブジェクトのＧＵＩ上へ表示する。
【００３７】
本実施形態のシステム構成（図１）のように複合機デバイスが複数存在する場合には、各複合機デバイスの機能部分を組み合わせて利用することも可能である。例えば、ＭＦＰ１（１０１）の印刷用デバイスと、ＭＦＰ２（１０２）のＦＡＸ用デバイスを組み合わせて利用することも可能である。その場合、ＭＦＰ１用の印刷用プリンタオブジェクトとＭＰＦ２のＦＡＸ用プリンタオブジェクトを仮想デバイスオブジェクトへ割り当てる。
【００３８】
＜仮想デバイスオブジェクトの生成処理の例＞
図８乃至図１１のフローチャートを用いて、本実施形態の情報処理装置が仮想デバイスオブジェクトを生成する処理について説明する。本実施形態の各処理フローは、ＣＰＵ２０１が、ＲＯＭ２０４、外部メモリ２０６に記憶された文書管理アプリケーション４００や仮想デバイスアプリケーション４１０やプリンタドライバ等をＲＡＭ２０３にロードして実行することで実現される。
【００３９】
文書管理アプリケーション４００のアプリケーション制御部４０１は、ＵＩ入力管理部４０３を介して出力先アイコン表示領域（図５、５０４）のアイコン上で右クリックされたか否かを検知する（Ｓ８０１）。Ｓ８０１にて、ＵＩ入力管理部４０３はユーザが右クリックしたことを検知した場合、仮想デバイスアプリケーション管理部４０４が、右クリックが検知されたアイコンの出力対象に対し、仮想デバイスオブジェクトの作成が可能か否かを判定する（Ｓ８０２）。なお、仮想デバイスオブジェクトの作成可否の判定処理（Ｓ８０２）の詳細については、図９のフローチャートを用いて後述する。  
【００４０】
Ｓ８０２にて、仮想デバイスオブジェクトの作成が可能という判定の場合は、アプリケーション制御部４０１が右クリックメニューの「仮想デバイス作成」の選択肢の表示を有効化し（Ｓ８０３）、画面表示管理部４０２が図５に示すメニュー５００１を表示する。次に、ＵＩ入力管理部４０３は、右クリックメニューで、「仮想デバイス作成」が選択されたか否かを判定する（Ｓ８０４）。Ｓ８０４にて、右クリックメニューで、「仮想デバイス作成」が選択された場合、アプリケーション制御部４０１は、仮想デバイスアプリケーション管理部４０４を介して仮想デバイスオブジェクトの新規作成処理を実行する（Ｓ８０５）。なお、仮想デバイスオブジェクトの新規作成処理（Ｓ８０５）の詳細については、図１０のフローチャートを用いて後述する。
【００４１】
また、Ｓ８０２にて、仮想デバイスオブジェクトの作成が不可能という判定の場合は、文書管理アプリケーションのアプリケーション制御部４０１が右クリックメニューの「仮想デバイス作成」の選択肢の表示を無効化する（Ｓ８０６）。そして、画面表示管理部４０２が図５に示すメニュー５００２を表示する。また、Ｓ８０１にて、出力先アイコン表示領域のアイコン上で右クリックされたことが検知されない場合、文書管理アプリケーションのアプリケーション制御部４０１は、処理を終了する。同様に、Ｓ８０４にて、右クリックメニューで、「仮想デバイス作成」が選択されない場合も、文書管理アプリケーションのアプリケーション制御部４０１は、処理を終了する。
【００４２】
＜仮想デバイスオブジェクトの作成可否判定処理＞
仮想デバイスオブジェクトの作成可否判定処理（Ｓ８０２）の詳細を、図９のフローチャートを用いて説明する。まず、出力機能管理部４０７は、選択されている出力対象がネットワークで接続されているデバイスであるか否かを確認するため、ネットワークアドレス、例えばＩＰアドレスを持っているか否かをチェックする（Ｓ９０１）。なお、本明細書ではネットワークアドレスとしてＩＰアドレスを用いて説明する。ＩＰアドレスの代わりに名前（ホスト名・コンピュータ名）を用いても構わない。Ｓ９０１にて、出力機能管理部４０７は、ＩＰアドレスを持っていると判定した場合、選択されている出力対象のドライバへ、ＦＡＸ用ドライバまたはプリンタ用ドライバと仮定し、問い合わせを実施する（Ｓ９０２）。
【００４３】
次に、出力機能管理部４０７は、ドライバの応答の有無を判断する（Ｓ９０３）。もし、ドライバから応答が有る場合、出力機能管理部４０７は、さらに応答の内容を判断する（Ｓ９０４）。応答の内容にデバイス種類が含まれ、デバイス種類がプリンタである場合、出力機能管理部４０７は、選択されている出力対象はプリンタであると判定する（Ｓ９０５）。もし、応答の内容にデバイス種類が含まれ、デバイス種類がＦＡＸ用である場合、出力機能管理部４０７は、選択されている出力対象はＦＡＸであると判定する（Ｓ９０６）。そして、上記のように、Ｓ９０５やＳ９０６で出力機能管理部４０７がドライバの種類を判定できた場合、仮想デバイスアプリケーション管理部４０４は、仮想デバイスオブジェクトを作成可能と判定する（Ｓ９０７）。
【００４４】
また、Ｓ９０４にて得られた応答の内容に、デバイス種類が含まれていない場合や、不明なデバイス種類であった場合、仮想デバイスアプリケーション管理部４０４は、仮想デバイスオブジェクトを作成不可能と判定する（Ｓ９０８）。また、Ｓ９０１にて、ＩＰアドレスを持っていないと判定した場合や、Ｓ９０３にてドライバからの応答が無い場合も、仮想デバイスアプリケーション管理部４０４は、仮想デバイスオブジェクトを作成不可能と判定する（Ｓ９０８）。
【００４５】
＜仮想デバイスオブジェクトの新規作成処理＞
仮想デバイスオブジェクトの新規作成処理（Ｓ８０５）の詳細を、図１０のフローチャートを用いて説明する。まず、仮想デバイスアプリケーション管理部４０４は、出力先アイコン表示領域で選択されたアイコンを、仮想デバイスオブジェクトのイメージとして利用するため、図５に示す出力先アイコン表示領域５０４からアイコンイメージを抽出する（Ｓ１００１）。次に、仮想デバイスアプリケーション管理部４０４は、プリンタドライバもＦＡＸドライバも登録されていない状態の新規の仮想デバイスオブジェクトを生成するよう、仮想デバイスアプリケーション４１０に指示する（Ｓ１００２）。仮想デバイスアプリケーション４１０は、上記指示を受けて、プリンタドライバもＦＡＸドライバも登録されていない状態の新規の仮想デバイスオブジェクトを生成する。
【００４６】
次に、仮想デバイスアプリケーション管理部４０４は、Ｓ１００１で抽出したアイコンイメージを、Ｓ１００２で作成した仮想デバイスオブジェクトにデバイスイメージとして登録するよう、仮想デバイスアプリケーション４１０に指示する（Ｓ１００３）。仮想デバイスアプリケーション４１０は、上記指示を受けて、Ｓ１００２で作成した仮想デバイスオブジェクトにアイコンイメージをデバイスイメージとして登録する。次に、仮想デバイスアプリケーション管理部４０４は、Ｓ８０２の処理で仮想デバイスアプリケーションの作成可否判定時に判定しドライバの種別がプリンタかＦＡＸかを判断する（Ｓ１００４）。
【００４７】
Ｓ１００４で、出力デバイス種別がプリンタである場合、仮想デバイスアプリケーション管理部４０４は、以下の指示を仮想デバイスアプリケーション４１０に行う（Ｓ１００５）。すなわち、出力先アイコン表示領域で選択されたアイコンに関連付いたプリンタドライバを、Ｓ１００２で作成した仮想デバイスオブジェクトに登録するように指示する。
【００４８】
プリンタドライバは、文書管理アプリケーションが、出力先アイコン表示領域のアイコンに関連付けて保持している。仮想デバイスアプリケーション４１０は、上記指示を受けて、Ｓ１００２で作成した仮想デバイスオブジェクトにプリンタドライバを登録する。具体的には文書管理アプリケーションが仮想デバイスアプリケーション４１０にドライバ名を渡し、仮想デバイスアプリケーション４１０が取得したドライバ名をもとにプリンタドライバを特定して登録する。なお、ドライバ名の代わりにデバイスオブジェクト名を用いて登録するように構成しても構わない。
【００４９】
次に、仮想デバイスアプリケーション管理部４０４は、文書管理アプリケーションから、プリンタドライバ用設定を仮想デバイスオブジェクトに引き継ぐよう、仮想デバイスアプリケーション４１０に指示する（Ｓ１００６）。仮想デバイスアプリケーション４１０は、上記指示を受けて、Ｓ１００２で作成した仮想デバイスオブジェクトにプリンタドライバ用設定を引き継ぐ。なお、プリンタドライバ用設定の引き継ぎ処理（Ｓ１００６）の詳細については、図１２のフローチャートを用いて後述する。  
【００５０】
次に、仮想デバイスアプリケーション管理部４０４は、Ｓ１００２で作成した仮想デバイスアプリケーションに登録したプリンタドライバと同一デバイスを対象とするＦＡＸドライバを探索する（Ｓ１００７）。なお、仮想デバイスアプリケーションに登録したドライバと同一デバイスを対象とする別機能ドライバの探索処理（Ｓ１００７）の詳細については、図１１のフローチャートを用いて後述する。  
【００５１】
次に、仮想デバイスアプリケーション管理部４０４は、Ｓ１００７の探索処理にて、Ｓ１００２で作成した仮想デバイスアプリケーションに登録したプリンタドライバと同一デバイスを対象とするＦＡＸドライバを検出したか否かを判断する（Ｓ１００８）。Ｓ１００８で該当するＦＡＸドライバを検出した場合、仮想デバイスアプリケーション管理部４０４は、検出されたＦＡＸドライバは複数か１つだけかを判定する（Ｓ１００９）。Ｓ１００９で、該当するＦＡＸドライバが１つだけの場合、仮想デバイスアプリケーション管理部４０４は、仮想デバイスアプリケーション４１０に以下の指示を行う（Ｓ１０１０）。すなわち、仮想デバイスアプリケーション管理部４０４は、そのＦＡＸドライバをＳ１００２で作成した仮想デバイスオブジェクトに登録するように指示する。
【００５２】
Ｓ１００９で、該当するＦＡＸドライバが複数の場合、仮想デバイスアプリケーション管理部４０４は、ＵＩ入力管理部４０３を介して、ユーザによるＦＡＸドライバの選択を受け付ける（Ｓ１０１１）。次に、仮想デバイスアプリケーション管理部４０４は、Ｓ１０１１で選択されたＦＡＸドライバをＳ１００２で作成した仮想デバイスオブジェクトに登録するよう、仮想デバイスアプリケーション４１０に指示する（Ｓ１０１０）。仮想デバイスアプリケーション４１０は、上記指示を受けて、Ｓ１００２で作成した仮想デバイスオブジェクトにＦＡＸドライバを登録する。次に、仮想デバイスアプリケーション管理部４０４は、文書管理アプリケーションから、ＦＡＸドライバ用設定を仮想デバイスオブジェクトが引き継ぐよう、仮想デバイスアプリケーション４１０に指示する（Ｓ１０１２）。なお、ＦＡＸドライバ用設定の引き継ぎ処理（Ｓ１０１２）の詳細については、図１２のフローチャートを用いて後述する。  
【００５３】
また、Ｓ１００４で、出力対象のデバイス種別がＦＡＸである場合、仮想デバイスアプリケーション管理部４０４は、以下の指示を出す。すなわち、仮想デバイスアプリケーション管理部４０４は、出力先アイコン表示領域で選択されたアイコンに関連付いたＦＡＸドライバを、仮想デバイスオブジェクトに登録するよう仮想デバイスアプリケーション４１０に指示する（Ｓ１０１３）。ここで、ＦＡＸドライバは、文書管理アプリケーションが、出力先アイコン表示領域のアイコンに関連付けて保持している。仮想デバイスアプリケーション４１０は、上記指示を受けて、Ｓ１００２で作成した仮想デバイスオブジェクトにＦＡＸドライバを登録する。
【００５４】
次に、仮想デバイスアプリケーション管理部４０４は、文書管理アプリケーションから、ＦＡＸドライバ用設定を仮想デバイスオブジェクトに引き継ぐよう、仮想デバイスアプリケーション４１０に指示する（Ｓ１０１４）。仮想デバイスアプリケーション４１０は、上記指示を受けて、Ｓ１００２で作成した仮想デバイスオブジェクトにＦＡＸ用ドライバ設定を引き継ぐ。なお、ＦＡＸドライバ用設定の引き継ぎ処理（Ｓ１０１４）の詳細については、図１２のフローチャートを用いて後述する。  
【００５５】
次に、仮想デバイスアプリケーション管理部４０４は、Ｓ１００２で作成した仮想デバイスアプリケーションに登録したプリンタドライバと同一デバイスを対象とするプリンタドライバを探索する（Ｓ１０１５）。なお、仮想デバイスアプリケーションに登録したドライバと同一デバイスを対象とする別機能ドライバの探索処理（Ｓ１０１５）の詳細については、図１１のフローチャートを用いて後述する。
【００５６】
次に、仮想デバイスアプリケーション管理部４０４は、Ｓ１０１５の探索処理にて、Ｓ１００２で作成した仮想デバイスアプリケーションに登録したＦＡＸドライバと同一デバイスを対象とするプリンタドライバを検出したか否かを判断する（Ｓ１０１６）。Ｓ１０１６で該当するプリンタドライバを検出した場合、仮想デバイスアプリケーション管理部４０４は、複数のドライバが検出されたドライバは複数か１つだけかを判定する（Ｓ１０１７）。
【００５７】
Ｓ１０１７で該当するプリンタドライバが１つだけの場合、仮想デバイスアプリケーション管理部４０４は、以下の指示を出す。すなわち、仮想デバイスアプリケーション管理部４０４は、該当するプリンタドライバをＳ１００２で作成した仮想デバイスオブジェクトに登録するよう、仮想デバイスアプリケーション４１０に指示する（Ｓ１０１８）。仮想デバイスアプリケーション４１０は、上記指示を受けて、Ｓ１００２で作成した仮想デバイスオブジェクトにプリンタドライバを登録する。Ｓ１０１７で該当するプリンタドライバが複数の場合、仮想デバイスアプリケーション４１０は、ＵＩ入力管理部４０３を介してユーザによるＦＡＸドライバの選択を受け付ける（Ｓ１０１９）。
【００５８】
次に、仮想デバイスアプリケーション管理部４０４は、Ｓ１０１９で選択されたＦＡＸドライバをＳ１００２で作成した仮想デバイスオブジェクトに登録するよう、仮想デバイスアプリケーション４１０に指示する（Ｓ１０１８）。仮想デバイスアプリケーション４１０は、上記指示を受けて、Ｓ１００２で作成した仮想デバイスオブジェクトにＦＡＸドライバを登録する。
【００５９】
次に、仮想デバイスアプリケーション管理部４０４は、文書管理アプリケーションから、プリンタドライバ用設定を仮想デバイスオブジェクトが引き継ぐよう、仮想デバイスアプリケーション４１０に指示する（Ｓ１０２０）。仮想デバイスアプリケーション４１０は、上記指示を受けて、Ｓ１００２で作成した仮想デバイスオブジェクトにプリンタドライバ用設定を引き継ぐ。なお、プリンタドライバ用設定の引き継ぎ処理（Ｓ１０２０）の詳細については、図１２のフローチャートを用いて後述する。また、Ｓ１００８やＳ１０１６で該当するドライバを検出しなかった場合、仮想デバイスアプリケーション管理部４０４は新規作成処理を終了する。図１０の処理が終了した後に仮想デバイスオブジェクトがＳ１００１で抽出されたアイコンイメージに基いて第１の画面に表示される。なお、本実施形態では、Ｓ１００９およびＳ１０１７の処理において、複数のドライバが検出された場合、ＵＩ入力管理部４０３を介してユーザによる選択を促したが、複数のドライバを自動で全て登録する構成でもよい。
【００６０】
＜別機能ドライバの探索処理＞
仮想デバイスアプリケーションに登録したドライバと同一のデバイスを対象とする別機能ドライバの探索処理（Ｓ１００７）の詳細を、図１１のフローチャートに示す。なお、Ｓ１０１５の処理の詳細は、最初に登録したドライバの機能が異なること以外はＳ１００７の処理の詳細と同一なため説明を省略する。
【００６１】
まず、出力機能管理部４０７は、文書管理アプリケーションに登録されている全てのドライバを抽出する（Ｓ１１０１）。次に、出力機能管理部４０７は、Ｓ１１０１で抽出したドライバの中から、仮想デバイスオブジェクトに登録されているＳ１００５またはＳ１０１３で登録したドライバ（第１のドライバとも呼ぶ）と同一ＩＰアドレスを保持するドライバを抽出する（Ｓ１１０２）。次に、出力機能管理部４０７は、第１のドライバと同一ＩＰアドレスを保持するドライバ（第２のドライバ）の抽出の有無を判定する（Ｓ１１０３）。Ｓ１１０３でドライバが抽出された場合、出力機能管理部４０７は、Ｓ１１０２で抽出したドライバの中から、さらに出力機能用のドライバを抽出する（Ｓ１１０４）。出力機能用のドライバとは画像処理装置とデータをやりとりするドライバを指す。本明細書ではＳ１１０２で抽出したドライバに画像処理装置とデータをやりとりしないドライバ（例えばＰＤＦライターなど）が抽出される環境を想定している。よって、出力機能用のドライバがＳ１１０２で抽出したドライバに含まれない環境であればＳ１１０４の処理は不要である。
【００６２】
次に、出力機能管理部４０７は、出力機能用のドライバの抽出の有無を判定する（Ｓ１１０５）。Ｓ１１０５で出力機能用のドライバが抽出された場合、出力機能管理部４０７は、Ｓ１１０４で抽出したドライバの中から、さらに出力機能が、第１のドライバと異なるドライバを抽出する（Ｓ１１０６）。次に、出力機能管理部４０７は、第１のドライバと異なるドライバの抽出の有無を判定する（Ｓ１１０７）。Ｓ１１０７で第１のドライバと異なるドライバが抽出された場は、仮想デバイスアプリケーション管理部４０４は、抽出された第２のドライバが、Ｓ１００７またはＳ１０１５の処理で探索中のドライバであると判定する（Ｓ１１０８）。
【００６３】
また、Ｓ１１０３で同一ＩＰアドレスの保持するドライバが文書管理アプリケーション４００に登録されているドライバを抽出した結果、ドライバが抽出されなかった場合、出力機能管理部４０７はＯＳに登録されている全てのドライバを抽出する（Ｓ１１０９）。次に、出力機能管理部４０７は、Ｓ１１０９で抽出したドライバの中から、さらに、仮想デバイスオブジェクトに登録されている第１のドライバと同一ＩＰアドレスを保持するドライバを抽出する（Ｓ１１１０）。次に、出力機能管理部４０７は、第１のドライバと同一ＩＰアドレスを保持する第２のドライバの抽出の有無を判定する（Ｓ１１１１）。Ｓ１１１１で第２のドライバ抽出された場合、出力機能管理部４０７は、Ｓ１１０９で抽出したドライバの中から、さらに出力機能用であるドライバを抽出する（Ｓ１１０４）。また、Ｓ１１１１で抽出無しの場合、仮想デバイスアプリケーション管理部４０４は、探索中の第２のドライバに該当するものはないと判定する（Ｓ１１１２）。
【００６４】
同様に、Ｓ１１０５で、第２のドライバの機能が出力機能用ではない場合も、仮想デバイスアプリケーション管理部４０４は、探索中の第２のドライバに該当するものはないと判定する（Ｓ１１１２）。同様に、Ｓ１１０７で、第２のドライバの機能が第１のドライバと異なるものが検出されない場合も、仮想デバイスアプリケーション管理部４０４は、探索中の第２のドライバに該当するものはないと判定する（Ｓ１１１２）。
【００６５】
なお、Ｓ１１０１の代わりにＳ１１０９で置き換え、最初からＯＳに登録されているドライバのみを該当のドライバの候補となるように構成しても構わない。図１１のようにまずはＳ１１０１で文書管理アプリケーションに登録されているドライバを抽出して、抽出したドライバを該当のドライバの候補にする理由は次の２つの理由が挙げられる。第１に通常、文書管理アプリケーションに登録されているドライバの方がＯＳに登録されているドライバよりも少ない。よって、最初からＯＳに登録されているドライバを候補にするよりも文書管理アプリケーションに登録されているドライバを候補にする方が高速に処理することが可能である。第２に文書管理アプリケーションではプリンタドライバとＦＡＸドライバが同時に登録されている可能性が高いためである。
【００６６】
＜設定引き継ぎ処理＞
プリンタドライバ用設定の引き継ぎ処理（図１０、Ｓ１００６、Ｓ１０２０）の詳細ならびにＦＡＸドライバ用設定の引き継ぎ処理（Ｓ１０１２、Ｓ１０１４）の詳細について、図１２のフローチャートを用いて後述する。まず、プリンタドライバ用設定の引き継ぎ処理（Ｓ１００６、Ｓ１０２０）の場合、仮想デバイスアプリケーション管理部４０４は、以下の指示を出す。すなわち、仮想デバイスアプリケーション管理部４０４は、仮想デバイスオブジェクトが文書管理アプリケーションから、印刷出力用の設定を引き継ぐよう、仮想デバイスアプリケーション４１０に指示する。
【００６７】
まず、仮想デバイスアプリケーション管理部４０４は、文書管理アプリケーション４００が出力先アイコン表示領域のアイコンに関連付けて保持している印刷出力用の各種設定を抽出する。なお、各種設定は文書管理アプリケーション４００の出力機能制御部４０７により管理されている。そして、Ｓ１００２で作成した仮想デバイスオブジェクトで保持するよう仮想デバイスアプリケーション４１０に伝達する。
【００６８】
仮想デバイスアプリケーション４１０は、上記情報伝達を受けて、Ｓ１００２で作成した仮想デバイスオブジェクトに保持する。印刷出力用の各種設定は、例えば図３の３００に示した設定が仮想プリンタオブジェクトに引き継がれる。Ｓ１２０１で、デバイスステータスの表示のＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２０２で、予め指定されたテンプレート設定を、印刷時に無条件で適用するか否かを設定するための、指定テンプレート設定のＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２０３で、アイコンボタン名称が引き継がれる。Ｓ１２０４で、アノテーションの印刷のＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２０５で、印刷時に原稿サイズに近いサイズの用紙を使用するか否かを設定するためのＯＮ／ＯＦＦ設定が引き継がれる。なお、仮想プリンタオブジェクトに引き継がれる各種設定は上述の処理は上述の順序に限定されるものではなく、任意の順序で任意の設定が引き継がれてよい。上述の処理により、仮想デバイスオブジェクト６００は、引き継いだ各種設定を用いて、プリンタドライバによる印刷処理を実行することが可能となる。また、仮想デバイスオブジェクト６００側でも、ＵＩ入力管理部４１２を用いてユーザが引き継いだ各種設定項目を再設定することが可能となる。
【００６９】
次に、ＦＡＸドライバ用設定の引き継ぎ処理（Ｓ１０１２、Ｓ１０１４）の場合、仮想デバイスアプリケーション管理部４０４は、以下の処理を指示する。すなわち、仮想デバイスアプリケーション管理部４０４は、文書管理アプリケーションから、ＦＡＸ送信方法の設定を引き継ぐよう仮想デバイスアプリケーション４１０に指示する（Ｓ１２１１〜Ｓ１２２３）。すなわち、仮想デバイスアプリケーション管理部４０４は、文書管理アプリケーションが、出力先アイコン表示領域のアイコンに関連付けて保持しているＦＡＸ送信方法の設定を抽出する。そして、Ｓ１００２で作成した仮想デバイスオブジェクトで保持するよう仮想デバイスアプリケーション４１０に伝達する。  
【００７０】
仮想デバイスアプリケーション４１０は、上記情報伝達を受けて、Ｓ１００２で作成した仮想デバイスオブジェクト６００にＦＡＸ送信方法の設定を保持する。ＦＡＸ送信方法の設定は、例えば図３の３０１に示した設定が仮想プリンタオブジェクトに引き継がれるＳ１２１１で、選択している文書をひとまとめにして送信するか否かを設定するためのＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２１２で、ＦＡＸ送信時にプレビューを確認するか否かを設定するためのＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２１３で、アイコンボタン名称が引き継がれる。Ｓ１２１４で、カバーシートの添付のＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２１５で、カバーシートのテンプレートの選択が引き継がれる。Ｓ１２０６で、ＦＡＸ送信イメージの保存のＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２１７で、ＦＡＸ送信時のＦＡＸ番号を文書から自動取得するか否かを設定するためのＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２１８で、ＦＡＸドライバのアドレス帳から送信先ＦＡＸ番号を取得して指定するか否かを設定するためのＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２１９で、デバイスのアドレス帳から送信先ＦＡＸ番号を取得して指定するか否かを設定するためのＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２２０で、アノテーションの印刷のＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２２１で、印刷時に原稿サイズに近いサイズの用紙を使用するか否かを設定するためのＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２２２で、外線発信番号を送信時に指定するか否かを設定するためのＯＮ／ＯＦＦ設定が引き継がれる。Ｓ１２２３で、送信時刻指定が引き継がれる。
【００７１】
上述の処理により、仮想デバイスオブジェクト６００は、引き継いだ各種設定を用いて、ＦＡＸドライバによる送信処理を実行することが可能となる。また、仮想デバイスオブジェクト６００側でも、ＵＩ入力管理部４１２を用いてユーザが引き継いだ各種設定項目を再設定することが可能となる。
【００７２】
以上の処理により、本発明の情報処理装置によれば、仮想デバイスオブジェクトの作成の際に、デバイスに対応する適切なドライバを登録し、デバイスの複数機能を統合した仮想デバイスオブジェクトを簡易に作成することが可能となる。すなわち、ユーザが文書管理アプリケーションに登録されている出力デバイスを選択するだけで、本発明の情報処理装置は仮想デバイスオブジェクトを生成し、デバイスに対応するドライバを仮想デバイスオブジェクトに登録する。よって、ドライバ登録作業が容易になり、仮想デバイスオブジェクトの生成におけるユーザの作業負荷が軽減される。  
【００７３】
また、本発明の情報処理装置は、仮想デバイスオブジェクトに登録したドライバと同一デバイスを対象とする別機能ドライバの探索と登録を自動的に行うため、仮想デバイスオブジェクトの生成におけるユーザの作業負荷をさらに軽減することができる。また、第１のアプリケーションである文書管理アプリケーションの出力機能に関する設定を、第２のアプリケーションである仮想デバイスアプリケーションが生成する仮想デバイスオブジェクトに自動的に引き継ぐことが可能になる。そのため、仮想デバイスアオブジェクトの生成におけるユーザの作業負荷をさらに軽減することができる。
【００７４】
（第２実施形態）
第１実施形態では、ユーザが画像処理装置に対応するドライバを選択可能な文書管理アプリケーション側に登録されている出力機能を選択する。そして、情報処理装置は、第２のアプリケーションである仮想デバイスアプリケーションが生成する仮想デバイスオブジェクトへのドライバ登録作業を自動化する例を示した。本実施形態では、仮想デバイスアプリケーションが生成する仮想デバイスオブジェクト側に登録されている出力機能を、文書管理アプリケーションに自動登録する例を示す。
【００７５】
以下で、本実施形態における、情報処理装置１００の処理における実施形態１との差異を、図１４のフローチャートを用いて説明する。なお、本実施形態の各処理フローは、ＣＰＵ２０１がＲＯＭ２０４、外部メモリ２０６に記憶された文書管理アプリケーション４００や仮想デバイスアプリケーション４１０やプリンタドライバ等をＲＡＭ２０３にロードして実行することで実現される。また、特に断りが無ければ、本実施形態の文書管理アプリケーション４００や仮想デバイスアプリケーション４１０は実施形態１の構成と同様である。
【００７６】
文書管理アプリケーションのアプリケーション制御部４０１は、ＵＩ入力管理部４０３を介して出力先アイコン表示領域（図５、５０４）上に、仮想デバイスオブジェクトのドラッグアンドドロップ操作が行われたか否かを検知する（Ｓ１３０１）。Ｓ１３０１にて、ドロップされたことを検知した場合は、仮想デバイスアプリケーション管理部４０４が、仮想デバイスアプリケーション４１０に対し、仮想デバイスオブジェクトに登録されているドライバの抽出を指示する（Ｓ１３０２）。仮想デバイスアプリケーション４１０は、上記指示を受けて、ドロップされた仮想デバイスオブジェクトからドライバを抽出する。
【００７７】
次に、文書管理アプリケーションのアプリケーション制御部４０１は、仮想デバイスアプリケーション４１０が抽出したドライバの有無を判定する（Ｓ１３０３）。Ｓ１３０３で抽出されたドライバが有る場合は、文書管理アプリケーションのアプリケーション制御部４０１は、抽出されたドライバが、すでに文書管理アプリケーションに登録されているものか否かを判定する（Ｓ１３０４）。Ｓ１３０４にて、抽出されたドライバが登録済みでなければ、仮想デバイスアプリケーション管理部４０４は、仮想デバイスアプリケーション４１０から仮想デバイスオブジェクト６００のデバイスイメージを引き継ぐ（Ｓ１３０５）。
【００７８】
次に、仮想デバイスアプリケーション管理部４０４は、仮想デバイスアプリケーション４１０から仮想デバイスオブジェクト６００の設定を引き継ぐ（Ｓ１３０６）。なお、仮想デバイスオブジェクト６００の設定の引き継ぎ処理（Ｓ１３０６）の詳細については、
図１２および図１３を用いて説明したフローチャートと同様であるため説明を省略する。次に、出力機能管理部４０７は、仮想デバイスオブジェクト６００から引き継いだデバイスイメージならびに設定情報を基に、対象ドライバを登録するとともに、画面表示管理部４０２を介して、出力先アイコン表示領域にアイコンを表示する（Ｓ１３０７）。次に、仮想デバイスアプリケーション管理部４０４は、Ｓ１３０２に進み、処理を繰り返す。
【００７９】
Ｓ１３０３にて、ドライバが抽出されない場合、文書管理アプリケーションのアプリケーション制御部４０１は、文書管理アプリケーションへの登録処理を終了する。また、Ｓ１３０１にて、ＵＩ入力管理部４０３が出力先アイコン表示領域上で仮想デバイスオブジェクトを検知しない場合は何もしない。また、Ｓ１３０４にて、抽出されたドライバが登録済みである場合、仮想デバイスアプリケーション管理部４０４は、ＵＩ入力管理部４０３を介して、ユーザによる処理を続行するか否かの選択を受け付ける（Ｓ１３０８）。Ｓ１３０８にて、処理の続行を受け付けた場合、仮想デバイスアプリケーション管理部４０４は、Ｓ１３０２に進み、処理を繰り返す。Ｓ１３０８にて、処理の非続行を受け付けた場合は、仮想デバイスアプリケーション管理部４０４は、登録処理を終了する。
【００８０】
以上の処理により、第２のアプリケーションである、仮想デバイスアプリケーションが生成する仮想デバイスオブジェクト側に登録されている出力機能を、第１のアプリケーションである文書管理アプリケーションに自動登録することが可能になる。そのため、仮想デバイスオブジェクトのみに登録されている出力機能を容易に文書管理アプリケーションにも登録することが可能になり、ユーザの作業負荷を軽減することが可能になる。
【００８１】
（第３実施形態）
第１実施形態では、第１のアプリケーションである文書管理アプリケーション側に登録されている出力機能を選択する。そして、第２のアプリケーションである仮想デバイスアプリケーションが生成する仮想デバイスオブジェクトへのドライバ登録作業を自動化する例を示した。本実施形態では、第２のアプリケーションである、仮想デバイスアプリケーションが生成する仮想デバイスオブジェクトへドライバが登録された際に、第１のアプリケーションである文書管理アプリケーションに登録されている出力機能を解除する例を示す。
【００８２】
以下で、本実施形態における、情報処理装置１００の処理における実施形態１との差異を、図１５のフローチャートを用いて説明する。なお、図１５におけるＳ１４０１の処理ならびにＳ１４１１の処理は、実施形態１における図１２のＳ１２０１からＳ１２０５の処理ならびに図１３のＳ１２１１からＳ１２２３の処理と同様なため、ここでの説明は異なる部分のみを以下、説明する。なお、本実施形態の各処理フローは、ＣＰＵ２０１がＲＯＭ２０４、外部メモリ２０６に記憶された文書管理アプリケーション４００や仮想デバイスアプリケーション４１０やプリンタドライバ等をＲＡＭ２０３にロードして実行することで実現される。また、特に断りが無ければ、本実施形態の文書管理アプリケーション４００や仮想デバイスアプリケーション４１０は実施形態１の構成と同様である。
【００８３】
文書管理アプリケーションに登録されているプリンタドライバを仮想デバイスオブジェクトに自動登録した場合は、印刷出力用設定の引き継ぎ処理（Ｓ１４０１）の終了後、該当ドライバの登録解除処理を行う。すなわち、出力機能管理部４０７は、ＵＩ入力管理部４０３を介して、ユーザによる、該当ドライバの登録を解除するか否かの選択を受け付ける（Ｓ１４０２）。
【００８４】
Ｓ１４０２において、該当ドライバの登録を解除する選択を受け付けた場合、出力機能管理部４０７は、ドライバの登録を解除し、出力先アイコン表示領域から該当アイコンを削除する（Ｓ１４０３）。文書管理アプリケーションに登録されているＦＡＸドライバを仮想デバイスオブジェクトに自動登録した場合は、ＦＡＸ送信用設定の引き継ぎ処理（Ｓ１４０１）の終了後、該当ドライバの登録解除処理を行う。該当ドライバの登録解除処理（Ｓ１４１２〜Ｓ１４１３）は、プリンタドライバの場合の処理（Ｓ１４０２〜Ｓ１４０３）と同様であるため、省略する。
【００８５】
また、上記の例では、Ｓ１４０２の判断処理において、該当ドライバの登録解除処理を、ユーザからの入力の受付によって判定しているが、あらかじめ登録した情報により、自動的に判断することも可能である。その場合は、出力機能管理部４０７は、あらかじめ登録した該当ドライバ登録解除設定に従い、該当ドライバの登録を解除するか否かの選択を判断する（Ｓ１４０２）。
【００８６】
以上の処理により、本発明の情報処理装置は、第１のアプリケーションである文書管理アプリケーションの出力機能を、第２のアプリケーションである仮想デバイスアプリケーションが生成する仮想デバイスオブジェクトに自動的に登録する。そして情報処置装置は、設定情報の引き継ぎ後に、文書管理アプリケーションで不要となった出力機能を自動的にまたはユーザの選択により解除することが可能になる。なお、当然のことながら、仮想デバイスオブジェクトに登録された出力機能を文書アプリケーションに登録後、仮想デバイスオブジェクトで不要となった出力機能を自動的にまたはユーザの選択により解除することも可能である。つまり、情報処理装置のＣＰＵ２０１は、一方のアプリケーションから他方のアプリケーションにドライバを引き継いだ後、引き継ぎ元に登録されたドライバを解除する。そのため、仮想デバイスアオブジェクトの生成におけるユーザの作業負荷がさらに軽減される。
【００８７】
（第４実施形態）
第１実施形態では、本発明の情報処理装置は、ユーザが文書管理アプリケーションに登録されている出力機能を選択することによって、仮想デバイスアプリケーションが生成する仮想デバイスオブジェクトに自動でドライバを登録する例を示した。その際、情報処理装置は、選択された機能のドライバならびに同一デバイスを対象にした別機能ドライバを探索し、検出したドライバを用いて、仮想デバイスアプリケーションに仮想デバイスオブジェクトの生成とドライバの登録を指示する例を示した。本実施形態では、探索によって検出したドライバが、文書管理アプリケーションに未登録である場合に、仮想デバイスアプリケーションに仮想デバイスオブジェクトの生成とドライバの登録を指示するとともに文書管理アプリケーションにも登録する例を示す。
【００８８】
以下で、本実施形態における、情報処理装置１００の処理における実施形態１との差異を、図１６および図１７のフローチャートを用いて説明する。なお、図１６におけるＳ１５０１からＳ１５２０の処理は、実施形態１における図１０のＳ１００１からＳ１０２０の処理と同様なため、ここでの説明は異なる部分のみを以下、説明する。なお、本実施形態の各処理フローは、ＣＰＵ２０１がＲＯＭ２０４、外部メモリ２０６に記憶された文書管理アプリケーション４００や仮想デバイスアプリケーション４１０やプリンタドライバ等をＲＡＭ２０３にロードして実行することで実現される。また、特に断りが無ければ、本実施形態の文書管理アプリケーション４００や仮想デバイスアプリケーション４１０は実施形態１の構成と同様である。
【００８９】
Ｓ１５１２やＳ１５２０の処理後、文書管理アプリケーションのアプリケーション制御部４０１は、仮想デバイスアプリケーション４１０に登録を指示したドライバを、自身にも登録する処理を実施する（Ｓ１５２１、Ｓ１５２２）。より詳しくは、図１７のフローチャートを用いて説明する。
【００９０】
文書管理アプリケーションのアプリケーション制御部４０１は、仮想デバイスアプリケーション４１０に登録を指示したドライバが、すでに文書管理アプリケーションに登録されているものか否かを判定する（Ｓ１６０１）。Ｓ１６０１にて、ドライバが登録済みでなければ、ＯＳに登録されているドライバから検出したものであるため、出力機能管理部４０７は、ＯＳに登録されているデバイスイメージをアイコンとして引き継ぐ（Ｓ１６０２）。次に、出力機能管理部４０７は、対象ドライバを登録して、画面表示管理部４０２を介して、出力先アイコン表示領域にアイコンを表示する（Ｓ１６０３）。
【００９１】
以上の処理により、検出したドライバが、文書管理アプリケーションに未登録である場合に、自動生成した仮想デバイスオブジェクトへの登録ととともに文書管理アプリケーションにも自動的に登録することが可能になる。そのため、仮想デバイスオブジェクトに登録する作業と、文書管理アプリケーションに登録する作業を同時に進めることが可能になり、ユーザの作業負荷を軽減することが可能になる。
【００９２】
（その他の実施形態）
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（コンピュータプログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そしてそのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【符号の説明】
【００９３】
４００  文書管理アプリケーション
４０１  仮想デバイスアプリケーション
【図１】
2014102560.tif 000003
【図２】
2014102560.tif 000004
【図３】
2014102560.tif 000005
【図４】
2014102560.tif 000006
【図５】
2014102560.tif 000007
【図６】
2014102560.tif 000008
【図７】
2014102560.tif 000009
【図８】
2014102560.tif 000010
【図９】
2014102560.tif 000011
【図１０】
2014102560.tif 000012
【図１１】
2014102560.tif 000013
【図１２】
2014102560.tif 000014
【図１３】
2014102560.tif 000015
【図１４】
2014102560.tif 000016
【図１５】
2014102560.tif 000017
【図１６】
2014102560.tif 000018
【図１７】
2014102560.tif 000019