(57)【要約】【課題】  本発明はユーザーによって選択された画像形成装置に対応するファイルのダウンロードを高速に完了し、印刷を速やかに開始することを目的とする。【解決手段】  本発明の情報処理装置は、ネットワークに接続されている画像形成装置を探索し、複数の画像形成装置が見つかった場合に、複数の画像形成装置に対応する複数のファイルのダウンロードを開始し、探索によって見つかった画像形成装置の一覧から印刷先として一つの画像形成装置が選択された場合に、選択された一つの画像形成装置以外の画像形成装置に対応するファイルのダウンロードを停止し、ダウンロードされたファイルに基づいて印刷処理を行う。【選択図】  図１０
2017021537.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続されている画像形成装置を探索する探索手段と、
前記探索手段の探索によって見つかった画像形成装置の一覧を表示する表示手段と、
画像形成装置に対応し、印刷処理に用いられるファイルに基づいて印刷処理を行う処理手段と、
前記探索手段の探索によって見つかった画像形成装置に対応するファイルのダウンロードの開始と停止を制御する通信手段と、を有し、
前記通信手段は、
前記探索手段によって見つかった複数の画像形成装置に対応する複数のファイルのダウンロードを開始し、前記表示手段によって表示された前記一覧から印刷先として一つの画像形成装置が選択された場合に、選択された前記一つの画像形成装置以外の画像形成装置に対応するファイルのダウンロードを停止することを特徴とする情報処理装置。
【請求項２】
前記探索手段の探索によって見つかった画像形成装置に対応するファイルが前記情報処理装置に保存されているか否か判定する判定手段と、を有し、
前記通信手段は、前記判定手段が前記ファイルは前記情報処理装置に保存されていないと判定した場合に、前記ファイルのダウンロードを開始することを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記通信手段は、前記探索手段の探索によって見つかった画像形成装置に対応するファイルを外部情報処理装置からダウンロードする処理を開始し、
前記情報処理装置は、前記外部情報処理装置にアクセス可能か判定する第２の判定手段と、
前記第２の判定手段により前記外部情報処理装置にアクセス不可能であると判定され、前記印刷先として選択された前記一つの画像形成装置に対応するファイルがダウンロードできない場合に、選択された前記一つの画像形成装置に対応するファイルを手動で設定するためのユーザーインターフェースを表示する表示手段と、を有することを特徴とする請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記表示手段は、前記通信手段が前記画像形成装置に対応するファイルをダウンロードするためのアクセス先を設定するためのユーザーインターフェースを表示し、
前記通信手段は、前記探索手段の探索によって見つかった画像形成装置に対応するファイルを、前記ユーザーインターフェースにより設定された前記アクセス先からダウンロードする処理を開始することを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記探索手段によって複数の画像形成装置が見つかった場合に、前記複数の画像形成装置に対応する複数のファイルのダウンロード順を設定する設定手段と、を有し、
前記通信手段は、前記設定手段により設定された前記ダウンロード順に基づいて、前記画像形成装置に対応するファイルのダウンロードを開始することを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
特定容量以上のメモリが確保できるか否かを判定する第３の判定手段と、を有し、
前記通信手段は、前記第３の判定手段により前記特定容量以上のメモリが確保できる場合は、第１の印刷データを生成するための、画像形成装置に対応するファイルをダウンロードし、前記第３の判定手段により前記特定容量以上のメモリが確保できない場合は、第２の印刷データを生成するための、画像形成装置に対応するファイルをダウンロードすることを特徴とする請求項１乃至５のいずれか１項に記載の情報処理装置。
【請求項７】
コンピュータに、
ネットワークに接続されている画像形成装置を探索する探索工程と、
前記探索工程の探索によって見つかった画像形成装置の一覧を表示する表示工程と、
画像形成装置に対応し、印刷処理に用いられるファイルに基づいて印刷処理を行う処理工程と、
前記探索工程の探索によって見つかった画像形成装置に対応するファイルのダウンロードの開始と停止を制御する通信工程と、を実行させ、
前記通信工程は、
前記探索工程によって見つかった複数の画像形成装置に対応する複数のファイルのダウンロードを開始し、前記表示工程によって表示された前記一覧から印刷先として一つの画像形成装置が選択された場合に、選択された前記一つの画像形成装置以外の画像形成装置に対応するファイルのダウンロードを停止することを特徴とするプログラム。
【請求項８】
前記コンピュータに、
前記探索工程の探索によって見つかった画像形成装置に対応するファイルが前記コンピュータに保存されているか否か判定する判定工程と、を実行させ、
前記通信工程は、前記判定工程で前記ファイルは前記コンピュータに保存されていないと判定した場合に、前記ファイルのダウンロードを開始することを特徴とする請求項７に記載のプログラム。
【請求項９】
前記コンピュータに、
前記通信工程は、前記探索工程の探索によって見つかった画像形成装置に対応するファイルを外部コンピュータからダウンロードする処理を開始し、
前記コンピュータは、前記外部コンピュータにアクセス可能か判定する第２の判定工程と、
前記第２の判定工程により前記外部コンピュータにアクセス不可能であると判定され、前記印刷先として選択された前記一つの画像形成装置に対応するファイルがダウンロードできない場合に、選択された前記一つの画像形成装置に対応するファイルを手動で設定するためのユーザーインターフェースを表示する表示工程と、を実行させることを特徴とする請求項７又は請求項８に記載のプログラム。
【請求項１０】
前記表示工程は、前記通信工程で前記画像形成装置に対応するファイルをダウンロードするためのアクセス先を設定するためのユーザーインターフェースを表示し、
前記通信工程は、前記探索工程の探索によって見つかった画像形成装置に対応するファイルを、前記ユーザーインターフェースにより設定された前記アクセス先からダウンロードする処理を開始することを特徴とする請求項９に記載のプログラム。
【請求項１１】
前記コンピュータに、
前記探索工程によって複数の画像形成装置が見つかった場合に、前記複数の画像形成装置に対応する複数のファイルのダウンロード順を設定する設定工程と、を実行させ、
前記通信工程は、前記設定工程により設定された前記ダウンロード順に基づいて、前記画像形成装置に対応するファイルのダウンロードを開始することを特徴とする請求項７乃至１０のいずれか１項に記載のプログラム。
【請求項１２】
前記コンピュータに、
特定容量以上のメモリが確保できるか否かを判定する第３の判定工程と、を実行させ、
前記通信工程は、前記第３の判定工程により前記特定容量以上のメモリが確保できる場合は、第１の印刷データを生成するための、画像形成装置に対応するファイルをダウンロードし、前記第３の判定工程により前記特定容量以上のメモリが確保できない場合は、第２の印刷データを生成するための、画像形成装置に対応するファイルをダウンロードすることを特徴とする請求項７乃至１１のいずれか１項に記載のプログラム。
【請求項１３】
ネットワークに接続されている画像形成装置を探索する探索工程と、
前記探索工程の探索によって見つかった画像形成装置の一覧を表示する表示工程と、
画像形成装置に対応し、印刷処理に用いられるファイルに基づいて印刷処理を行う処理工程と、
前記探索工程の探索によって見つかった画像形成装置に対応するファイルのダウンロードの開始と停止を制御する通信工程と、を有し、
前記通信工程は、
前記探索工程によって見つかった複数の画像形成装置に対応する複数のファイルのダウンロードを開始し、前記表示工程によって表示された前記一覧から印刷先として一つの画像形成装置が選択された場合に、選択された前記一つの画像形成装置以外の画像形成装置に対応するファイルのダウンロードを停止することを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はファイルのダウンロードを制御する技術に関する。
【背景技術】
【０００２】
特許文献１はプリンターを探索し、探索によって見つかったプリンターのうち、選択されたプリンターを印刷先に指定する技術について開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１５−０４５９７２号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１の技術によって印刷先となるプリンターを指定しても、印刷処理を行う印刷システムやアプリケーションが何ら追加のファイルなしに印刷処理を行えるとは限らない。そこで、本明細書では探索によって見つかった画像形成装置に対応するファイルをダウンロードし、ダウンロードしたファイルに基づいて印刷処理が行われるシステムについて検討する。このシステムにおいて、複数の画像形成装置が探索によって見つかった場合は複数の画像形成装置に対応する複数のファイルのダウンロードが行われる。
【０００５】
しかしながら、複数のファイルのダウンロード中にユーザーが印刷先の画像形成装置を選択することで決定した場合、選択した画像形成装置以外の画像形成装置に対応するファイルのダウンロードを継続してしまうと選択した画像形成装置に対応するファイルのダウンロードが遅延してしまう可能性がある。
【０００６】
これに対して本発明はユーザーによって選択された画像形成装置に対応するファイルのダウンロードを高速に完了し、印刷を速やかに開始することを目的とする。
【課題を解決するための手段】
【０００７】
上記の目的を達成するための本発明に係る情報処理装置は、
ネットワークに接続されている画像形成装置を探索する探索手段と、
前記探索手段の探索によって見つかった画像形成装置の一覧を表示する表示手段と、
画像形成装置に対応し、印刷処理に用いられるファイルに基づいて印刷処理を行う処理手段と、
前記探索手段の探索によって見つかった画像形成装置に対応するファイルのダウンロードの開始と停止を制御する通信手段と、を有し、
前記通信手段は、
前記探索手段によって見つかった複数の画像形成装置に対応する複数のファイルのダウンロードを開始し、前記表示手段によって表示された前記一覧から印刷先として一つの画像形成装置が選択された場合に、選択された前記一つの画像形成装置以外の画像形成装置に対応するファイルのダウンロードを停止することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、ユーザーによって選択された画像形成装置に対応するファイルのダウンロードを高速に完了し、印刷を速やかに開始できる。
【図面の簡単な説明】
【０００９】
【図１】本発明の構成を示す図である。
【図２】データ処理装置のハードウェア構成を示す図である。
【図３】印刷処理装置のハードウェア構成を示す図である。
【図４】サーバーコンピューターのハードウェア構成を示す図である。
【図５】データ処理装置のソフトウェアの構成を説明するブロック図である。
【図６】サーバーコンピューターのソフトウェアの構成を説明するブロック図である。
【図７】データ処理装置で表示可能なＵＩの一例を示す図である。
【図８】データ処理装置で表示可能なＵＩの一例を示す図である。
【図９】データ処理装置で表示可能なＵＩの一例を示す図である。
【図１０】データ処理装置における印刷サブシステムのフローチャートである。
【図１１】データ処理装置で表示可能なＵＩの一例を示す図である。
【図１２】データ処理装置で表示可能なＵＩの一例を示す図である。
【図１３】データ処理装置で表示可能なＵＩの一例を示す図である。
【図１４】本発明の構成を示す図である。
【発明を実施するための形態】
【００１０】
例えば、Ａｎｄｒｏｉｄ（ＡｎｄｒｏｉｄはＧｏｏｇｌｅ  Ｉｎｃ．の登録商標）といったモバイル端末に搭載されるＯＳにおいて、各アプリケーションに共通の印刷機能を提供する印刷システムがある（Ａｎｄｒｏｉｄ  Ｖｅｒｓｉｏｎ  ４．４以降に搭載）。また、前記印刷システムには、「印刷サブシステム」といわれる各プリンターベンダーが各自の印刷処理装置に適応させるための依存処理をプラグイン形式で適宜追加・削除できる仕組みがある。例えば、Ｃａｎｏｎ  Ｐｒｉｎｔ  Ｓｅｒｖｉｃｅ（Ｃａｎｏｎ  Ｐｒｉｎｔ  Ｓｅｒｖｉｃｅはキヤノン株式会社の登録商標）は、Ａｎｄｒｏｉｄの印刷サブシステムとして提供されている。印刷サブシステムはＧｏｏｇｌｅ  Ｐｌａｙ（Ｇｏｏｇｌｅ  ＰｌａｙはＧｏｏｇｌｅ  Ｉｎｃ．の登録商標）からダウンロードしてインストールするか、モバイル端末の出荷時にプリインストールして提供される。
【００１１】
一方で、モバイル端末ではストレージ容量が少なく、また、インターネット通信が従量制課金となるケースがある。そのため、印刷サブシステムに限ったことではないが、ファイルサイズは小さいほど良い。ここで、印刷サブシステムはサポート対象とする印刷処理装置の機種依存を吸収するために、前記印刷処理装置それぞれの機種依存情報を含む機種依存ファイルを保持し、機種依存ファイルに基づいて印刷処理を行う。しかし、サポート対象とする印刷処理装置を増やすごとにモバイル端末に占める機種依存ファイルのファイルサイズが増大する。そのため、本明細書では機種依存ファイルを必要な印刷処理装置の分だけ後からダウンロードさせることで、印刷サブシステムのイニシャルサイズを極力抑える方法を採用する。
【００１２】
［実施例１］
図１は、本発明の一実施形態におけるデータ処理システムの構成を示す図である。本例は、サーバーコンピューター、情報処理装置の一例であるモバイル形態のデータ処理装置と画像形成装置の一例である印刷処理装置とがネットワークを介して通信可能なシステムである。
【００１３】
図１において、１０１はモバイル形態のデータ処理装置であって、印刷処理装置１０４若しくは１０５に対して印刷ジョブ送信を指示するユーザーが使用するコンピューターである。１０４及び１０５は印刷処理装置であって、プリンター機能のほか、コピー機能、スキャナ機能等を備える。
【００１４】
１０３は上記装置が接続されているＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）であって、ＬＡＮ１０３を介して上記装置は情報の相互通信を行っている。１０２は無線ＬＡＮターミナルである。無線ＬＡＮターミナル１０２は、一般的なネットワーク・ルーター機能を有した無線ＬＡＮの親機であって、家庭内や事務所などの中で無線ＬＡＮを提供している。また、データ処理装置１０１はモバイル端末であることから、無線ＬＡＮターミナル１０２を介してＬＡＮ１０３に参加することができる。データ処理装置１０１は、無線ＬＡＮターミナル１０２が提供する無線ＬＡＮエリアに入ると、予め設定していた認証情報を利用して自動的にＬＡＮ１０３のネットワークに参加することができる。
【００１５】
１０６はインターネット上に存在する外部情報処理装置の一例であるサーバーコンピューターである。ＬＡＮ１０３はインターネットに接続されており、ＬＡＮ１０３のネットワークに参加している装置はサーバーコンピューター１０６にアクセスすることができる。
【００１６】
図２は、図１におけるデータ処理装置１０１のハードウェア構成を示すブロック図である。
【００１７】
なお、データ処理装置１０１は、モバイル端末やスマートフォンであり、小型端末用のオペレーティングシステムや、通話、データ通信を制御するプログラムが動いていても構わない。あるいは後述する音声制御部２０６及びマイク・スピーカ２１３、位置検出制御部２１０、ＧＰＳセンサー２１６、携帯電話データ通信部２１２等を備えないパーソナルコンピュータであっても構わない。
【００１８】
ハードウェアの各構成要素は、システムバス２０１に接続されている。  ＲＯＭ２０３にはデータ処理装置１０１におけるオペレーティングシステム及び、通話、データ通信を制御するアプリケーションが格納されており、ＣＰＵ２０２で実行される。  データ通信を制御するアプリケーションとしては、印刷アプリケーションやＭａｉｌソフト、Ｗｅｂブラウザなどがある。
【００１９】
加えて、ＣＰＵ２０２がＲＯＭ２０３やＲＡＭ２０４に記憶されているプログラムに基づき処理を実行することによって、図５に示されるようなデータ処理装置１０１のソフトウェア構成及び後述するフローチャートの各ステップの処理が実現される。
【００２０】
ＲＡＭ２０４は、プログラムを実行するためのワークメモリエリアである。印刷アプリケーションが印刷ジョブを生成するワークメモリエリアである。また、ＲＡＭ２０４はＷｅｂブラウザがＷｅｂサーバーから取得してきたＷｅｂページデータやＷｅｂサービスにアクセスするための認証情報などを一時記憶するためのメモリでもある。記憶装置２０９は不揮発性の記憶装置であり、データ処理装置１０１の再起動後も保持しておく必要のある各種動作モード設定や、稼働ログなどが記憶される。
【００２１】
ＮｅｔｗｏｒｋＣｏｎｔｒｏｌｌｅｒ２０５は、無線ＬＡＮターミナル１０２を介してＬＡＮ１０３のネットワークに参加するための無線ＬＡＮ通信部２１１と、携帯キャリアの提供するネットワークに参加するための携帯電話データ通信部２１２の通信制御を行う。一般的に無線ＬＡＮのネットワークに参加できるとき、ＮｅｔｗｏｒｋＣｏｎｔｒｏｌｌｅｒ２０５は、無線ＬＡＮの接続を優先する。データ処理装置１０１が無線ＬＡＮのネットワークエリアから外れた場合には、携帯キャリアが提供する無線通信ネットワークへ参加する。
【００２２】
音声制御部２０６は、主に通話アプリケーションが起動しユーザーが電話をしているときに利用する。マイク・スピーカ２１３にて音声データの入出力を行い、音声制御部２０６は、その制御プログラムとの仲介を行っている。
【００２３】
表示制御部２０７は、データ処理装置１０１のディスプレイ２１４にて出力する情報の制御を行っている。入力制御部２０８は、データ処理装置１０１のボタンやタッチパネル２１５にてユーザーが指示した情報の制御を行っている。これらの音声制御部２０６、表示制御部２０７、入力制御部２０８を利用して、データ処理装置１０１上でのアプリケーションは、ネットワーク通信情報やデータ処理装置１０１のさまざまな情報をユーザーに提供する。
【００２４】
位置検出制御部２１０は、データ処理装置１０１の位置情報をＧＰＳセンサー２１６から取得しオペレーティングシステムに提供する。これらの制御は、ＣＰＵ２０２で動くオペレーティングシステムにて制御される。
【００２５】
図３は、図１における印刷処理装置１０４のハードウェア構成を説明するブロック図である。本例は、スキャナ機能と、プリンター機能を有する複合機（ＭＦＰ（Ｍｕｌｔｉ  Ｆｕｎｃｔｉｏｎ  Ｐｅｒｐｈｅｒａｌ））の例を示す。なお、印刷処理装置１０５のハードウェア構成については印刷処理装置１０５と同一であることから説明は割愛する。
【００２６】
図３において、３０１はＩ／Ｏで、ネットワーク（ＬＡＮ）１０３などの通信媒介を介してデータ処理装置１０１と接続している。Ｉ／Ｏ３０１は複数の接続形態に対応するために複数個搭載されていてもよい。このＩ／Ｏ３０１を通して、印刷処理装置１０４は、デバイスＩＤやスキャンイメージをデータ処理装置１０１、１０２に渡す。またデータ処理装置１０１より、各種の制御コマンドを受けて処理を行う。Ｉ／Ｆ制御部３０２は、印刷処理装置１０４に搭載されているスキャナやプリンター、またはファクスなどの処理系に関してデバイスＩＤを発行する制御をおこなっている。ＲＡＭ３０３は、一次記憶装置で、Ｉ／Ｏ３０１で取得した制御コマンドなどの外部データや、スキャナエンジン３１３で読み取られたイメージを格納するために使用される。さらに、ＲＡＭ３０３は、プリンタコントローラ３１０で展開されたプリンタエンジン３０６に渡される前のイメージの格納などに使用される。
【００２７】
ＲＡＭ３０３の割り当て管理はＲＡＭ制御部３０４が行っている。画像データ調歩回路３０５は、プリンタコントローラ３１０やスキャナエンジン３１３によって取り込まれたＲＡＭ制御部３０４に展開されたイメージをプリンタエンジン３０６の回転にあわせて出力する装置である。
【００２８】
プリンタエンジン３０６は紙などの出力メディアにイメージを現像する装置である。メインコントローラ３０８は、エンジンＩ／Ｆ３０７によりプリンタエンジン３０６の各種制御を行う。
【００２９】
また、メインコントローラ３０８は、制御の要のモジュールであり、スキャナコントローラ３０９やプリンタコントローラ３１０にＩ／Ｏ３０１経由でデータ処理装置１０１より受け取る制御言語の適切な振り分け処理を行う。さらに、メインコントローラ３０８は、それぞれのコントローラやユーザーインターフェース３１２からの指示をうけてプリンタエンジン３０６やスキャナエンジン３１３の制御を行う。
【００３０】
スキャナコントローラ３０９はデータ処理装置１０１より受けたスキャン制御コマンドをメインコントローラ３０８が解釈可能な内部実行命令に分解する。またスキャナエンジン３１３で読み取ったイメージをスキャン制御コマンドに変更する。
【００３１】
プリンタコントローラ３１０はデータ処理装置１０１より印刷ジョブとして受けたＰＤＬをメインコントローラ３０８が解釈可能な展開イメージなどを含む内部実行命令に分解する。展開イメージはプリンタエンジンまで運ばれ、用紙などの出力メディアに印刷される。
【００３２】
図４は、図１におけるサーバーコンピューター１０６のハードウェア構成を説明するブロック図である。サーバーコンピューター１０６において、４０１はＣＰＵであり、ＲＯＭ４０３あるいは外部メモリ４０６に記憶されたアプリケーションプログラム等に基づいて処理を実行する。さらに、ＣＰＵ４０１はシステムバス４０７に接続される各デバイスを総括的に制御する。４０２はＲＡＭで、ＣＰＵ４０１の主メモリ、ワークエリア等として機能する。４０３はＲＯＭであり、基本Ｉ／Ｏプログラム等の記憶領域として機能する読み出し専用のメモリである。このＲＯＭ４０３あるいは外部メモリ４０６には、ＣＰＵ４０１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等が記憶される。さらにＲＯＭ４０３あるいは外部メモリ４０６には上記アプリケーションプログラム等に基づく処理の際に使用するファイルやその他各種データを記憶する。４０４はネットワークＩ／Ｆであり、ネットワークへ接続しネットワーク通信を行う。４０５は外部メモリＩ／Ｆで、ハードディスク（ＨＤ）等の外部メモリ４０６とのアクセスを制御する。４０６は外部メモリであり、ブートプログラム、各種のアプリケーション、ユーザーファイル、編集ファイル等を記憶する。サーバーコンピューター１０６は、ＣＰＵ４０１がＲＯＭ４０３や外部メモリ４０６に書き込まれた基本Ｉ／ＯプログラムおよびＯＳを実行している状態で動作する。基本Ｉ／ＯプログラムはＲＯＭ４０３に書き込まれており、ＯＳはＲＯＭ４０３もしくは外部メモリ４０６に書き込まれている。そしてコンピューターの電源がＯＮされたときに、基本Ｉ／Ｏプログラム中のイニシャルプログラムロード機能により、ＲＯＭ４０３もしくは外部メモリ４０６からＯＳがＲＡＭ４０２に書き込まれ、ＯＳの動作が開始される。４０７はシステムバスであり、各デバイスを接続する。
【００３３】
図５は、図１に示したデータ処理装置１０１のソフトウェアの構成を説明するブロック図である。５０１はアプリケーションで、ＲＯＭ２０３にＯＳ上で動作するアプリケーションとしてインストールされている。５０２はＲＯＭ２０３にインストールされている印刷システムであって、ＯＳの機能としてＩ／Ｆが提供されており、各アプリケーションは共通で前記印刷システムを使用することができる。つまり、印刷機能を提供したいアプリケーション５０１だけでなく、その他アプリケーション５０８からも共通で使用されることになる。５０３は印刷サブシステムであり、印刷システム５０２にアドオン形式でインストールすることができる。印刷サブシステム５０３は探索によって見つかった印刷処理装置に対応する機種依存ファイルをダウンロードして、印刷処理に用いる。印刷サブシステムはプリンターベンダーごとにリリースされており、複数ベンダーの印刷処理装置を１台のデータ処理装置で扱う場合には、印刷サブシステム５０３及びその他印刷サブシステム５０９のように、複数の印刷サブシステムがアドインインストールされる構成となる。５０４は印刷サブシステムのＵＩ部であり、アプリケーション５０１から印刷システム５０２を介して印刷サブシステム５０３が呼び出された場合に、印刷サブシステム５０３固有の機能をユーザーに設定させるためのユーザーインターフェースを提供する。５０５は通信部であり、ＨＴＴＰ等の標準的なプロトコルを使用して外部の機器と通信する機能を提供する。５０６は印刷処理装置探索部であり、データ処理装置１０１が参加するＬＡＮ１０３上において、データ処理装置１０１がＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）で管理されるネットワーク機器を探索し、その中からデータ処理装置１０１が印刷可能な印刷処理装置を抽出する機能を提供する。５０７は印刷制御部で、通信可能な印刷処理装置１０４に対してＰＤＬデータと印刷設定情報で構成された印刷ジョブを生成し、その印刷ジョブを送信する機能を提供する。
【００３４】
図６は、図１に示したサーバーコンピューター１０６のソフトウェア構成を説明するブロック図である。サーバーコンピューター１０６において、アプリケーションおよび各モジュールは、外部メモリ４０６に保存されたファイルとして存在する。これらは実行時にＯＳやそのモジュールを利用するモジュールによってＲＡＭ４０２にロードされ実行されるプログラムモジュールである。また、アプリケーションは、外部メモリ４０６の不図示のＣＤ−ＲＯＭ、あるいはネットワークを経由して外部メモリ４０６のＨＤに追加することが可能となっている。６００はネットワークモジュールであり、各種コンピューターとのネットワーク通信を行う。ネットワークモジュール６００はＴＣＰ／ＩＰモジュール６０１、ＨＴＴＰモジュール６０２より構成される。ＴＣＰ／ＩＰモジュール６０１はＴＣＰ／ＩＰプロトコルでのネットワーク通信を行う。ＨＴＴＰモジュール６０２はトランスポート・プロトコルとしてＴＣＰを使用し、ＨＴＴＰプロトコルでのネットワーク通信を行う。６０４はＷｅｂサーバーサービスモジュールであり、データ処理装置１０１からのＨＴＴＰリクエストを受け取るとＨＴＴＰレスポンスを応答するサービスを提供する。６０５はデータ配信モジュールであり、ネットワーク通信を通してデータ処理装置１０１から受信したリクエストに従い、リクエストのあった印刷処理装置に対応する機種依存ファイルをデータ処理装置１０１から取得可能なＵＲＬに配置する。
【００３５】
図７は、データ処理装置１０１のアプリケーション５０１が印刷システム５０２を介して印刷サブシステムが提供する印刷設定を表示したユーザーインターフェースであり、ユーザーからの各種入力操作の受け付けに対する処理を行う。７０１は、アプリケーション５０１のユーザーインターフェースに対し、印刷サブシステム５０３が提供するユーザーインターフェースがオーバーレイされた状態を表示している。前記７０１の状態は、アプリケーション５０１においてユーザーが印刷機能を使用するためのトリガーボタンを押下した場合などに実行される。７０２は、印刷設定を表示すると同時に、印刷設定を変更するためのボタンである。７０３は、印刷先の印刷処理装置のプリンターモデル名および印刷処理装置のＩＰアドレスを表示すると同時に、印刷先とする印刷処理装置を探索及び変更するための画面に遷移するボタンである。以下、ボタン７０３を押下して開始される、探索によって見つかった印刷処理装置に対する印刷準備処理について説明する。
【００３６】
図１０は、データ処理装置１０１上のアプリケーション５０１から呼び出された印刷サブシステム５０３が実行する、印刷準備処理についてのフローチャートを示している。Ｓ１００１で印刷サブシステム５０３は、データ処理装置１０１が参加するＬＡＮ１０３上において、データ処理装置１０１がＳＮＭＰで管理されるネットワーク機器を探索するため、ＳＮＭＰをブロードキャストする。さらに、印刷サブシステム５０３は、Ｓ１００１のタイミングから数秒以内の間に（例えば１秒など）、前記ブロードキャストしたＳＮＭＰの応答があったネットワーク機器の中から、印刷サブシステム５０３が印刷可能な印刷処理装置を判別する。これにより、ネットワーク上の印刷処理装置の探索が行われる。そして、Ｓ１００２で印刷サブシステム５０３は図８の８０１のように、Ｓ１００１の探索によって見つかった印刷処理装置の一覧を応答があった順に表示する。
【００３７】
Ｓ１００３で印刷サブシステム５０３は、探索によって見つかった印刷処理装置に対応する機種依存ファイルが、印刷サブシステム５０３が認識できるＲＯＭ２０３に保存されているかどうかを判定する。探索によって見つかった印刷処理装置に対応する機種依存ファイルが、印刷サブシステム５０３が認識できるＲＯＭ２０３に保存されている場合には（Ｓ１００３：Ｙｅｓ）、Ｓ１００８に処理を進める。探索によって見つかった印刷処理装置に対応する機種依存ファイルが、印刷サブシステム５０３が認識できるＲＯＭ２０３に保存されていない場合には（Ｓ１００３：Ｎｏ）、Ｓ１００４に処理を進める。
【００３８】
なお、Ｓ１００３の判定を行わずに毎回探索によって見つかった印刷処理装置に対してＳ１００４の処理を行うように構成しても構わない。このような構成では後述するＳ１００４によって開始された機種依存ファイルのダウンロードが完了してもデータ処理装置には機種依存ファイルのキャッシュが行われない。その代わりにＳ１００４では、探索によって印刷処理装置が見つかる度に、見つかった印刷処理装置の機種依存ファイルのダウンロードが開始される。
【００３９】
Ｓ１００８で印刷サブシステム５０３は、図８の８０２に示すように、該印刷処理装置に対応する機種依存ファイルが、印刷サブシステム５０３が認識できるＲＯＭ２０３内に保存済みである旨を表示する（例えば「Ｒｅａｄｙ」という文字列を表示する）。
【００４０】
Ｓ１００４で印刷サブシステム５０３の通信部５０５は、探索によって見つかった印刷処理装置に対応する機種依存ファイルをサーバーコンピューター１０６からダウンロードする処理を開始する。このとき、印刷処理装置は複数見つかる場合もあるので、どの印刷処理装置に対する機種依存ファイルを優先してダウンロードするかを、ユーザーが指定したダウンロード方法に従ってダウンロード処理を実行する。
【００４１】
ダウンロード方法については、図８の８０４に示すボタンから、図９の９０１に示すダウンロード方法の選択画面で指定することができる。９０２と９０３は探索によって複数の印刷処理装置が見つかった場合に、見つかった複数の印刷処理装置に対応する機種依存ファイルのダウンロード順を設定するためのボタンである。例えば、９０２に示す「応答順」を選んだ場合、一覧表示は応答があった順に表示されるため、Ｓ１００２で探索結果の一覧のうち上に表示される印刷処理装置に対応する機種依存ファイルからダウンロードを行う。また、９０３に示すカラー機優先を選んだ場合、探索結果にカラー機の印刷処理装置があれば、カラー機の印刷処理装置よりも先にモノクロ機の印刷処理装置が見つかったとしても、カラー機の印刷処理装置に対応する機種依存ファイルを優先してダウンロードを行う。９０４では、サーバーコンピューター１０６から印刷処理装置に対応する機種依存ファイルをダウンロードする際の、最大同時ダウンロード数を指定することができる。同時ダウンロード数を増やし、限られた通信リソースを分散させると個々のダウンロード速度は落ちることが一般的である。そのため、通信リソースを集中させる場合、本指定は小さく設定されることが期待される。
【００４２】
Ｓ１００５で印刷サブシステム５０３は、インターネット上にあるサーバーコンピューター１０６にアクセス可能かを判定する。データ処理装置１０１が参加するＬＡＮ１０３にインターネット接続が無い場合など、サーバーコンピューター１０６にアクセス不可能な場合（Ｓ１００５：Ｎｏ）、Ｓ１００６に処理を進める。サーバーコンピューター１０６にアクセス可能な場合（Ｓ１００５：Ｙｅｓ）、Ｓ１００７に処理を進める。
【００４３】
Ｓ１００６で印刷サブシステム５０３は、図８の８０５に示すように、該印刷処理装置に対応する機種依存ファイルのダウンロードが出来ない旨を表示する（例えば「接続エラー」という文字列を表示する）。
【００４４】
Ｓ１００７で印刷サブシステム５０３は、図８の８０２に示すように、該印刷処理装置に対応する機種依存ファイルをサーバーコンピューター１０６からダウンロードしている状態を表示する（例えば「ダウンロード中」という文字列を表示する）。なお、ダウンロード完了時には８０２に示すように、該印刷処理装置に対応する機種依存ファイルが、印刷サブシステム５０３の認識できるＲＯＭ２０３内に保存済みである表示に切り替える。
【００４５】
印刷サブシステム５０３は特定の時間間隔で印刷処理装置の探索結果を更新している。そして、Ｓ１００９で印刷サブシステム５０３は、Ｓ１００１の印刷処理装置の探索開始から特定の時間が経過しているかを判定する（例えば、５秒経過時、１０秒経過時など）。特定時間が経過している場合には（Ｓ１００９：Ｙｅｓ）、Ｓ１００１に処理を戻す。例えば、スリープモードに入っている印刷処理装置はＳＮＭＰの応答を出すのが遅く、２回目以降のＳ１００２で初めて探索結果として表示される場合がある。また、Ｓ１００４を再度通過するため、この間にユーザーが９０１に示すダウンロード方法を変更した場合には、変更後のダウンロード方法で再処理されることになる。またＳ１００９において、その他のタイミングでは（Ｓ１００９：Ｎｏ）、Ｓ１０１８に処理を進める。
【００４６】
Ｓ１０１８で印刷サブシステムは、図８に示す印刷処理装置の探索結果一覧から、ユーザーのボタン押下によって、印刷処理装置が選択されたかを判定する。印刷処理装置が選択された場合は（Ｓ１０１８：Ｙｅｓ）、Ｓ１０１０に処理を進める。印刷処理装置が選択されない場合には（Ｓ１０１８：Ｎｏ）、Ｓ１００９に処理を戻す。
【００４７】
Ｓ１０１０で印刷サブシステム５０３は、ユーザーから選択された該印刷処理装置に対応する機種依存ファイルの状態を判定する。前記機種依存ファイルの状態は、Ｓ１００６で設定される「接続エラー」、Ｓ１００７で設定される「ダウンロード中」とＳ１００８で設定される「Ｒｅａｄｙ」の３つがある。「接続エラー」の場合には（Ｓ１０１０：「接続エラー」判定）、Ｓ１０１１に処理を進める。「Ｒｅａｄｙ」の場合には（Ｓ１０１０：Ｒｅａｄｙ）、Ｓ１０１７に処理を進める。
【００４８】
Ｓ１０１１で印刷サブシステム５０３は、図１１の１１０１で示すようにユーザーから選択された印刷処理装置に対応する機種依存ファイルを手動で設定するためのユーザーインターフェースを表示する。インターネット接続が無い環境でも、ＩＴ管理者が機種依存ファイルを有線やＵＳＢメモリ経由で配布することができる。こうした方法で取得した機種依存ファイルがデータ処理装置１０１のＲＯＭ２０３に保存されていれば、ユーザーは本ステップで指定することが可能である。
【００４９】
Ｓ１０１２で印刷サブシステム５０３は、図８で示した画面でユーザーが選択した印刷処理装置のモデル名と、Ｓ１０１１でユーザーが指定した機種依存ファイルに記載されたモデル名が一致するかを判定する。モデル名が一致する場合には（Ｓ１０１２：Ｙｅｓ）、Ｓ１０１７に処理を進める。モデル名が一致しない場合には（Ｓ１０１２：Ｎｏ）、Ｓ１０１３に処理を進める。Ｓ１０１３では、図８で示した画面でユーザーが選択した印刷処理装置と、Ｓ１０１１でユーザーが指定した機種依存ファイルの組み合わせが不適合である旨を表示し、Ｓ１００１に処理を戻す。
【００５０】
Ｓ１０１０で「ダウンロード中」と判定された場合には（Ｓ１０１０：「ダウンロード中」判定）、Ｓ１０１４に処理を進める。例えば図９の９０４で設定された最大同時ダウンロード数が２以上で、かつ対応する機種依存ファイルがダウンロードされていない印刷処理装置がＳ１００１の探索によって複数見つかると、Ｓ１００４によって同時に複数の機種依存ファイルのダウンロードが開始される。その結果、データ処理装置１０１は同時に複数の機種依存ファイルをダウンロードしている状態となる。この状態では選択された印刷処理装置に対応する機種依存ファイル以外の機種依存ファイルもダウンロードされているため、選択された印刷処理装置に対応する機種依存ファイルのみをダウンロードするよりもダウンロードに時間がかかるという問題が生じる。よって、Ｓ１０１４で印刷サブシステム５０３の通信部５０５はユーザーから選択された印刷処理装置以外の印刷処理装置に対応する機種依存ファイルのダウンロードを停止する。さらにＳ１０１５で印刷サブシステムは、図１２に示すようなユーザーインターフェースを表示し、ユーザーから選択された該印刷処理装置に対応する機種依存ファイルのみをダウンロードしている状態を表示する。Ｓ１０１６で印刷サブシステムは、Ｓ１００４から開始された、ユーザーから選択された印刷処理装置に対応する機種依存ファイルのダウンロード処理の完了を判定し、ダウンロードが完了すれば（Ｓ１０１６：Ｙｅｓ）、Ｓ１０１７に処理を進める。なお、ダウンロード完了までにユーザーからキャンセル指示があった場合には（図１２の１２０２の押下）、Ｓ１００１に処理を戻す（図１０のフローチャート上に不図示）。
【００５１】
Ｓ１０１７では、ユーザーが図８で示した探索結果一覧のユーザーインターフェース上で選択した印刷処理装置を、印刷先の印刷処理装置として設定する。そして、図７の７０３の箇所に該印刷処理装置のプリンターモデル名および印刷処理装置のＩＰアドレスを表示する。その後、ダウンロードされた機種依存ファイルに基づいて印刷処理が行われる。
【００５２】
以上の処理により、探索結果に従って複数の印刷処理装置に対応する複数の機種依存ファイルのダウンロードを開始し、印刷先として一つの印刷処理装置が選択された場合に、選択された一つの印刷処理装置以外の印刷処理装置に対応する機種依存ファイルのダウンロードを停止する。これにより、選択された一つの印刷処理装置に対応する機種依存ファイルのダウンロードを高速に完了し、印刷を速やかに開始できる。
【００５３】
［実施例２］
実施例１では図１０のＳ１００４の処理によってダウンロード済みになったものの、ユーザーに選択されなかった印刷処理装置に対応する機種依存ファイルがデータ処理装置１０１のＲＯＭ２０３に存在する場合がある。前記機種依存ファイルを保持し続けることで、次回以降の探索でユーザーに該印刷処理装置が選択された場合にはＳ１００３はＹｅｓとなり、Ｓ１００４以降のダウンロード処理を省けるが、保持し続けることで新規の印刷処理装置が探索されるたびにストレージを消費してしまう課題がある。
【００５４】
そのため、次回以降のＳ１００１における印刷処理装置の探索処理において、印刷処理装置が探索によって見つからなければ、探索によって見つからなかった印刷処理装置に対応するダウンロード済みの機種依存ファイルを削除する処理を行う。あるいは、直近数回のＳ１００１における印刷処理装置の探索処理において、出現率が特定閾値以下であれば、探索によって見つからなかった印刷処理装置に対応するダウンロード済みの機種依存ファイルを削除する処理を行う。
【００５５】
以上の処理により、出現率が低く印刷される可能性が少ない印刷処理装置に対応する機種依存ファイルを自動で消去するため、新規の印刷処理装置が探索によって見つかるたびに機種依存ファイルを保存することで空き容量が低下してしまう現象を回避することができる。
【００５６】
［実施例３］
実施例１の図１０のＳ１０１１の処理において、インターネット接続が無い環境等で機種依存ファイルを手動指定する方法を示した。ここで、機種依存ファイルをデータ処理装置１０１のＲＯＭ２０３内のみを対象として選択する場合、例えばＩＴ管理者が各データ処理装置１０１に機種依存ファイルを配布しなければならない等、機種依存ファイルの配布や入手が煩わしいという問題がある。
【００５７】
そのため、図１４の１４０１に示すような外部情報処理装置の一例である機種依存ファイル配信サーバー１４０１をローカルネットワーク上に配置する。そして、ユーザーはＳ１０１１において図１３の１３０１で示すユーザーインターフェース上から機種依存ファイルをダウンロードするためのアクセス先として機種依存ファイル配信サーバー１４０１のＩＰアドレス又はドメイン名を指定する。これによって印刷サブシステム５０３の通信部がＳ１００１の探索によって見つかった印刷処理装置に対応する機種依存ファイルを、ユーザーインターフェースにより設定されたアクセス先からダウンロードする処理をＳ１００４で開始できるようになる。
【００５８】
なお、図１３に示す画面ではデータ処理装置１０１内の機種依存ファイルの場所の設定と、機種依存ファイルをダウンロードするためのアクセス先のどちらも設定できるユーザーインターフェースを示している。しかし、これに限らずそれぞれを別々に設定できるユーザーインターフェースを表示するように構成しても構わない。
【００５９】
機種依存ファイル配信サーバー１４０１はサーバーコンピューター１０６と同様の構成であり、印刷サブシステム５０３は機種依存ファイル配信サーバー１４０１とＨＴＴＰプロトコルを使った通信により、機種依存ファイルを取得する。また、機種依存ファイル配信サーバー１４０１を他のサーバーマシン等と識別するため、機種依存ファイル配信サーバー１４０１は特定の通信ポートを開放する、あるいは、ＳＮＭＰで特定の応答を返すことで、ネットワーク上の探索が可能になるため、機種依存ファイル配信サーバー１４０１のＩＰアドレス指定を省くこともできる。
【００６０】
以上の処理により、インターネット接続が無い環境において、ローカルネットワーク上で機種依存ファイルを配布することができるため、ＩＴ管理者が各モバイル端末に機種依存ファイルを配布する手間を軽減することができる。
【００６１】
［実施例４］
印刷処理装置が対応できる印刷データの種類が複数である場合において、第１の印刷データを生成するためのメモリ確保に成功したか否かを考慮し、メモリ状況を含む印刷環境に応じた印刷を実現する方法が考えられる（否の場合、第２の印刷データを生成する）。このとき、複数の印刷データの種類に対応している印刷処理装置は、機種依存ファイルを印刷データの種類別に分けることができる。そのような場合、モバイル端末のメモリ状況に応じて必要な機種依存ファイルの方のみをダウンロードしなければ、不必要にストレージを消費してしまう課題がある。
【００６２】
そのため、実施例１の図１０のＳ１００４の処理において、データ処理装置１０１のＲＡＭ２０４に対して特定容量以上のメモリが確保できるかを判定する。そして、特定容量以上のメモリが確保できる場合は第１の印刷データを生成するための、印刷処理装置に対応する機種依存ファイルをダウンロードする。また、特定容量以上のメモリが確保できない場合は、第２の印刷データを生成するための、印刷処理装置に対応する機種依存ファイルをダウンロードする。
【００６３】
以上の処理により、印刷処理装置が対応できる印刷データの種類が複数ある場合において、モバイル端末のメモリ状況を含む印刷環境に応じた印刷を実現する方の機種依存ファイルのみをダウンロードするので、不必要なストレージ消費を防ぐことが出来る。
【００６４】
（その他の実施例）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2017021537.tif 000003
【図２】
2017021537.tif 000004
【図３】
2017021537.tif 000005
【図４】
2017021537.tif 000006
【図５】
2017021537.tif 000007
【図６】
2017021537.tif 000008
【図７】
2017021537.tif 000009
【図８】
2017021537.tif 000010
【図９】
2017021537.tif 000011
【図１０】
2017021537.tif 000012
【図１１】
2017021537.tif 000013
【図１２】
2017021537.tif 000014
【図１３】
2017021537.tif 000015
【図１４】
2017021537.tif 000016