(57)【要約】【課題】  本発明はプリンターが重複して見つかったか否かと、印刷設定を変更する必要があるか否かを考慮してプリンターの探索結果に関する処理を行うことを目的とする。【解決手段】  本発明の情報処理装置はネットワーク探索によって見つかったプリンターのうち、重複して見つかったプリンターを検出して、オペレーティングシステムに対して、重複して見つかったプリンターから、印刷処理にあたって印刷設定を変更する必要があるプリンターを除いたプリンターの探索結果を応答する。【選択図】  図１３
2018181069.tif 000002
【特許請求の範囲】
【請求項１】
オペレーティングシステムからプリンターを探索する指示を受け付ける受付手段と、
前記指示を受け付けた場合に、プリンターを探索する探索手段と、
前記探索によって見つかったプリンターのうち、重複して見つかったプリンターを検出する検出手段と、
印刷設定を取得する取得手段と、
プリンターを探索する前記指示に対して、重複して見つかった前記プリンターから、印刷処理にあたって前記印刷設定を変更する必要があるプリンターを除いたプリンターの探索結果を応答する応答手段と、を有し、
前記プリンターを探索する前記指示を受け付けた場合に、前記応答に基づいてプリンターの探索結果が表示されることを特徴とする情報処理装置。
【請求項２】
前記応答手段は、前記印刷処理にあたって前記印刷設定を変更する必要がある前記プリンターの情報を、前記印刷処理にあたって前記印刷設定を変更する必要がないプリンターの情報で上書きして前記プリンターの探索結果を応答することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記応答手段は、前記印刷処理にあたって前記印刷設定を変更する必要がある前記プリンターを前記探索結果として応答する場合は、前記プリンター自身の情報と、前記印刷処理にあたって前記印刷設定のうち変更する必要がある印刷設定項目を応答することを特徴とする請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記取得手段は、前記印刷設定として、前記オペレーティングシステムによって提供される印刷設定画面と、印刷プラグインによって提供される印刷設定画面の２つの印刷設定画面で設定された印刷設定を取得することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記プリンターの探索によって重複して見つかったプリンターを重複したまま表示するか、又は重複を排して表示するか設定を受け付ける受付手段と、を有し、
前記応答手段は受け付けた前記設定に基づいて、前記プリンターの探索結果を応答することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
オペレーティングシステムからプリンターを探索する指示を受け付ける受付手段と、
前記指示を受け付けた場合に、複数の印刷経路でプリンターを探索する探索手段と、
前記探索によって見つかったプリンターのうち、重複して見つかったプリンターを検出する検出手段と、
印刷設定を取得する取得手段と、
重複して見つかった前記プリンターについて、前記プリンターが見つかった印刷経路による制限によって、印刷処理にあたって前記印刷設定を変更する必要があるか否か判断する判断手段と、
重複して見つかった前記プリンターに、前記印刷処理にあたって前記印刷設定を変更する必要がないと判断された第１のプリンターと、前記印刷処理にあたって前記印刷設定を変更する必要があると判断された第２のプリンターが含まれている場合に、前記第１のプリンターを含み、前記第２のプリンターを含まないプリンターの探索結果を応答する応答手段と、を有し、
前記プリンターを探索する前記指示を受け付けた場合に、前記応答に基づいてプリンターの探索結果が表示されることを特徴とする情報処理装置。
【請求項７】
コンピューターに、
オペレーティングシステムからプリンターを探索する指示を受け付ける受付工程と、
前記指示を受け付けた場合に、プリンターを探索する探索工程と、
前記探索によって見つかったプリンターのうち、重複して見つかったプリンターを検出する検出工程と、
印刷設定を取得する取得工程と、
プリンターを探索する前記指示に対して、重複して見つかった前記プリンターから、印刷処理にあたって前記印刷設定を変更する必要があるプリンターを除いたプリンターの探索結果を応答する応答工程と、を実行させ、
前記プリンターを探索する前記指示を受け付けた場合に、前記応答に基づいてプリンターの探索結果が表示されることを特徴とするプログラム。
【請求項８】
前記応答工程は、前記印刷処理にあたって前記印刷設定を変更する必要がある前記プリンターの情報を、前記印刷処理にあたって前記印刷設定を変更する必要がないプリンターの情報で上書きして前記プリンターの探索結果を応答することを特徴とする請求項７に記載のプログラム。
【請求項９】
前記応答工程は、前記印刷処理にあたって前記印刷設定を変更する必要がある前記プリンターを前記探索結果として応答する場合は、前記プリンター自身の情報と、前記印刷処理にあたって前記印刷設定のうち変更する必要がある印刷設定項目を応答することを特徴とする請求項７又は請求項８に記載のプログラム。
【請求項１０】
前記取得工程は、前記印刷設定として、前記オペレーティングシステムによって提供される印刷設定画面と、印刷プラグインによって提供される印刷設定画面の２つの印刷設定画面で設定された印刷設定を取得することを特徴とする請求項７乃至９のいずれか１項に記載のプログラム。
【請求項１１】
前記コンピューターに、
前記プリンターの探索によって重複して見つかったプリンターを重複したまま表示するか、又は重複を排して表示するか設定を受け付ける受付工程と、を実行させ、
前記応答工程は受け付けた前記設定に基づいて、前記プリンターの探索結果を応答することを特徴とする請求項７乃至１０のいずれか１項に記載のプログラム。
【請求項１２】
コンピューターに、
オペレーティングシステムからプリンターを探索する指示を受け付ける受付工程と、
前記指示を受け付けた場合に、複数の印刷経路でプリンターを探索する探索工程と、
前記探索によって見つかったプリンターのうち、重複して見つかったプリンターを検出する検出工程と、
印刷設定を取得する取得工程と、
重複して見つかった前記プリンターについて、前記プリンターが見つかった印刷経路による制限によって、印刷処理にあたって前記印刷設定を変更する必要があるか否か判断する判断工程と、
重複して見つかった前記プリンターに、前記印刷処理にあたって前記印刷設定を変更する必要がないと判断された第１のプリンターと、前記印刷処理にあたって前記印刷設定を変更する必要があると判断された第２のプリンターが含まれている場合に、前記第１のプリンターを含み、前記第２のプリンターを含まないプリンターの探索結果を応答する応答工程と、を実行させ、
前記プリンターを探索する前記指示を受け付けた場合に、前記応答に基づいてプリンターの探索結果が表示されることを特徴とするプログラム。
【請求項１３】
オペレーティングシステムからプリンターを探索する指示を受け付ける受付工程と、
前記指示を受け付けた場合に、プリンターを探索する探索工程と、
前記探索によって見つかったプリンターのうち、重複して見つかったプリンターを検出する検出工程と、
印刷設定を取得する取得工程と、
プリンターを探索する前記指示に対して、重複して見つかった前記プリンターから、印刷処理にあたって前記印刷設定を変更する必要があるプリンターを除いたプリンターの探索結果を応答する応答工程と、を有し、
前記プリンターを探索する前記指示を受け付けた場合に、前記応答に基づいてプリンターの探索結果が表示されることを特徴とする制御方法。
【請求項１４】
オペレーティングシステムからプリンターを探索する指示を受け付ける受付工程と、
前記指示を受け付けた場合に、複数の印刷経路でプリンターを探索する探索工程と、
前記探索によって見つかったプリンターのうち、重複して見つかったプリンターを検出する検出工程と、
印刷設定を取得する取得工程と、
重複して見つかった前記プリンターについて、前記プリンターが見つかった印刷経路による制限によって、印刷処理にあたって前記印刷設定を変更する必要があるか否か判断する判断工程と、
重複して見つかった前記プリンターに、前記印刷処理にあたって前記印刷設定を変更する必要がないと判断された第１のプリンターと、前記印刷処理にあたって前記印刷設定を変更する必要があると判断された第２のプリンターが含まれている場合に、前記第１のプリンターを含み、前記第２のプリンターを含まないプリンターの探索結果を応答する応答工程と、を有し、
前記プリンターを探索する前記指示を受け付けた場合に、前記応答に基づいてプリンターの探索結果が表示されることを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンターを探索して表示する技術に関する。
【背景技術】
【０００２】
従来、ネットワーク上のプリンターで印刷を行う技術が提案されている。特許文献１はネットワークに接続されたプリンターを探索し、探索によって見つかったプリンターに出力する技術を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１１−３４５１０２号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えばプリンターが複数の通信方法を持っている場合、情報処理装置とプリンターの間には複数の接続経路が存在するケースがある。こうした状況で情報処理装置がプリンターの探索を行うと、同じプリンターが異なる経路で重複して見つかる可能性がある。
【０００５】
さらに、重複して見つかったプリンターはそれぞれの経路によって印刷設定に制約事項が存在することがある。そうした制約事項が存在すると、事前に受け付けた印刷設定によっては元の印刷設定から変更を余儀なくされる。
【０００６】
これに対して本発明はプリンターが重複して見つかったか否かと、印刷設定を変更する必要があるか否かを考慮してプリンターの探索結果に関する処理を行うことを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するための本発明に係る情報処理装置は、
オペレーティングシステムからプリンターを探索する指示を受け付ける受付手段と、
前記指示を受け付けた場合に、プリンターを探索する探索手段と、
前記探索によって見つかったプリンターのうち、重複して見つかったプリンターを検出する検出手段と、
印刷設定を取得する取得手段と、
プリンターを探索する前記指示に対して、重複して見つかった前記プリンターから、印刷処理にあたって前記印刷設定を変更する必要があるプリンターを除いたプリンターの探索結果を応答する応答手段と、を有し、
前記プリンターを探索する前記指示を受け付けた場合に、前記応答に基づいてプリンターの探索結果が表示されることを特徴とする。
【０００８】
上記の目的を達成するための本発明に係る他の情報処理装置は、
オペレーティングシステムからプリンターを探索する指示を受け付ける受付手段と、
前記指示を受け付けた場合に、複数の印刷経路でプリンターを探索する探索手段と、
前記探索によって見つかったプリンターのうち、重複して見つかったプリンターを検出する検出手段と、
印刷設定を取得する取得手段と、
重複して見つかった前記プリンターについて、前記プリンターが見つかった印刷経路による制限によって、印刷処理にあたって前記印刷設定を変更する必要があるか否か判断する判断手段と、
重複して見つかった前記プリンターに、前記印刷処理にあたって前記印刷設定を変更する必要がないと判断された第１のプリンターと、前記印刷処理にあたって前記印刷設定を変更する必要があると判断された第２のプリンターが含まれている場合に、前記第１のプリンターを含み、前記第２のプリンターを含まないプリンターの探索結果を応答する応答手段と、を有し、
前記プリンターを探索する前記指示を受け付けた場合に、前記応答に基づいてプリンターの探索結果が表示されることを特徴とする。
【発明の効果】
【０００９】
本発明によって、受け付けた印刷設定を変更する必要があるプリンターを除いたプリンターの探索結果を応答することができるため、ユーザーは例えば複数の接続経路のうち、印刷設定を変更する必要のない接続経路を選択することができる。
【図面の簡単な説明】
【００１０】
【図１】システム構成を示す図。
【図２】データ処理装置のハードウェア構成を示す図。
【図３】データ処理装置のソフトウェアの構成を示す図。
【図４】データ処理装置のアプリケーション上でメニューが表示された画面。
【図５】データ処理装置で印刷設定を行う画面。
【図６】データ処理装置で拡張用の印刷設定を行う画面。
【図７】データ処理装置から印刷可能な全てのプリンターのリストを表示する画面。
【図８】データ処理装置でインターネット印刷に対応したプリンターを登録する画面。
【図９】データ処理装置のＲＡＭ上に展開される探索リストを示すイメージ図。
【図１０】データ処理装置のＲＡＭ上に展開される選別リストを示すイメージ図。
【図１１】データ処理装置のＲＡＭ上に展開される整列リストの遷移を示すイメージ図。
【図１２】データ処理装置で表示可能なＵＩを示す図。
【図１３】データ処理装置が行う、プリンターの探索処理についてのフローチャート。
【図１４】データ処理装置が行う、プリンターの探索処理についてのフローチャート。
【図１５】データ処理装置が行う、プリンターの選別処理についてのフローチャート。
【図１６】データ処理装置が行う、プリンターの整列処理についてのフローチャート。
【発明を実施するための形態】
【００１１】
近年、スマートフォンと呼ばれる高性能なモバイル端末が登場し、そのモバイル端末上で印刷機能を提供する印刷アプリケーションや、ＯＳが提供する印刷システムに対して各プリンターベンダーがベンダー独自の探索処理機能や印刷処理機能をアドインできる「印刷プラグイン」が登場している。
【００１２】
前者の印刷アプリケーションとして例えば、Ｃａｎｏｎ  Ｍｏｂｉｌｅ  Ｐｒｉｎｔｉｎｇがある。Ｃａｎｏｎ  Ｍｏｂｉｌｅ  Ｐｒｉｎｔｉｎｇでは、モバイル端末がＷｉＦｉ（無線ＬＡＮ規格であり、国際標準規格であるＩＥＥＥ８０２．１１規格を使用したデバイス間の相互接続が認められたことを示す名称）を通して参加するＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）上のプリンターを探索する。さらにモバイル端末に保存してあるＪＰＥＧ画像やＰＤＦといった原稿ファイルを展開して、前記探索したプリンターがサポートする描画形式に変換し、さらに各種印刷設定情報（例えば、給紙トレイや印刷部数の情報）を付加して印刷ジョブとして構成し、前記印刷ジョブを前記探索したプリンターに送信するといった、印刷に必要な一連の処理をモバイル端末で実行するものとして知られている。
【００１３】
一方、後者の印刷プラグインとして例えば、Ｃａｎｏｎ  Ｐｒｉｎｔ  Ｓｅｒｖｉｃｅがある。Ｃａｎｏｎ  Ｐｒｉｎｔ  ＳｅｒｖｉｃｅはＡｎｄｒｏｉｄ  ＯＳ専用の印刷プラグインであり、インストールすることでＡｎｄｒｏｉｄ  ＯＳの印刷システムに対して、Ｃａｎｏｎ製のプリンター向けの探索機能及び印刷処理機能をアドインすることができる。
【００１４】
また、プリンターのネットワークコネクティビティーが向上しており、従来からのＬＡＮ接続だけでなく、ＷＦＤ（ＷｉＦｉ  Ｄｉｒｅｃｔ）による接続が可能なプリンターが登場している。また、ＬＡＮ接続を通してインターネットにアクセスし、インターネット上の印刷サービス（例えば、Ｇｏｏｇｌｅ  Ｃｌｏｕｄ  Ｐｒｉｎｔ）を介したインターネット印刷が可能なプリンターも登場している。このようにプリンターと、それを探索して見つけるモバイル端末との間では複数の接続経路が存在しうる。
【００１５】
そして、モバイル端末も一つのアプリケーションで複数の通信方法をサポートし、このような複数の接続経路で通信可能に構成することができる。このような中、アプリケーション内のプリンターの探索処理において、複数の通信方法を用いて探索処理をかけると、一つのプリンターが複数の接続形態をサポートしていることで、探索結果として同一のプリンターから複数の応答が発生する。また、モバイル端末との接続経路によっては、特定の印刷設定がサポートされていないことで、印刷ケイパビリティー（印刷設定における設定可能範囲）が異なる場合がある。例えば、インターネット上の印刷サービスは、印刷設定として２ｉｎ１の割付印刷がサポートされていないことがある。よって、探索結果として複数の応答が同一のプリンターからあった場合に、探索結果を１つにまとめて表示するだけでは、ユーザーが要求する印刷設定を満足するプリンターが選択されないことがある。
【００１６】
このような状況に対して、本明細書ではプリンター探索によって、プリンターが重複して見つかっても、できるだけ印刷設定を変更せずに済むように、プリンター選択を支援する方法を説明する。
【００１７】
［実施例１］
以下、図面を参照し、本発明の実施形態の一例について詳細に説明する。
【００１８】
図１は、本発明の一実施形態におけるデータ処理システムの構成を示す図である。図１において、１０１は情報処理装置の一例としてモバイル形態のデータ処理装置であって、プリンター１０４若しくは１０５に対して印刷ジョブ送信を指示するユーザーが使用するコンピューターである。１０４及び１０５はプリンターであって、印刷機能のほか、コピー機能、スキャナ機能、ファクス送信機能等を備えていても構わない。１０２は無線ＬＡＮターミナルである。１０３及び１０９は上記装置が接続されているＬＡＮであって、ＬＡＮ１０３及びＬＡＮ１０９を介して上記装置は情報の相互通信を行っている。なお、ＬＡＮ１０３とＬＡＮ１０９はインターネットを介して接続されており、サブネットは異なる。無線ＬＡＮターミナル１０２は、一般的なネットワーク・ルーター機能を有した無線ＬＡＮの親機であって、家庭内や事務所などの中でＷｉＦｉを通じた無線ＬＡＮを提供している。また、データ処理装置１０１はモバイル端末であることから、ＷｉＦｉ機能を有効にすることで、無線ＬＡＮターミナル１０２を介してＬＡＮ１０３に参加することができる。データ処理装置１０１は、無線ＬＡＮターミナル１０２が提供する無線ＬＡＮエリアに入ると、予め設定していた認証情報を利用して自動的にＬＡＮ１０３のネットワークに参加することができる。１０６、１０７はデータ処理装置及びプリンターが送受信するＷＦＤによる無線信号であり、前記無線信号が到達し合う周辺のコンピューターデバイス間においては、Ｐｅｅｒ  Ｔｏ  Ｐｅｅｒのネットワークを形成することができる。
【００１９】
図２は、図１におけるデータ処理装置１０１のハードウェア構成を示すブロック図である。データ処理装置１０１は、モバイル端末やスマートフォンであり、小型端末用のオペレーティングシステムや、通話、データ通信を制御するプログラムが動いていても構わない。あるいは後述する音声制御部２０６及びマイク・スピーカ２１３、位置検出制御部２１０、ＧＰＳセンサー２１６、ＷＦＤ通信部２１２等を備えないパーソナルコンピュータであっても構わない。
【００２０】
ハードウェアの各構成要素は、システムバス２０１に接続されている。ＲＯＭ２０３にはデータ処理装置１０１におけるオペレーティングシステム及び、通話、データ通信を制御するアプリケーションが格納されており、ＣＰＵ２０２で実行される。データ通信を制御するアプリケーションとしては、印刷アプリケーションやＭａｉｌソフト、Ｗｅｂブラウザなどがある。
【００２１】
また、ＣＰＵ２０２が記憶装置２０９に記憶されているプログラムに基づき処理を実行することによって、図３に示されるような情報処理装置のソフトウェア構成及び後述するフローチャートの各ステップの処理が実現される。
【００２２】
ＲＡＭ２０４は、プログラムを実行するためのメモリであり、アプリケーションがプログラムを実行するワークメモリエリアである。また、ＲＡＭ２０４はアプリケーションがプログラム実行時に一時的に保存しなければならないデータ等を一時記憶するためのメモリでもある。記憶装置２０９は不揮発性の記憶装置であり、データ処理装置１０１の再起動後も保持しておく必要のある各種動作モード設定や、稼働ログなどが記憶される。
【００２３】
ＮｅｔｗｏｒｋＣｏｎｔｒｏｌｌｅｒ２０５は、無線ＬＡＮターミナル１０２を介してＬＡＮ１０３のネットワークに参加するための無線ＬＡＮ通信部２１１と、ＷＦＤによる無線信号が到達し合う周辺のコンピューターデバイス間においてＰｅｅｒ  Ｔｏ  Ｐｅｅｒネットワークを形成するためのＷＦＤ通信部２１２による通信制御を行う。音声制御部２０６は、主に通話アプリケーションが起動しユーザーが電話をしているときに利用する。マイク・スピーカ２１３にて音声データの入出力を行い、音声制御部２０６は、その制御プログラムとの仲介を行っている。表示制御部２０７は、データ処理装置１０１のディスプレイ２１４にて出力する情報の制御を行っている。入力制御部２０８は、データ処理装置１０１のボタンやタッチパネル２１５にてユーザーが指示した情報の制御を行っている。これらの音声制御部２０６、表示制御部２０７、入力制御部２０８を利用して、データ処理装置１０１上でのアプリケーションは、ネットワーク通信情報やデータ処理装置１０１のさまざまな情報をユーザーに提供する。位置検出制御部２１０は、ＧＰＳセンサー２１６からデータ処理装置１０１の位置情報を取得しオペレーティングシステムに提供する。これらの制御は、ＣＰＵ２０２で動くオペレーティングシステムにて制御される。
【００２４】
図３は、図１に示したデータ処理装置１０１のソフトウェアの構成を説明するブロック図である。３０１はアプリケーションで、ＲＯＭ２０３にＯＳ上で動作するアプリケーションとしてインストールされている。３０２はＯＳの機能としてインストールされている印刷システムで、アプリケーションがＯＳ標準の印刷システムを使って印刷したい場合にアプリケーションから呼び出される。３０３は印刷プラグインであり、プリンターベンダーや印刷関連の業界団体からソフトウェアモジュールとして配布されており、ユーザーは印刷システム３０２の配下にアドインしてインストールすることができる。印刷プラグイン３０３は、印刷システム３０２から呼び出されることで、プリンター探索部３０４が持つプリンターの探索機能や、印刷制御部３０５が持つ印刷機能を提供する。なお、印刷プラグインは複数インストールすることができ、それぞれの印刷プラグインをＯＳの設定画面において有効状態もしくは無効状態に切り替えることができる（不図示）。印刷システム３０２から印刷プラグイン３０３へのプリンターの探索機能の呼び出しは、印刷プラグイン３０３が有効状態に設定されている場合にのみ行われ、無効状態の場合は探索機能の呼び出しは行われない。有効状態の印刷プラグインが複数存在する場合は、印刷システム３０２はその複数の有効状態の印刷プラグインから受け取ったプリンターの探索結果を図７や図１２に示す画面に混在させて表示する。
【００２５】
図４は、データ処理装置１０１においてアプリケーション３０１が起動された後、ボタン４０１のメニューボタンが押下され、メニュー４０２が表示された状態の画面である。また、メニュー４０２にはＯＳ標準の印刷システムを呼び出す印刷ボタン４０３が配置されている。以下、ユーザーから印刷ボタン４０３が押下されることで開始する、印刷システム３０２及び印刷プラグイン３０３による、プリンターの探索処理の動作について説明する。
【００２６】
図１３は、印刷システム３０２及び印刷プラグイン３０３が行う、プリンターの探索処理についてのフローチャートを示している。Ｓ１０１において印刷システムは、図５に示すような印刷設定画面をアプリケーション３０１の画面にオーバーレイして表示する。
【００２７】
５０１は現在選択されているプリンターであり、前回の起動時に選択されたプリンターがデフォルトで表示されている。５０４、５０５、５０６は印刷システム３０２が表示する基本的な印刷設定項目である。一方、印刷プラグイン側で印刷設定項目を拡張したい場合、拡張用の印刷設定項目を別画面で提供することができる。拡張用の印刷設定ボタンである５０３が押下されたタイミングで、５０１に示すプリンターに対応する印刷プラグインが印刷システム３０２から呼び出されるので、印刷プラグイン３０３は図６の６０１、６０２に示すような印刷設定項目を表示し、拡張用の印刷設定を受け付けることができる。６０３は前画面に戻るボタンであり、ボタン６０３を押下して図５の画面に戻ることができる。
【００２８】
Ｓ１０２において印刷システム３０２は、データ処理装置１０１から印刷可能な全てのプリンターを表示するためのボタン５０２が押下されたかを判定する。Ｓ１０２にてＹｅｓの場合、Ｓ１０３に処理を進める。Ｓ１０２にてＮｏの場合、アイドル状態となる。
【００２９】
Ｓ１０３において印刷システム３０２は、図７に示すようにデータ処理装置１０１から印刷可能な全てのプリンターをリストする画面を表示する。ただし、本画面を表示した直後の瞬間では、プリンターの探索がまだ開始されていないため、７０１、７０２に示すプリンターのリストは表示されていない状態である。ただし、本画面を表示して間も無く、印刷システム３０２は印刷システム側の処理とは独立して非同期に、印刷プラグイン３０３のプリンター探索機能を呼び出す（印刷プラグインの処理が開始される）。７０３はプリンター探索によって重複して見つかったプリンターを重複したまま表示する（ＯＮ）か、又は重複を排して表示する（ＯＦＦ）か設定を受付けるスイッチである。詳細は実施例２で後述するが、印刷プラグイン３０３はスイッチ７０３の状態によって、応答するプリンターの探索結果を変化させる。７０５はインターネット印刷に対応したプリンターを探索対象として登録するためのボタンであって、ボタン７０５の押下により、印刷システム３０２は図８に示すようにインターネット印刷に対応したプリンターを特定するための登録画面を表示する。ユーザーは８０１に示すように、探索対象とするプリンターに対して、特定用のＩＤとパスワードを入力することができる。８０２は前画面に戻るボタンであり、ユーザーはボタン８０２を押下して図７の画面に戻ることができる。
【００３０】
Ｓ１０３において印刷プラグイン３０３のプリンターを探索する機能が呼び出され、Ｓ２０１において印刷プラグイン３０３は、プリンターの探索処理を開始する。
【００３１】
図１４のフローチャートを用いて、Ｓ２０１のプリンターの探索処理について説明する。この処理は印刷プラグイン３０３が前述のようにＯＳからプリンターを探索する指示を受け付けることで開始される。
【００３２】
Ｓ３０１において、印刷プラグインは、１つ以上の接続済みのネットワーク（ＬＡＮ１０３や、１０６及び１０７で構成されるＷＦＤ）に対して、プリンターを探索するための問い合わせパケットをブロードキャスト送信する。問い合わせパケットには、プリンターの識別子（ＵＵＩＤやシリアルナンバー）、印刷ケイパビリティー（印刷可能用紙サイズ、カラー／モノクロ、２ｉｎ１の割付可否  など）を問い合わせるコマンドが含まれている。また、問い合わせパケットとして、例えばＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）といった通信プロトコルが使用される。
【００３３】
Ｓ３０２において印刷プラグイン３０３は、インターネット印刷に対応したプリンターの登録があるかを判定する。Ｓ３０２の判定がＹｅｓの場合、処理をＳ３０３に進める。Ｓ３０２の判定がＮｏの場合、処理をＳ３０４に進める。
【００３４】
Ｓ３０３において印刷プラグイン３０３は、図８の登録画面で登録されているインターネット印刷に対応したプリンターの存在を確認するために、インターネット上のサーバーコンピューター１０８に対して問い合わせパケットを送信する。問い合わせパケットで取得する情報は、Ｓ３０１で取得する情報と同一である。また、サーバーコンピューター１０８が提供するインターネット印刷サービスはＷｅｂサービスとして提供されており、問い合わせパケットとしてＨＴＴＰの通信プロトコルが使用される。また、印刷プラグイン３０３が対応するインターネット印刷サービスであるかの特定や、問い合わせパケットを送信するインターネット上のアドレスの特定は、８０１に示すＩＤのドメイン名に基づいて実行される。
【００３５】
Ｓ３０４において印刷プラグインは、Ｓ３０１及びＳ３０３で実施した問い合わせパケットの応答受信待機を開始する。さらに、Ｓ３０５において応答受信待機のタイムアウトを判定する。Ｓ３０５でＹｅｓの場合、プリンターの探索処理は終了し、Ｓ２０２に処理を進める。ただし、タイムアウト時間は十分に取られており、少なくとも１回以上はＳ３０６に処理が進められる。Ｓ３０５でＮｏの場合、Ｓ３０６に処理を進める。Ｓ３０６では、Ｓ３０１及びＳ３０３で実施した問い合わせパケットの応答受信があったかを判定する。Ｓ３０６でＹｅｓの場合、Ｓ３０７に処理を進める。Ｓ３０６でＮｏの場合、Ｓ３０４に処理を戻し、再び応答受信待機の処理を行う。Ｓ３０７において印刷プラグインは、受信した応答結果をプリンターの識別子及び印刷ケイパビリティーと共に、探索リストに追加する。
【００３６】
図９はＲＡＭ２０４上に展開される探索リストを可視化したものである。データ処理装置１０１と複数の接続経路を有するプリンター１０４の探索結果として、９０１、９０２、９０３の応答を得ている。データ処理装置１０１とインターネット印刷サービスのみを介した接続経路を有するプリンター１０５の探索結果として、９０４の応答を得ている。
【００３７】
図１３のＳ２０２において印刷プラグイン３０３は、Ｓ２０１で作成した探索リストの中から、印刷システム３０２に通知すべきプリンターの探索結果を選別する。
【００３８】
図１５のフローチャートを用いてプリンターの探索結果を選別する処理を説明する。
【００３９】
Ｓ４０１において印刷プラグイン３０３は、Ｓ１０２におけるボタン５０２押下のタイミングで最終的に設定されていた現在の印刷設定を取得する。ここで現在の印刷設定とは、ＯＳによって提供される図５の基本印刷設定画面で受け付けた５０４、５０５、５０６及び、印刷プラグイン３０３が提供する図６の拡張印刷設定画面で受け付けた６０１、６０２を意味する。
【００４０】
Ｓ４０２において印刷プラグイン３０３は、Ｓ２０１で作成した探索リストに含まれるプリンターの情報を上から順に１つ取得し（まず図９の９０１を取得してＳ４０６まで処理を進める。その後、Ｓ４０６から処理が戻されると、次に図９の９０２、９０３、９０４といった順に処理を行う）、選別リスト中のプリンターの情報と比較していく。選別リストは図１０に示すように、現在の印刷設定に不適合な印刷設定を管理する１００３の項目が、探索リストに比較して追加されている。なお、選別リストは探索リストから選別することが目的のため、識別子が一致するプリンターの探索結果がリストされることは無い（次ステップ以降において、識別子が一致するプリンターを探索結果にリストしないための処理を説明する）。
【００４１】
Ｓ４０３において印刷プラグイン３０３は、選別リストの中に識別子が一致するプリンターの探索結果が存在するか判定する。これによって、探索によって見つかったプリンターのうち、重複して見つかったプリンターを検出することができる。Ｓ４０３においてＹｅｓの場合、Ｓ４０７に処理を進める。Ｓ４０３においてＮｏの場合、Ｓ４０４に処理を進める。
【００４２】
Ｓ４０４において印刷プラグイン３０３は、Ｓ４０１で取得した現在の印刷設定を、Ｓ４０２で探索リストから取得したプリンターの印刷ケイパビリティーに照らし合わせ、現在の印刷設定がそのまま設定可能であるかを判定する。具体的には、Ｓ４０１で取得した現在の設定が５０４、５０５、５０６、６０１、６０２である場合、前記それぞれの設定値が、Ｓ４０２で取得した印刷ケイパビリティーの各項目９０５、９０６、９０７、９０８、９０９に対して範疇に収まっているかを判定する。Ｓ４０４においてＹｅｓの場合、Ｓ４０５に処理を進める。Ｓ４０４においてＮｏの場合、Ｓ４０９に処理を進める。
【００４３】
Ｓ４０５において印刷プラグイン３０３は、選別リストにＳ４０２で取得したプリンターの情報を追加する。現在の印刷設定がそのまま設定可能なプリンターであるため、１００１の列に示すようにリストされる。
【００４４】
Ｓ４０９において印刷プラグイン３０３は、選別リストにＳ４０２で取得したプリンターの情報と、前記プリンターでは現在の印刷設定がそのまま設定不可能である項目の印刷設定情報を追加する。このとき、１００２の列に示すようにリストされる。１００２では現在の印刷設定のうち、２ｉｎ１という印刷設定項目の変更が必要であることを示している。このように、印刷処理にあたって印刷設定を変更する必要があるプリンターを応答する場合は、そのプリンター自身の情報と、印刷処理にあたって印刷設定のうち変更する必要がある印刷設定項目を応答する。
【００４５】
Ｓ４０７における処理は、Ｓ４０４と同一である。重複して見つかったプリンターについて、プリンターが見つかった印刷経路による制限によって、印刷処理にあたって印刷設定を変更する必要があるか否か判断する。Ｓ４０７においてＹｅｓの場合、Ｓ４０８に処理を進める。Ｓ４０７においてＮｏの場合、Ｓ４１１に処理を進める。
【００４６】
Ｓ４０８において印刷プラグイン３０３は、既に選別リストに追加されている同じ識別子を持つプリンターが現在の印刷設定をそのまま設定可能なプリンターではないか、またはＳ４０２で取得したプリンターの印刷ケイパビリティーが、既に選別リストに追加されている同じ識別子を持つプリンターの印刷ケイパビリティーより広いか判定する。ただし、後者の条件を判定するにあたっては、印刷ケイパビリティーの構成要素は用紙サイズや割付印刷など項目が多岐に渡り、その全てを加味した判定を行うと判定が複雑になる。そこで、例えば主要な項目である用紙サイズのサポート数だけで判定を行っても良い。なお、前記判定においてそのサポート数が同一となった場合、先に選別リストに登録されているプリンターを優先する処理とする（Ｓ４０８において、Ｎｏの判定とする）。前記２つの判定において、いずれかを満たす場合（ステップＳ４０８：Ｙｅｓ）、Ｓ４１０に処理を進める。前記２つの判定において、いずれも満たさない場合（ステップＳ４０８：Ｎｏ）、Ｓ４１２に処理を進める。
【００４７】
Ｓ４１０において印刷プラグイン３０３は、既に選別リストに追加されている同じ識別子を持つプリンターのリストに対して上書きで、Ｓ４０２で取得したプリンターの情報を追加する。この処理によって、例えば、既に選別リストに追加されていた印刷処理にあたって印刷設定を変更する必要があるプリンターの情報を、印刷処理にあたって印刷設定を変更する必要がないプリンターの情報で上書きすることができる。
【００４８】
Ｓ４１２では印刷プラグイン３０３は、選別リストに対して何も処理を実行しない。
【００４９】
Ｓ４１１において印刷プラグイン３０３は、既に選別リストに追加されている同じ識別子を持つプリンターが現在の印刷設定をそのまま設定可能なプリンターではなく、かつＳ４０２で取得したプリンターの印刷ケイパビリティーが既に選別リストに追加されている同じ識別子を持つプリンターの印刷ケイパビリティーより広いか判定する。この２つの条件を両方満たす場合（Ｓ４１１：Ｙｅｓ）、ステップ４１３に処理を進める。この２つの条件を片方しか満たさないか、又は両方満たさない場合（Ｓ４１１：Ｎｏ）、Ｓ４１２に処理を進める。
【００５０】
Ｓ４１３において印刷プラグイン３０３は、既に選別リストに追加されている同じ識別子を持つプリンターのリストに対して上書きで、Ｓ４０９と同一の情報を追加する。
【００５１】
Ｓ４０６で印刷プラグイン３０３は、Ｓ４０２において探索リストから取得したプリンターの情報が、探索リストの最後方であるかを判定する。Ｓ４０６がＹｅｓの場合、本選別処理を終了し、図１３のＳ２０３に処理を進める。Ｓ４０６がＮｏの場合、Ｓ４０２に処理を戻す。このとき、Ｓ４０２において印刷プラグイン３０３は、探索リスト上で次に配置されているプリンターの情報を取得することになる。
【００５２】
図１５の処理を行うことで、Ｓ４０３の処理で探索によってプリンターが重複して見つかった場合は、Ｓ４１０、Ｓ４１２とＳ４１３の処理で現在の印刷設定を満足しない接続経路のプリンターを極力除外している。こうすることで、Ｓ２０３では、重複して見つかったプリンターから、印刷処理にあたって印刷設定を変更する必要があるプリンターを優先的に除いたプリンターの探索結果を応答することができる。
【００５３】
例えば、重複して見つかったプリンターに、印刷処理にあたって印刷設定を変更する必要がないと判断された経路Ａのプリンターと、印刷処理にあたって印刷設定を変更する必要があると判断された経路Ｂのプリンターが含まれているとする。この場合、図１５の処理では経路Ａのプリンターを含み、経路Ｂのプリンターを含まないプリンターの探索結果を応答する。このように、複数の経路でプリンターが重複して見つかっても、いずれか一つの経路に絞って選別リストにプリンターが追加されるため、図７の画面では重複を排除してプリンターが表示される。
【００５４】
なお、図１５の処理では重複して見つかったプリンターについて、いずれのプリンターも印刷設定を満足していない場合、Ｓ４０９やＳ４１３により、いずれかのプリンターを選別リストに追加している。これに限らず、探索によって見つかったプリンターについて、印刷設定を満足していなければ選別リストに追加しない処理を行なってもかまわない。この構成にした場合、重複して見つかったプリンターについて、いずれのプリンターも印刷設定を満足していなければ、どのプリンターも選別リストに追加されない。
【００５５】
図１３に戻り処理の説明を続ける。
【００５６】
Ｓ２０３において印刷プラグイン３０３は、Ｓ２０２で作成した選別リストに基づき、印刷システムにプリンターの探索結果を返却する。
【００５７】
Ｓ２０４において印刷プラグイン３０３は、Ｓ２０１及びＳ２０２及びＳ２０３で行った一連の探索処理を継続するか否かを、タイムアウトで判定する。タイムアウト時間に達している場合（Ｓ２０４：Ｙｅｓ）、ステップＳ２０６に処理を進める。タイムアウト時間に達していない場合（Ｓ２０４：Ｎｏ）、ステップＳ２０５に処理を進める。
【００５８】
Ｓ２０６において印刷プラグイン３０３は、印刷システム３０２に対して探索処理が終了したことを通知する返却を行い、印刷プラグイン３０３の処理を終了する。
【００５９】
Ｓ２０５において印刷プラグイン３０３は、Ｓ２０１の処理を開始してから、特定時間以上の経過があったかを判定する（ネットワークに負荷を掛けないため、特定の時間間隔を置くポーリング処理とする）。Ｓ２０５がＹｅｓの場合、Ｓ２０１に処理を戻し、再度プリンターの探索を開始する。Ｓ２０５がＮｏの場合、アイドル状態で時間経過を待つ。
【００６０】
印刷システム３０２は、Ｓ１０４において印刷プラグイン３０３からの探索結果の返却を待機しており、返却を受け取ったタイミングでＳ１０５に処理を進める（Ｓ１０４：Ｙｅｓ）。返却を待っている間はアイドル状態となる（Ｓ１０４：Ｎｏ）。なお、印刷プラグイン３０３から探索処理の終了通知が返却されている場合は、印刷プラグイン３０３から最後に受け取った探索結果を用いて、処理をＳ１０５に進める。
【００６１】
Ｓ１０５において印刷システム３０２は、印刷プラグイン３０３から返却された探索結果に基づき、７０１、７０２に示すようにプリンターの探索結果のリストを表示して図７の画面を更新する。７０６は、印刷プラグイン３０３が指定した文字列が表示されるテキスト表示領域である。印刷プラグイン３０３は、印刷システム３０２に探索結果を返却する際、前記テキスト表示領域に表示したい文字列を通知できる。そのため、印刷プラグイン３０３は、現在の印刷設定がそのまま設定できないプリンターのリスト表示のテキスト表示領域に対して、設定できない印刷設定を７０６で示すように表示する。
【００６２】
このように、印刷プラグインがＯＳからプリンターを探索する指示を受け付けた場合、その後、印刷プラグインの応答に基づいてプリンターの探索結果が表示される。
【００６３】
Ｓ１０６において印刷システム３０２は、図７で表示する画面上におけるプリンターの探索結果のうち、ユーザーによっていずれかの１つが押下により選択されたかを判定する。Ｓ１０６においてＹｅｓの場合、Ｓ１０７に処理を進める。Ｓ１０６においてＮｏの場合、Ｓ１０４に処理を戻す。このとき、印刷プラグイン３０３側でＳ２０４及びＳ２０５を経て、再度Ｓ２０１、Ｓ２０２，Ｓ２０３を処理した、新規の探索結果が印刷プラグイン３０３から返却される。プリンターの中には、スリープ状態からの問い合わせパケットの応答に時間が掛かる機種もあることから、前記新規の探索結果は、初回の探索結果と異なるケースがある。このとき、Ｓ１０５では、前回と異なるプリンターの探索結果のリストが表示されることになる。７０４は前画面に戻るボタンであり、ユーザーはボタン７０４を押下して図５の画面に戻ることができるが、ユーザーからプリンターは選ばれなかったとみなす処理となるため、Ｓ１０１時点と同じ状態の画面表示となる。
【００６４】
Ｓ１０７において印刷システム３０２は、図５に示す印刷設定画面を表示し、５０１の印刷設定画面上で設定するプリンターを、Ｓ１０６で選択されたプリンターに更新し、印刷システム３０２及び印刷プラグイン３０３による、プリンターの探索処理を終了する。
【００６５】
以上の処理により、データ処理装置が実施するプリンターの探索において、接続経路の違いで複数の応答が同一のプリンターからあった場合に、同一のプリンターに対してユーザーが要求する印刷設定を満足するプリンターの探索結果を１つだけ表示する。また、同一のプリンターに対してユーザーが指定する印刷設定を満たすプリンターの探索結果が１つも無い場合は、その中で最も印刷ケイパビリティーが広いプリンターの探索結果を１つだけ表示する。つまり、いずれの場合でもユーザーは接続経路の違いで印刷ケイパビリティーが異なることを気にする必要が無く、プリンター選択の際の利便性が向上する。
【００６６】
［実施例２］
実施例１の印刷システム３０２及び印刷プラグイン３０３によるプリンターの探索処理では、複数の応答が同一のプリンターからあった場合に、ユーザーが要求する印刷設定を満足するプリンターを１つだけ表示していた。しかしながら、通信経路によっては従量制の通信料課金が敷かれているケースもあり、ユーザーは接続経路を選択したい場合がある。よって、実施例１のＳ２０２のプリンターの選別処理を、実施例２ではプリンターの整列処理に置き換えて実施することで、複数の応答が同一のプリンターからあっても、その全ての接続経路を探索結果に表示する。
【００６７】
なお、実施例２の探索処理は、全ての接続経路の探索結果を表示するスイッチ７０３がＯＮに設定されている場合に実行されるものとし、前記スイッチがＯＦＦに設定されているもしくは本スイッチが存在しない場合は実施例１の探索処理となっても良い。
【００６８】
また、図７の画面では重複して見つかったプリンターから印刷設定を変更する必要があるプリンターが除かれていた。これに対して、実施例１のスイッチ７０３がＯＮに設定されたことをトリガーとして、後述する図１６の処理の実行や、後述する図１２の画面の表示を行うように構成しても構わない。このように構成した場合は、スイッチ７０３がＯＮに設定されたことをトリガーとして、図７の画面から除かれていたプリンターが探索結果に含まれ、図１２の画面に表示される。
【００６９】
図１６は実施例２におけるプリンターの整列処理のフローチャートを示したものである。Ｓ５０１からＳ５０７及びＳ５０９は、それぞれ実施例１のＳ４０１からＳ４０７及びＳ４０９と同一であり、説明を割愛する。
【００７０】
Ｓ５０８において印刷プラグイン３０３は、既に整列リストに追加されている同じ識別子を持つプリンターは、現在の印刷設定がそのまま設定可能なプリンターでは無いかの判定を行う。Ｓ５０８においてＹｅｓの場合、Ｓ５１０に処理を進める。Ｓ５０８においてＮｏの場合、Ｓ５１１に処理を進める。
【００７１】
Ｓ５１０において印刷プラグイン３０３は、既に整列リストに追加されている同じ識別子を持つプリンターのリストに対して１つ上に、Ｓ５０２で取得したプリンターの情報を追加する。図１１は整列リストの変遷を示したイメージ図であり、例えば整列リスト１１０１の状態から、その１つ上のリストにプリンターの情報が追加された状態を示したのが、整列リスト１１０２における１１０３である。
【００７２】
Ｓ５１１において印刷プラグイン３０３は、既に整列リストに追加されている同じ識別子を持つプリンターのリストに対して１つ下に、Ｓ５０２で取得したプリンターの情報を追加する。例えば、整列リスト１１０２の状態から、その１つ下のリストにプリンターの情報が追加された状態を示したのが、整列リスト１１０４における１１０５である。
【００７３】
Ｓ５１２において印刷プラグイン３０３は、整列リストのなかで最も下方の識別子が一致するプリンターのリストに対して１つ下に、整列リストにＳ５０２で取得したプリンターの情報と、前記プリンターでは現在の印刷設定がそのまま設定不可能である項目の印刷設定情報を追加する。このとき、整列リスト１１０４における１１０６の１つ下に前記情報が追加されることになる（不図示）。
【００７４】
図１１に示す最終的な整列リストは１１０７である。また、この整列リストに基づいて印刷プラグイン３０３が印刷システム３０２にプリンターの探索結果として返却した場合、印刷システム３０２で実施されるプリンターの探索結果のリスト表示の例を図１２の１２０１に示す。このとき、全ての接続経路の探索結果を表示するスイッチの状態は１２０２に示すようにＯＮであることはいうまでもない。
【００７５】
以上の処理により、データ処理装置が実施するプリンターの探索において、接続経路の違いで複数の応答が同一のプリンターからあった場合に、同一のプリンターの探索結果をリスト上に連続表示しながら、ユーザーが要求する印刷設定を満足するプリンターを前記連続表示の上位に表示するので、ユーザーは印刷ケイパビリティーの満足と、接続経路の関係を意識しながらプリンターを選択することができる。
【００７６】
［その他の実施例］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピューターにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2018181069.tif 000003
【図２】
2018181069.tif 000004
【図３】
2018181069.tif 000005
【図４】
2018181069.tif 000006
【図５】
2018181069.tif 000007
【図６】
2018181069.tif 000008
【図７】
2018181069.tif 000009
【図８】
2018181069.tif 000010
【図９】
2018181069.tif 000011
【図１０】
2018181069.tif 000012
【図１１】
2018181069.tif 000013
【図１２】
2018181069.tif 000014
【図１３】
2018181069.tif 000015
【図１４】
2018181069.tif 000016
【図１５】
2018181069.tif 000017
【図１６】
2018181069.tif 000018