(57)【要約】【課題】印刷する権限があるかないかも考慮した上で、ネットワークプリンタを選択することにより、印刷失敗となる場合を少なくする。【解決手段】ネットワーク上にあるプリンタ108から、指定の印刷機能を有するプリンタを検索する。該当するプリンタが無ければ、その旨をユーザに通知する。該当するプリンタがあれば、ユーザが実際に印刷権限を持っているかどうかを確認し、最も空いているプリンタを選択する。プリンタポートを動的に作成し、プリンタドライバを自動的に選択する。アプリケーション101からの印刷データを、プリンタドライバとポートを介してプリンタ108に送り、印刷する。印刷が完了したら、印刷したプリンタを特定する情報をユーザに通知する。【選択図】図１
2007241885.tif 000002
【特許請求の範囲】
【請求項１】
印刷に関する設定を行うための設定管理手段と、前記設定管理手段に設定された指定の印刷機能を有するプリンタをネットワーク上にあるプリンタから検索してプリンタ情報を取得するプリンタ検索手段と、指定の印刷機能を有するプリンタが存在しない場合にその旨をユーザに通知するプリンタ不存在通知手段と、ユーザの印刷権限を確認する確認手段と、印刷可能な各プリンタの混み具合情報を取得する混み具合情報取得手段と、選択したプリンタを利用するためのポートを動的に作成するポート作成手段と、選択したプリンタのプリンタドライバを選択するドライバ選択手段と、アプリケーションプログラムから受信した印刷データを前記プリンタドライバに渡し、前記プリンタドライバから印刷可能なデータを受け取り、前記ポートに印刷可能なデータを送る印刷データ送信手段とを具備することを特徴とする印刷制御装置。
【請求項２】
印刷が完了した場合に印刷を実行したプリンタを特定する情報をユーザに通知する印刷完了通知手段を具備することを特徴とする請求項１記載の印刷制御装置。
【請求項３】
前記設定管理手段は、前記アプリケーションプログラムを介して印刷時に印刷に関する設定を行う手段を備えることを特徴とする請求項１又は２記載の印刷制御装置。
【請求項４】
選択したプリンタ用のプリンタドライバが導入されていない場合には選択したプリンタが保持しているプリンタドライバを取得して導入する手段を備えることを特徴とする請求項１又は２記載の印刷制御装置。
【請求項５】
選択したプリンタ用のプリンタドライバが導入されていない場合には選択したプリンタが保持しているプリンタドライバを取得して導入する手段を備え、前記設定管理手段は、前記アプリケーションプログラムを介して印刷時に印刷に関する設定を行う手段であることを特徴とする請求項１又は２記載の印刷制御装置。
【請求項６】
前記確認手段は、ユーザの使用可能機能を確認する手段を備えることを特徴とする請求項１ないし５のいずれかに記載の印刷制御装置。
【請求項７】
請求項１ないし６のいずれかに記載された印刷制御装置を備えたプリンタ。
【請求項８】
予め設定された指定の印刷機能を有するプリンタをネットワーク上にあるプリンタから検索してプリンタ情報を取得し、指定の印刷機能を有するプリンタが存在しない場合にその旨をユーザに通知し、当該プリンタについてユーザが印刷権限を持っているかどうかを確認し、印刷可能な各プリンタの混み具合情報を取得し、選択したプリンタを利用するためのポートを動的に作成し、選択したプリンタのプリンタドライバを選択し、アプリケーションプログラムから受信した印刷データを前記プリンタドライバに渡し、前記プリンタドライバから印刷可能なデータを受け取り、前記ポートに印刷可能なデータを送り、印刷が完了した場合に印刷を実行したプリンタを特定する情報をユーザに通知することを特徴とする印刷制御方法。
【請求項９】
印刷時に前記アプリケーションプログラムを介して印刷に関する設定が行われることを特徴とする請求項８記載の印刷制御方法。
【請求項１０】
選択したプリンタ用のプリンタドライバが導入されていない場合には、選択したプリンタが保持しているプリンタドライバを取得して導入することを特徴とする請求項８記載の印刷制御方法。
【請求項１１】
印刷時に前記アプリケーションプログラムを介して印刷に関する設定が行われ、選択したプリンタ用のプリンタドライバが導入されていない場合には、選択したプリンタが保持しているプリンタドライバを取得して導入することを特徴とする請求項８記載の印刷制御方法。
【請求項１２】
ユーザの印刷権限を確認する際に、ユーザの使用可能機能も確認することを特徴とする請求項８ないし１１のいずれかに記載の印刷制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷制御装置、特に、ネットワークプリンタを制御する印刷制御装置、及び前記印刷制御装置を備えたプリンタに関する。
【背景技術】
【０００２】
従来、ネットワークに接続された複数のプリンタを複数のユーザが共通に利用するネットワーク印刷システムがある。このようなシステムのネットワークプリンタは、多数の利用者が種々の機能のプリンタを自由に利用できるので、非常に便利であるが、また管理が大変でもある。不適切な利用がされないように、利用権限に関してユーザを管理する必要がある。実際、特定のユーザのみが印刷できるプリンタを設定して、セキュリティを高めたシステムも存在する。以下に、これに関連する従来技術の例をいくつかあげる。
【０００３】
特許文献１に開示された「ネットワークプリンタシステム」は、ユーザや管理者の作業負担を軽減し、印刷業務の効率を向上させたものである。コンピュータから印刷データが送信されるプリンタは、要求された機能を実行することが出来ない場合、他のプリンタに順次その機能の実行の可否を問い合わせる。実行可能なプリンタがあれば印刷データを転送し、無ければその旨印刷データを送信したコンピュータに応答する。また、コンピュータから印刷データが送信されるプリンタは、自身がレディ状態にない場合、他のプリンタに順次状態を問い合わせる。レディ状態のプリンタがあれば印刷データを転送し、なければその旨印刷データを送信したコンピュータに応答する。
【０００４】
特許文献２に開示された「動的設定可能なプリンタ」は、高水準解釈言語により、種々の印刷環境を設定するものである。プリンタは、それに接続されたコンピュータから、プリンタレットとデータとを受け取る。各プリンタレットは、コンピュータ環境設定命令を含む。コントローラは、プリンタレット中に含まれる状態で受け取られる各プリンタ環境設定命令を呼び出す。コントローラに接続されたメモリは、そのそれぞれがプリンタの少なくとも一つの動作を制御するように構成された、複数のオブジェクト指向クラスを格納している。コントローラの少なくとも一つのプリンタ環境設定命令を呼び出しに応答して、コントローラに接続されたプリントエンジンは、メモリからコントローラによって呼び出された少なくとも一つのオブジェクト指向クラスの関数としてデータを印刷媒体上に印刷する。
【０００５】
特許文献３に開示された「ネットワークプリンタの自動インストール方法」は、場所が移動した場合でもプリンタの導入・設定を行わずに印刷できるネットワークプリンタの自動インストール方法である。ネットワークプリンタとインターネット接続されたウェブサーバとを有するネットワーク上に、クライアントPCが新規追加される。このシステムで、クライアントPCから起動時に同一セグメント内のプリンタの検索を行う。検索において新規ネットワークプリンタが見つかれば、プリンタドライバをインストールしてプリンタを作成する。
必要に応じてポートモニタをインストールして、プリンタポートを作成し、プリンタとプリンタポートを関連付け、新規ネットワークプリンタを用いて印刷可能な状態にする。
【０００６】
特許文献４に開示された「ネットワーク・デバイスのドライバ用のインストーラ」は、デバイス・ドライバに設定情報を自動的に設定するためのファイル構造を有するものである。インストール実行ファイルは、ネットワークに接続されたあるデバイスのドライバを、そのネットワークに接続された情報処理装置にインストールすることを実行するよう動作可能なプログラムと、そのドライバ用の設定情報の領域とを含んでいる。そのインストール実行ファイルは、そのドライバをインストールするステップと、そのインストールされたドライバにその設定情報を書き込むステップとを実行させる。
【０００７】
特許文献５に開示された「ネットワーク対応周辺装置」は、適切に利用者を認証することができる装置である。ネットワーク対応周辺装置は、少なくとも１つの周辺装置機能と、ネットワークへ接続しネットワークを介して他の端末装置より周辺装置機能の利用を受け付けて当該周辺装置機能を実行するネットワーク通信機能を備えている。利用者を識別する利用者認証機能を備えている。利用者認証機能は、ネットワークに設けられている認証手段の１つを用いてユーザ認証する際、当該認証手段に認証対象となる利用者のアカウントが存在しなかった場合、他の認証手段を選択して、当該利用者の認証動作を行う。ある認証手段が停電やハードウェア故障など諸事情により機能しなくなったときでも、使用することが可能となる。
【０００８】
特許文献６に開示された「印刷システム」は、印刷要求時に、印刷装置選択用の印刷属性情報をネットワーク上から自動的に収集し、選択した印刷装置で印刷するためのポートを動的に生成できる印刷システムである。印刷システムは、ネットワーク上の印刷装置を用いて所望の仕様の印刷ができる。アプリケーション部が、設定管理部を介して印刷設定画面を表示して印刷仕様を指定させる。印刷装置検索部が、ネットワーク通信部により、その仕様の印刷が可能な印刷装置を、ネットワーク上の印刷装置から検索して、その１つを選択する。ポート生成部が、その印刷装置を用いるためのポートを動的に生成する。プリンタドライバ制御部が、その印刷装置用に利用可能なプリンタドライバを選択し、印刷データを渡す。ネットワーク通信部が、その印刷データをプリンタドライバから受け取る。生成されたポートが有している印刷装置情報を用いて、その印刷データを送信する。
【０００９】
【特許文献１】特開平11-39115号公報
【特許文献２】特開2002-318672号公報
【特許文献３】特開2002-366502号公報
【特許文献４】特開2003-202987号公報
【特許文献５】特開2005-149256号公報
【特許文献６】特開2006-11666号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかし、従来の印刷制御装置では、次のような問題がある。ネットワークプリンタを検索して、所望の印刷機能を有するプリンタが見つかっても、印刷できるユーザを制限していることがあり、実際には印刷できないことになる。また、「通常のユーザは白黒で印刷する」という制限を設けている場合がある。この場合、プリンタにカラーの印刷能力があったとしても、ユーザによってはカラー印刷ができないことになる。
【００１１】
本発明の目的は、上記従来の問題を解決して、ネットワークプリンタにおいて、ユーザに印刷権限があるかないかも考慮した上でプリンタを選択することにより、プリンタ検索段階で印刷の可能不可能がわかるようにすることである。
なお、本願明細書において、「プリンタ」は、複写機等を含め画像形成装置一般を、また「印刷」はプリントのみでなく複写等を含め画像形成一般をそれぞれ総称する用語として使用する。
【課題を解決するための手段】
【００１２】
上記の課題を解決するために、本発明では、印刷制御装置を、印刷に関する設定を行うための設定管理手段と、設定管理手段に設定された指定の印刷機能を有するプリンタをネットワーク上にあるプリンタから検索してプリンタ情報を取得するプリンタ検索手段と、指定の印刷機能を有するプリンタが存在しない場合にその旨をユーザに通知するプリンタ不存在通知手段と、ユーザの印刷権限を確認する確認手段と、印刷可能な各プリンタの混み具合情報を取得する混み具合情報取得手段と、選択したプリンタを利用するためのポートを動的に作成するポート作成手段と、選択したプリンタのプリンタドライバを選択するドライバ選択手段と、アプリケーションプログラムから受信した印刷データをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、前記ポートに印刷可能なデータを送る印刷データ送信手段と、印刷が完了した場合に印刷を実行したプリンタを特定する情報をユーザに通知する印刷完了通知手段とを具備する構成とした。
【００１３】
また、設定管理手段に、アプリケーションプログラムを介して印刷時に印刷に関する設定を行う手段を備えた。選択したプリンタ用のプリンタドライバが導入されていない場合には選択したプリンタが保持しているプリンタドライバを取得して導入する手段を備えた。確認手段に、ユーザの使用可能機能を確認する手段を備えた。
【発明の効果】
【００１４】
上記のように構成したことにより、ネットワークプリンタで印刷する場合に、印刷権限があるかないかも考慮した上でプリンタを選択することで、印刷操作を開始してから印刷不可能が判明する事態をより少なくすることができる。プリンタ本来の能力のみではなく、ユーザの使用が許可されている機能をも考慮した上でプリンタを選択することができ、印刷失敗となることを確実に回避することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明を実施するための最良の形態について、図１〜図８を参照しながら詳細に説明する。
【実施例１】
【００１６】
本発明の実施例１は、予め設定された指定の印刷機能を有するネットワークプリンタを検索し、該当するプリンタが１台も存在しなかった場合には、その旨をユーザに通知し、印刷可能なプリンタが複数存在した場合には、各プリンタの混み具合情報を取得し、ユーザが実際に印刷する権限を持っているかどうかを確認し、選択したプリンタを利用するためのポートを動的に作成し、プリンタドライバを自動的に選択し、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送り、印刷が完了したら印刷したプリンタを特定する情報をユーザに通知する印刷制御装置である。
【００１７】
図１は、本発明の実施例１における印刷制御装置の機能ブロック図である。図１において、アプリケーション101は、印刷を要求する応用プログラムである。印刷制御部102は、印刷に関する要求を処理する手段である。プリンタ検索部103は、指定された機能のネットワークプリンタを検索する手段である。設定管理部104は、印刷設定を保持し管理する手段である。ポート作成部105は、プリンタポートを作成する手段である。プリンタドライバ制御部106は、プリンタドライバを選択して制御する手段である。ネットワーク通信部107は、ネットワークを介してネットワークプリンタなどと通信する手段である。プリンタ108は、ネットワークプリンタである。認証サーバ109は、ユーザ認証を行う手段である。
【００１８】
図２は、印刷制御装置の動作手順を示すフローチャートである。実施例１は、独自のユーザ認証機構を持った例であるが、周知の汎用認証機構を利用する構成であってもよい。
【００１９】
上記のように構成された本発明の実施例１における印刷制御装置の機能と動作を説明する。最初に、図１を参照しながら、印刷制御装置の機能の概要を説明する。カラー印刷や両面印刷やステープル打ちなどの印刷条件を、ＯSに対して設定して、設定管理部104に保持し管理する。ユーザは、アプリケーション101を介して印刷を要求する。印刷制御部102は、アプリケーション101からの印刷要求を、以下のように処理する。プリンタ検索部103は、ネットワーク上にあるプリンタの中から、指定された機能を有するプリンタを検索し、ユーザが実際に印刷する権限を持っているかどうかを確認する。プリンタを検索した結果、所望の印刷機能を有するプリンタが１台も存在しなかった場合には、その旨をユーザに通知する。
【００２０】
印刷可能なプリンタが複数ある場合、印刷制御部102は、印刷残ページ数などの各プリンタの混み具合情報を取得して、最も空いているプリンタを選択する。ポート作成部105で、選択したプリンタを利用するためのポートを動的に作成する。プリンタドライバ制御部106で、選択したプリンタに利用可能なプリンタドライバを自動的に選択する。印刷制御部102は、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送る。ネットワーク通信部107は、ネットワークを介してネットワークプリンタと通信し、認証サーバ109で認証を行ってから、プリンタ108で印刷を行う。印刷が完了したら、印刷したプリンタを特定する情報を、ユーザに通知する。
【００２１】
次に、図２を参照しながら、印刷制御装置の動作手順を説明する。ユーザは、アプリケーション101に対し、印刷の指示を行う。ステップ１において、印刷の指示を受けたアプリケーション101は、印刷制御部102に対し、現在OSに設定されている印刷設定の一覧を要求する。ステップ２において、印刷制御部102は、設定管理部104に対し、OSに設定されている印刷設定の一覧を要求する。設定管理部104は、現在OSに設定されている印刷設定の一覧を取得し、印刷制御部102に渡す。印刷制御部102は、現在OSに設定されている印刷設定の一覧をアプリケーション101に渡す。ステップ３において、アプリケーション101は、ユーザに、現在OSに設定されている印刷設定の一覧を提示する。
【００２２】
ステップ４において、ユーザは、現在OSに設定されている印刷設定の一覧から所望の印刷設定を選択する。さらに、印刷権限を確認するための認証に必要な情報(ユーザ名やパスワードなど)を入力する。ステップ５において、アプリケーション101は、ユーザが選択した印刷設定と、印刷権限を確認するための認証に必要な情報と共に、印刷するデータを印刷制御部102に渡す。
【００２３】
ステップ６において、印刷制御部102はまず、認証情報を確認するために、ネットワーク通信部107に、認証に必要な情報を渡し、認証サーバ109に対してユーザ認証を行うことを要求する。ネットワーク通信部107は、認証サーバ109と通信してユーザ認証を行う。認証に失敗した場合は、ネットワーク通信部107は、印刷制御部102に認証エラーを返し、認証エラーを受けた印刷制御部102は、アプリケーション101に対し認証エラーを返す。アプリケーション101は認証エラーを受け、ユーザに対し認証できなかった旨を表示する。認証が成功すると、ネットワーク通信部107は、認証サーバ109から認証された証(認証トークン)を受け取り、印刷制御部102に認証トークンを返す。
【００２４】
印刷制御部102は、プリンタ検索部103に対し、ユーザが選択した印刷設定での印刷ができるプリンタを検索するように指示する。プリンタ検索部103は、ネットワーク通信部107に対し、利用可能なプリンタとその機能の一覧の取得を要求する。ネットワーク通信部107は、ブロードキャストなどの手段を使って、ネットワークから印刷可能なプリンタを検索し、その一覧をプリンタ検索部103に返す。
【００２５】
プリンタ検索部103は、取得したプリンタの一覧から、ユーザが選択した印刷設定での印刷が可能なプリンタを選択し、そのプリンタ情報を印刷制御部102に返す。さらに印刷制御部102は、ユーザが選択した印刷設定での印刷が可能なプリンタそれぞれに対し、ネットワーク通信部107を通して認証トークンを提示して、印刷可否をチェックし、印刷できないプリンタを、ユーザが選択した印刷設定での印刷が可能なプリンタの一覧から除外する。
【００２６】
ステップ７において、印刷条件を満たすプリンタが見つかったか否かを調べる。見つからなかった場合は、ステップ８で、その旨をユーザに伝える。見つかった場合は、ステップ９において、ユーザが印刷できるか否かを調べる。ステップ10において、印刷可能なプリンタがあるか否かを調べる。印刷制御部102は、ユーザが選択した印刷設定での印刷が可能なプリンタが１つもない場合は、ステップ８において、アプリケーション101に、ユーザが選択した印刷設定での印刷が可能なプリンタが１つもないことを伝え、アプリケーション101は、選択した印刷設定での印刷が可能なプリンタが１つもないことをユーザに通知する。
【００２７】
ユーザが選択した印刷設定での印刷が可能なプリンタがあった場合は、ステップ11において、プリンタ候補が複数あるか否かを調べる。複数の候補がある場合、ステップ12において、印刷制御部102は、ネットワーク通信部107に対し、各候補のプリンタから印刷残ページ数を取得するよう要求する。ネットワーク通信部107は、各候補のプリンタから印刷残ページ数を取得し、印刷制御部102に返す。ステップ13において、印刷制御部102は、得られた印刷残ページ数の最も小さい候補(つまり、印刷待ち時間の少ないプリンタ)を、実際に印刷するプリンタとして選択する。ステップ14において、印刷制御部102は、取得したプリンタ情報から、そのプリンタに印刷データを送るためのポートを作成するように、ポート作成部105に要求する。ポート作成部105は、プリンタ情報に基づきポートを作成して、そのポート情報を印刷制御部102に返す。
【００２８】
次に、ステップ15において、印刷制御部102は、プリンタ情報とアプリケーション101から送られてきた印刷するデータを、プリンタドライバ制御部106に送る。プリンタドライバ制御部106は、プリンタ情報に基づき、プリンタドライバを選択し、そのプリンタドライバを利用して、プリンタに送出するデータを生成し、印刷制御部102に返す。印刷制御部102は、取得したポート情報とプリンタに送出するデータをネットワーク通信部107に送り、プリンタに対し印刷を実行するよう指示する。
【００２９】
ステップ16において、ネットワーク通信部107は、ポート情報に基づき、そのポートを利用してプリンタ108と通信し、データを送出して印刷を行う。印刷後、印刷制御部102は、ポートを削除し、プリンタ情報の中からプリンタを特定する固有の情報(例えば、プリンタ名やIPアドレスなど)の情報を、アプリケーション101に返す。ステップ17において、アプリケーション101は、受け取ったプリンタ情報と共に、印刷が終了したことをユーザに通知する。
【００３０】
上記のように、本発明の実施例１では、印刷制御装置を、予め設定された指定の印刷機能を有するネットワークプリンタを検索し、該当するプリンタが１台も存在しなかった場合には、その旨をユーザに通知し、印刷可能なプリンタが複数存在した場合には、各プリンタの混み具合から最も空いているプリンタを選択し、ユーザが実際に印刷する権限を持っているかどうかを確認し、選択したプリンタを利用するためのポートを動的に作成し、プリンタドライバを自動的に選択し、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送り、印刷が完了したら印刷したプリンタを特定する情報をユーザに通知する構成としたので、実際には印刷できないという失敗を減らすことができる。
【実施例２】
【００３１】
本発明の実施例２は、アプリケーションを介して指定された印刷機能を有するプリンタをネットワーク上にあるプリンタから検索し、ユーザが印刷権限を持っている機能を確認し、指定の印刷機能を有するプリンタが１台も存在しなかった場合にはその旨をユーザに通知し、プリンタ候補が複数ある場合はプリンタの混み具合が最小のものを選択し、プリンタを利用するためのポートを動的に作成し、プリンタドライバを自動的に選択し、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送り、印刷が完了したら印刷したプリンタを特定する情報をユーザに通知する印刷制御装置である。
【００３２】
図３は、本発明の実施例２における印刷制御装置の機能ブロック図である。図３において、アプリケーション301は、印刷を要求する応用プログラムである。印刷制御部302は、印刷に関する要求を処理する手段である。プリンタ検索部303は、指定された機能のネットワークプリンタを検索する手段である。ポート作成部305は、プリンタポートを作成する手段である。プリンタドライバ制御部306は、プリンタドライバを選択して制御する手段である。ネットワーク通信部307は、ネットワークを介してネットワークプリンタなどと通信する手段である。プリンタ308は、ネットワークプリンタである。認証サーバ309は、ユーザ認証を行う手段である。
【００３３】
図４は、印刷制御装置の動作手順を示すフローチャートである。実施例２は、独自のユーザ認証機構を持った例であるが、周知の汎用認証機構を利用する構成としてもよい。
【００３４】
上記のように構成された本発明の実施例２における印刷制御装置の機能と動作を説明する。最初に、図３を参照しながら、印刷制御装置の機能の概要を説明する。ユーザは、アプリケーション301を介して印刷を要求する。印刷制御部302は、アプリケーション301からの印刷要求を、以下のように処理する。プリンタ検索部303は、ネットワーク上にあるプリンタの中から、アプリケーションを介して指定された機能を有するプリンタを検索し、ユーザが実際に印刷する権限を持っているかどうかを確認する。プリンタを検索した結果、所望の印刷機能を有するプリンタが１台も存在しなかった場合には、その旨をユーザに通知する。
【００３５】
印刷可能なプリンタが複数ある場合、印刷制御部302は、印刷残ページ数などの各プリンタの混み具合情報を取得して、最も空いているプリンタを選択する。ポート作成部305で、選択したプリンタを利用するためのポートを動的に作成する。プリンタドライバ制御部306で、選択したプリンタに利用可能なプリンタドライバを自動的に選択する。印刷制御部302は、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送る。ネットワーク通信部307は、ネットワークを介してネットワークプリンタと通信し、認証サーバ309で認証を行ってから、プリンタ308で印刷を行う。印刷が完了したら、印刷したプリンタを特定する情報を、ユーザに通知する。
【００３６】
次に、図４を参照しながら、印刷制御装置の動作手順を説明する。ユーザは、アプリケーション301に対し、印刷の指示を行う。印刷の指示を受けたアプリケーション301は、ステップ41において、ユーザに対し、印刷設定(白黒またはカラー、両面印刷ONまたはOFFなど)を選択/指示できる画面を表示する。ステップ42において、ユーザは、表示に従い、印刷設定を指示する。さらに、印刷権限を確認するための認証に必要な情報(ユーザ名やパスワードなど)を入力する。ステップ43において、アプリケーション301は、ユーザが選択した印刷設定と、印刷権限を確認するための認証に必要な情報と共に、印刷するデータを印刷制御部302に渡す。
【００３７】
ステップ44において、印刷制御部302はまず、認証情報を確認するために、ネットワーク通信部307に、認証に必要な情報を渡し、認証サーバ309に対してユーザ認証を行うことを要求する。ネットワーク通信部307は、認証サーバ309と通信してユーザ認証を行う。認証に失敗した場合は、ネットワーク通信部307は、印刷制御部302に認証エラーを返す。認証エラーを受けた印刷制御部302は、アプリケーション301に対し、認証エラーを返す。アプリケーション301は、認証エラーを受け、ユーザに対し、認証できなかった旨を表示する。
【００３８】
認証が成功すると、ネットワーク通信部307は、認証サーバ309から認証された証(認証トークンと呼ぶことにする)を受け取り、印刷制御部302に認証トークンを返す。印刷制御部302は、プリンタ検索部303に対し、ユーザが選択した印刷設定での印刷ができるプリンタを検索するように指示する。プリンタ検索部303は、ネットワーク通信部307に対し、利用可能なプリンタとその機能の一覧の取得を要求する。ネットワーク通信部307は、ブロードキャストなどの手段を使って、ネットワークから印刷可能なプリンタを検索し、その一覧をプリンタ検索部303に返す。プリンタ検索部303は、取得したプリンタの一覧から、ユーザが選択した印刷設定での印刷が可能なプリンタを選択し、そのプリンタ情報を印刷制御部302に返す。
【００３９】
ステップ45において、印刷条件を満たすプリンタが見つかったどうかチェックする。見つからなかった場合は、ステップ46において、アプリケーション301は、選択した印刷設定での印刷が可能なプリンタが１つもないことを、ユーザに提示する。見つかった場合は、ステップ47において、印刷制御部302は、ユーザが選択した印刷設定での印刷が可能なプリンタそれぞれに対し、ネットワーク通信部307を通して認証トークンを提示して、印刷可否とユーザが利用可能な機能を取得する。印刷できないプリンタを、ユーザが選択した印刷設定での印刷が可能なプリンタの一覧から除外する。
【００４０】
ステップ48において、印刷制御部302は、ユーザが選択した印刷設定で印刷が可能かチェックする。ステップ49において、ユーザが選択した印刷設定での印刷が可能なプリンタがあるかどうか調べる。ユーザが選択した印刷設定での印刷が可能なプリンタが１つもない場合は、印刷制御部302は、アプリケーション301に、ユーザが選択した印刷設定での印刷が可能なプリンタが１つもないことを伝える。ステップ46において、アプリケーション301は、選択した印刷設定での印刷が可能なプリンタが１つもないことを、ユーザに通知する。
【００４１】
あった場合は、ステップ50において、複数の候補があるかどうか調べる。複数の候補がある場合、ステップ51において、印刷制御部302は、ネットワーク通信部307に対し、各候補のプリンタから印刷残ページ数を取得するよう要求する。ネットワーク通信部307は、各候補のプリンタから印刷残ページ数を取得し、印刷制御部302に返す。ステップ52において、印刷制御部302は、得られた印刷残ページ数の最も小さい候補(つまり、印刷待ち時間の少ないプリンタ)を、実際に印刷するプリンタとして選択する。
【００４２】
ステップ53において、印刷制御部302は、取得したプリンタ情報から、そのプリンタに印刷データを送るためのポートを作成するように、ポート作成部305に要求する。ポート作成部305は、プリンタ情報に基づき、ポートを作成して、そのポート情報を印刷制御部302に返す。ステップ54において、印刷制御部302は、プリンタ情報とアプリケーション301から送られてきた印刷するデータを、プリンタドライバ制御部306に送る。プリンタドライバ制御部306は、プリンタ情報に基づきプリンタドライバを選択し、そのプリンタドライバを利用して、プリンタに送出するデータを生成し、印刷制御部302に返す。印刷制御部302は、取得したポート情報とプリンタに送出するデータを、ネットワーク通信部307に送り、プリンタに対し印刷を実行するよう指示する。
【００４３】
ステップ55において、ネットワーク通信部307は、ポート情報に基づき、そのポートを利用してプリンタ308と通信し、データを送出して印刷を行う。印刷後、印刷制御部302はポートを削除し、プリンタ情報の中からプリンタを特定する固有の情報(例えば、プリンタ名やIPアドレスなど)の情報を、アプリケーション301に返す。ステップ56において、アプリケーション301は、受け取ったプリンタ情報と共に、印刷が終了したことをユーザに通知する。
【００４４】
上記のように、本発明の実施例２では、印刷制御装置を、アプリケーションを介して指定された印刷機能を有するプリンタをネットワーク上にあるプリンタから検索し、ユーザが印刷権限を持っている機能を確認し、指定の印刷機能を有するプリンタが１台も存在しなかった場合にはその旨をユーザに通知し、プリンタ候補が複数ある場合はプリンタの混み具合が最小のものを選択し、プリンタを利用するためのポートを動的に作成し、プリンタドライバを自動的に選択し、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送り、印刷が完了したら印刷したプリンタを特定する情報をユーザに通知する構成としたので、実際には印刷できないという失敗をさらに減らすことができる。
【実施例３】
【００４５】
本発明の実施例３は、予め設定された指定の印刷機能を有するネットワークプリンタを検索し、該当するプリンタが１台も存在しなかった場合には、その旨をユーザに通知し、印刷可能なプリンタが複数存在した場合には、各プリンタの混み具合情報を取得し、ユーザが実際に印刷する権限を持っているかどうかを確認し、選択したプリンタを利用するためのポートを動的に作成し、プリンタドライバを自動的に選択し、プリンタドライバが導入されていなければ、プリンタ自身が保持しているプリンタドライバを取得し、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送り、印刷が完了したら印刷したプリンタを特定する情報をユーザに通知する印刷制御装置である。
【００４６】
図５は、本発明の実施例３における印刷制御装置の機能ブロック図である。図５において、アプリケーション501は、印刷を要求する応用プログラムである。印刷制御部502は、印刷に関する要求を処理する手段である。プリンタ検索部503は、指定された機能のネットワークプリンタを検索する手段である。設定管理部504は、印刷設定を保持し管理する手段である。ポート作成部505は、プリンタポートを作成する手段である。プリンタドライバ制御部506は、プリンタドライバを選択して制御する手段である。ネットワーク通信部507は、ネットワークを介してネットワークプリンタなどと通信する手段である。プリンタ508は、ネットワークプリンタである。認証サーバ509は、ユーザ認証を行う手段である。
【００４７】
図６は、印刷制御装置の動作手順を示すフローチャートである。実施例３は、独自のユーザ認証機構を持った例であるが、周知の汎用認証機構を利用する構成としてもよい。
【００４８】
上記のように構成された本発明の実施例３における印刷制御装置の機能と動作を説明する。最初に、図５を参照しながら、印刷制御装置の機能の概要を説明する。カラー印刷や両面印刷やステープル打ちなどの印刷条件を、OSに対して設定して、設定管理部504に保持し管理する。ユーザは、アプリケーション501を介して印刷を要求する。印刷制御部502は、アプリケーション501からの印刷要求を、以下のように処理する。プリンタ検索部503は、ネットワーク上にあるプリンタの中から、指定された機能を有するプリンタを検索し、ユーザが実際に印刷する権限を持っているかどうかを確認する。プリンタを検索した結果、所望の印刷機能を有するプリンタが１台も存在しなかった場合には、その旨をユーザに通知する。
【００４９】
印刷可能なプリンタが複数ある場合、印刷制御部502は、印刷残ページ数などの各プリンタの混み具合情報を取得して、最も空いているプリンタを選択する。ポート作成部505で、選択したプリンタを利用するためのポートを動的に作成する。プリンタドライバ制御部506で、選択したプリンタに利用可能なプリンタドライバを自動的に選択する。プリンタドライバが導入されていなければ、プリンタ自身が保持しているプリンタドライバを取得する。プリンタ自身にプリンタドライバを保持しておき、要求に応じてプリンタ自身が保持しているプリンタドライバを提供する。印刷制御部502は、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送る。ネットワーク通信部507は、ネットワークを介してネットワークプリンタと通信し、認証サーバ509で認証を行ってから、プリンタ508で印刷を行う。印刷が完了したら、印刷したプリンタを特定する情報を、ユーザに提示する。
【００５０】
次に、図６を参照しながら、印刷制御装置の動作手順を説明する。ユーザはアプリケーション501に対し、印刷の指示を行う。印刷の指示を受けたアプリケーション501は、ステップ61において、印刷制御部502に対し、現在OSに設定されている印刷設定の一覧を要求する。ステップ62において、印刷制御部502は、設定管理部504に対し、OSに設定されている印刷設定の一覧を要求する。設定管理部504は、現在OSに設定されている印刷設定の一覧を取得し、印刷制御部502に返す。印刷制御部502は、現在OSに設定されている印刷設定の一覧をアプリケーション501に返す。ステップ63において、アプリケーション501は、ユーザに、現在OSに設定されている印刷設定の一覧を提示する。ステップ64において、ユーザは、現在OSに設定されている印刷設定の一覧から所望の印刷設定を選択し、さらに印刷権限を確認するための認証に必要な情報(ユーザ名やパスワードなど)を入力する。
【００５１】
ステップ65において、アプリケーション501は、ユーザが選択した印刷設定、印刷権限を確認するための認証に必要な情報と共に、印刷するデータを印刷制御部502に渡す。ステップ66において、印刷制御部502はまず、認証情報を確認するためにネットワーク通信部507に認証に必要な情報を渡し、認証サーバ509に対してユーザ認証を行うことを要求する。ネットワーク通信部507は、認証サーバ509と通信してユーザ認証を行う。認証に失敗した場合は、ネットワーク通信部507は、印刷制御部502に認証エラーを返す。認証エラーを受けた印刷制御部502は、アプリケーション501に対し認証エラーを返す。アプリケーション501は認証エラーを受け、ユーザに対し、認証できなかった旨を表示する。
【００５２】
認証が成功すると、ネットワーク通信部507は、認証サーバ509から、認証された証(認証トークン)を受け取り、印刷制御部502に認証トークンを返す。印刷制御部502は、プリンタ検索部503に対し、ユーザが選択した印刷設定での印刷ができるプリンタを検索するように指示する。プリンタ検索部503は、ネットワーク通信部507に対し、利用可能なプリンタとその機能の一覧の取得を要求する。ネットワーク通信部507は、ブロードキャストなどの手段を使って、ネットワークから印刷可能なプリンタを検索し、その一覧をプリンタ検索部503に返す。プリンタ検索部503は、取得したプリンタの一覧から、ユーザが選択した印刷設定での印刷が可能なプリンタを選択し、そのプリンタ情報を印刷制御部502に返す。さらに印刷制御部502は、ユーザが選択した印刷設定での印刷が可能なプリンタそれぞれに対し、ネットワーク通信部507を通して認証トークンを提示して、印刷可否をチェックし、印刷できないプリンタを、ユーザが選択した印刷設定での印刷が可能なプリンタの一覧から除外する。
【００５３】
ステップ67において、印刷条件を満たすプリンタが見つかったどうか調べる。ユーザが選択した印刷設定での印刷が可能なプリンタが１つもない場合は、印刷制御部502は、ステップ68において、アプリケーション501に、ユーザが選択した印刷設定での印刷が可能なプリンタが１つもないことを伝え、アプリケーション501は、選択した印刷設定での印刷が可能なプリンタが１つもないことをユーザに通知する。
【００５４】
ユーザが選択した印刷設定での印刷が可能なプリンタがあった場合は、ステップ69において、印刷できるかどうかチェックする。ステップ70において、プリンタ候補が１つ以上あるかどうか調べる。１つもない場合は、ステップ68において、アプリケーション501に、ユーザが選択した印刷設定での印刷が可能なプリンタが１つもないことを伝え、アプリケーション501は、選択した印刷設定での印刷が可能なプリンタが１つもないことをユーザに通知する。
【００５５】
１つ以上ある場合は、ステップ71において、複数のプリンタ候補があるかどうか調べる。複数のプリンタ候補がある場合、印刷制御部502は、ステップ72において、ネットワーク通信部507に対し、各候補のプリンタから印刷残ページ数を取得するよう要求する。ネットワーク通信部507は、各候補のプリンタから印刷残ページ数を取得し、印刷制御部502に返す。ステップ73において、印刷制御部502は、得られた印刷残ページ数の最も小さい候補(つまり、印刷待ち時間の少ないプリンタ)を、実際に印刷するプリンタとして選択する。
【００５６】
ステップ74において、印刷制御部502は、取得したプリンタ情報から、そのプリンタに印刷データを送るためのポートを作成するように、ポート作成部505に要求する。ポート作成部505は、プリンタ情報に基づきポートを作成して、そのポート情報を印刷制御部502に返す。
【００５７】
ステップ75において、プリンタドライバが導入されているかどうか調べる。プリンタ情報のプリンタを使用するためのプリンタドライバがインストールされていない場合は、ステップ76において、ネットワーク通信部507に対し、ポート情報を送ると共に、プリンタに対しプリンタドライバを取得するように要求する。ネットワーク通信部507は、ポート情報をもとにプリンタ508と通信し、プリンタドライバを取得し、プリンタドライバ制御部506に返す。ステップ77において、プリンタドライバ制御部506は、取得したプリンタドライバを自動的に使用可能な状態にして、そのプリンタドライバを選択する。
【００５８】
ステップ78において、印刷制御部502は、プリンタ情報とポート情報とアプリケーション501から送られてきた印刷するデータを、プリンタドライバ制御部506に送る。プリンタドライバ制御部506は、プリンタ情報に基づきプリンタドライバを選択する。さらに、選択したプリンタドライバを利用して、プリンタに送出するデータを生成し、印刷制御部502に返す。
【００５９】
ステップ79において、印刷制御部502は、取得したポート情報とプリンタに送出するデータをネットワーク通信部507に送り、プリンタに対し印刷を実行するよう指示する。ネットワーク通信部507は、ポート情報に基づき、そのポートを利用してプリンタ508と通信し、データを送出して印刷を行う。印刷後、印刷制御部502はポートを削除し、プリンタ情報の中からプリンタを特定する固有の情報(例えば、プリンタ名やIPアドレスなど)の情報を、アプリケーション501に返す。ステップ80において、アプリケーション501は、受け取ったプリンタ情報と共に印刷が終了したことをユーザに通知する。
【００６０】
上記のように、本発明の実施例３では、印刷制御装置を、予め設定された指定の印刷機能を有するネットワークプリンタを検索し、該当するプリンタが１台も存在しなかった場合には、その旨をユーザに通知し、印刷可能なプリンタが複数存在した場合には、各プリンタの混み具合情報を取得し、ユーザが実際に印刷する権限を持っているかどうかを確認し、選択したプリンタを利用するためのポートを動的に作成し、プリンタドライバを自動的に選択し、プリンタドライバが導入されていなければ、プリンタ自身が保持しているプリンタドライバを取得し、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送り、印刷が完了したら印刷したプリンタを特定する情報をユーザに通知する構成としたので、実際には印刷できないという失敗をさらに減らすことができる。
【実施例４】
【００６１】
本発明の実施例４は、アプリケーションを介して指定された印刷機能を有するプリンタをネットワーク上にあるプリンタから検索し、ユーザが印刷権限を持っている機能を確認し、指定の印刷機能を有するプリンタが１台も存在しなかった場合にはその旨をユーザに通知し、プリンタ候補が複数ある場合はプリンタの混み具合が最小のものを選択し、プリンタを利用するためのポートを動的に作成し、プリンタドライバを自動的に選択し、プリンタドライバが導入されていなければ、プリンタ自身が保持しているプリンタドライバを取得し、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送り、印刷が完了したら印刷したプリンタを特定する情報をユーザに通知する印刷制御装置である。
【００６２】
図７は、本発明の実施例４における印刷制御装置の機能ブロック図である。図７において、アプリケーション701は、印刷を要求する応用プログラムである。印刷制御部702は、印刷に関する要求を処理する手段である。プリンタ検索部703は、指定された機能のネットワークプリンタを検索する手段である。ポート作成部705は、プリンタポートを作成する手段である。プリンタドライバ制御部706は、プリンタドライバを選択して制御する手段である。ネットワーク通信部707は、ネットワークを介してネットワークプリンタなどと通信する手段である。プリンタ708は、ネットワークプリンタである。認証サーバ709は、ユーザ認証を行う手段である。
【００６３】
図８は、印刷制御装置の動作手順を示すフローチャートである。実施例４は、独自のユーザ認証機構を持った例であるが、周知の汎用認証機構を利用する構成としてもよい。
【００６４】
上記のように構成された本発明の実施例４における印刷制御装置の機能と動作を説明する。最初に、図７を参照しながら、印刷制御装置の機能の概要を説明する。ユーザは、アプリケーション701を介して印刷を要求する。印刷制御部702は、アプリケーション701からの印刷要求を、以下のように処理する。プリンタ検索部703は、ネットワーク上にあるプリンタの中から、アプリケーションを介して指定された機能を有するプリンタを検索し、ユーザが実際に印刷する権限を持っているかどうかを確認する。プリンタを検索した結果、所望の印刷機能を有するプリンタが１台も存在しなかった場合には、その旨をユーザに通知する。
【００６５】
印刷可能なプリンタが複数ある場合、印刷制御部702は、印刷残ページ数などの各プリンタの混み具合情報を取得して、最も空いているプリンタを選択する。ポート作成部705で、選択したプリンタを利用するためのポートを動的に作成する。プリンタドライバ制御部706で、選択したプリンタに利用可能なプリンタドライバを自動的に選択する。プリンタドライバが導入されていなければ、プリンタ自身が保持しているプリンタドライバを取得する。印刷制御部702は、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送る。ネットワーク通信部707は、ネットワークを介してネットワークプリンタと通信し、認証サーバ709で認証を行ってから、プリンタ708で印刷を行う。印刷が完了したら、印刷したプリンタを特定する情報を、ユーザに通知する。
【００６６】
次に、図８を参照しながら、印刷制御装置の動作手順を説明する。ユーザは、アプリケーション701に対し、印刷の指示を行う。印刷の指示を受けたアプリケーション701は、ステップ81において、ユーザに対し、印刷設定(白黒またはカラー、両面印刷ONまたはOFFなど)を選択/指示できる画面を表示する。ステップ82において、ユーザは、表示に従い、印刷設定を指示する。さらに、印刷権限を確認するための認証に必要な情報(ユーザ名やパスワードなど)を入力する。ステップ83において、アプリケーション701は、ユーザが選択した印刷設定、印刷権限を確認するための認証に必要な情報と共に、印刷するデータを印刷制御部702に渡す。
【００６７】
ステップ84において、印刷制御部702はまず、認証情報を確認するために、ネットワーク通信部707に認証に必要な情報を渡し、認証サーバ709に対してユーザ認証を行うことを要求する。ネットワーク通信部707は、認証サーバ709と通信して、ユーザ認証を行う。認証に失敗した場合は、ネットワーク通信部707は、印刷制御部702に認証エラーを返す。認証エラーを受けた印刷制御部702は、アプリケーション701に対して認証エラーを返す。アプリケーション701は、認証エラーを受け、ユーザに対して認証できなかった旨を表示する。認証が成功すると、ネットワーク通信部707は、認証サーバ709から認証された証(認証トークン)を受け取り、印刷制御部702に認証トークンを返す。
【００６８】
印刷制御部702は、プリンタ検索部703に対し、ユーザが選択した印刷設定での印刷ができるプリンタを検索するように指示する。プリンタ検索部703は、ネットワーク通信部707に対し、利用可能なプリンタとその機能の一覧の取得を要求する。ネットワーク通信部707は、ブロードキャストなどの手段を使って、ネットワークから印刷可能なプリンタを検索し、その一覧をプリンタ検索部703に返す。プリンタ検索部703は、取得したプリンタの一覧から、ユーザが選択した印刷設定での印刷が可能なプリンタを選択し、そのプリンタ情報を、印刷制御部702に返す。さらに、印刷制御部702は、ユーザが選択した印刷設定での印刷が可能なプリンタそれぞれに対し、ネットワーク通信部707を通して認証トークンを提示して、印刷可否とユーザが利用可能な機能を取得する。印刷できないプリンタを、ユーザが選択した印刷設定での印刷が可能なプリンタの一覧から除外する。
【００６９】
ステップ85において、印刷条件を満たすプリンタが見つかったかどうか調べる。ユーザが選択した印刷設定での印刷が可能なプリンタが１つもない場合は、印刷制御部702は、ステップ86において、アプリケーション701に、ユーザが選択した印刷設定での印刷が可能なプリンタが１つもないことを伝える。アプリケーション701は、選択した印刷設定での印刷が可能なプリンタが１つもないことを、ユーザに通知する。
【００７０】
ユーザが選択した印刷設定での印刷が可能なプリンタがあった場合は、ステップ87において、機能リストを取得する。ステップ88において、条件どおり印刷できるかチェックする。ステップ89において、プリンタ候補が１つ以上あるか調べる。なければ、ステップ86において、アプリケーション701に、ユーザが選択した印刷設定での印刷が可能なプリンタが１つもないことを伝える。アプリケーション701は、選択した印刷設定での印刷が可能なプリンタが１つもないことを、ユーザに通知する。
【００７１】
あれば、ステップ90において、プリンタ候補が複数あるかどうか調べる。複数の候補がある場合、印刷制御部702は、ステップ91において、ネットワーク通信部707に対し、各候補のプリンタから、印刷残ページ数を取得するよう要求する。ネットワーク通信部707は、各候補のプリンタから印刷残ページ数を取得し、印刷制御部702に返す。ステップ92において、印刷制御部702は、得られた印刷残ページ数の最も小さい候補(つまり、印刷待ち時間の少ないプリンタ)を、実際に印刷するプリンタとして選択する。
【００７２】
ステップ93において、印刷制御部702は、取得したプリンタ情報から、そのプリンタに印刷データを送るためのポートを作成するように、ポート作成部705に要求する。ポート作成部705は、プリンタ情報に基づきポートを作成して、そのポート情報を印刷制御部702に返す。
【００７３】
ステップ94において、プリンタドライバが導入されているかどうか調べる。プリンタ情報のプリンタを使用するためのプリンタドライバがインストールされていない場合は、ステップ95において、ネットワーク通信部707に対し、ポート情報を送ると共に、プリンタに対しプリンタドライバを取得するように要求する。ネットワーク通信部707は、ポート情報をもとに、プリンタ708と通信し、プリンタドライバを取得し、プリンタドライバ制御部706に返す。ステップ96において、プリンタドライバ制御部706は、取得したプリンタドライバを自動的に使用可能な状態にして、そのプリンタドライバを選択する。印刷制御部702は、プリンタ情報とポート情報とアプリケーション701から送られてきた印刷するデータを、プリンタドライバ制御部706に送る。プリンタドライバ制御部706は、プリンタ情報に基づき、プリンタドライバを選択する。
【００７４】
ステップ97において、選択したプリンタドライバを利用して、プリンタに送出するデータを生成し、印刷制御部702に返す。ステップ98において、印刷制御部702は、取得したポート情報とプリンタに送出するデータをネットワーク通信部707に送り、プリンタに対し印刷を実行するよう指示する。ネットワーク通信部707は、ポート情報に基づき、そのポートを利用してプリンタ708と通信し、データを送出して印刷を行う。印刷後、印刷制御部702はポートを削除し、プリンタ情報の中からプリンタを特定する固有の情報(例えば、プリンタ名やIPアドレスなど)の情報を、アプリケーション701に返す。ステップ99において、アプリケーション701は、受け取ったプリンタ情報と共に、印刷が終了したことをユーザに通知する。
【００７５】
上記のように、本発明の実施例４では、印刷制御装置を、アプリケーションを介して指定された印刷機能を有するプリンタをネットワーク上にあるプリンタから検索し、ユーザが印刷権限を持っている機能を確認し、指定の印刷機能を有するプリンタが１台も存在しなかった場合にはその旨をユーザに通知し、プリンタ候補が複数ある場合はプリンタの混み具合が最小のものを選択し、プリンタを利用するためのポートを動的に作成し、プリンタドライバを自動的に選択し、プリンタドライバが導入されていなければ、プリンタ自身が保持しているプリンタドライバを取得し、アプリケーションから受けたデータをプリンタドライバに渡し、プリンタドライバから印刷可能なデータを受け取り、作成したポートに印刷可能なデータを送り、印刷が完了したら印刷したプリンタを特定する情報をユーザに通知する構成としたので、実際には印刷できないという失敗をさらに減らすことができる。
なお、以上で説明した印刷制御装置はプリンタに搭載し用いることができる。
【産業上の利用可能性】
【００７６】
本発明の印刷制御装置は、ネットワークプリンタを制御する印刷制御装置として最適である。モバイルにおけるネットワークプリンティング技術にも適用できる。
【図面の簡単な説明】
【００７７】
【図１】本発明の実施例１における印刷制御装置の機能ブロック図である。
【図２】本発明の実施例１における印刷制御装置の動作手順を示すフローチャートである。
【図３】本発明の実施例２における印刷制御装置の機能ブロック図である。
【図４】本発明の実施例２における印刷制御装置の動作手順を示すフローチャートである。
【図５】本発明の実施例３における印刷制御装置の機能ブロック図である。
【図６】本発明の実施例３における印刷制御装置の動作手順を示すフローチャートである。
【図７】本発明の実施例４における印刷制御装置の機能ブロック図である。
【図８】本発明の実施例４における印刷制御装置の動作手順を示すフローチャートである。
【符号の説明】
【００７８】
101・・・アプリケーション、102・・・印刷制御部、103・・・プリンタ検索部、104・・・設定管理部、105・・・ポート作成部、106・・・プリンタドライバ制御部、107・・・ネットワーク通信部、108・・・プリンタ、109・・・認証サーバ、301・・・アプリケーション、302・・・印刷制御部、303・・・プリンタ検索部、305・・・ポート作成部、306・・・プリンタドライバ制御部、307・・・ネットワーク通信部、308・・・プリンタ、309・・・認証サーバ、501・・・アプリケーション、502・・・印刷制御部、503・・・プリンタ検索部、504・・・設定管理部、505・・・ポート作成部、506・・・プリンタドライバ制御部、507・・・ネットワーク通信部、508・・・プリンタ、509・・・認証サーバ、701・・・アプリケーション、702・・・印刷制御部、703・・・プリンタ検索部、705・・・ポート作成部、706・・・プリンタドライバ制御部、707・・・ネットワーク通信部、708・・・プリンタ、709・・・認証サーバ。
【図１】
2007241885.tif 000003
【図２】
2007241885.tif 000004
【図３】
2007241885.tif 000005
【図４】
2007241885.tif 000006
【図５】
2007241885.tif 000007
【図６】
2007241885.tif 000008
【図７】
2007241885.tif 000009
【図８】
2007241885.tif 000010