(57)【要約】【課題】従来の印刷ドライバが、処理した印刷データに関する情報を保持しないという問題を解決することである。【解決手段】アプリケーションプログラムが生成した印刷データを処理し、その印刷データを処理しようとしている印刷装置がサポートしているフォーマットに従った変換印刷データを生成するレンダリングモジュールと、前記印刷ドライバが処理した印刷データの属性を特定するログデータを生成するロギングモジュールとを有する印刷ドライバである。【選択図】図１
2009064404.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションプログラムが生成した印刷データを処理し、その印刷データを処理しようとしている印刷装置がサポートしているフォーマットに従った変換印刷データを生成するレンダリングモジュールと、
前記印刷ドライバが処理した印刷データの属性を特定するログデータを生成するロギングモジュールとを有する印刷ドライバ。
【請求項２】
前記ログデータを、通信ネットワークを介して前記印刷ドライバが実行されているネットワークノード以外のネットワークノードに送信させる、請求項１に記載の印刷ドライバ。
【請求項３】
前記ログデータを、通信ネットワークを介してサーバに送信させる、請求項１に記載の印刷ドライバ。
【請求項４】
グラフィカルユーザインターフェイスデータを生成するグラフィカルユーザインターフェイスモジュールをさらに有し、
前記クライアントにおける前記グラフィカルユーザインターフェイスの処理により、ユーザが前記ログデータを通信ネットワークを介してサーバに送信させることができる、請求項３に記載の印刷ドライバ。
【請求項５】
グラフィカルユーザインターフェイスデータを生成するグラフィカルユーザインターフェイスモジュールをさらに有し、
前記クライアントにおける前記グラフィカルユーザインターフェイスの処理により、ユーザがユーザインターフェイス上でグラフィカルに前記ログデータを見ることができる、請求項１に記載の印刷ドライバ。
【請求項６】
前記グラフィカルユーザインターフェイスモジュールは、さらに、前記ユーザが前記ユーザインターフェイス上でグラフィカルに前記ログデータを見られるようになる前に、前記クライアントにおけるグラフィカルユーザインターフェイスデータの処理が前記ユーザにパスワードデータの入力を要求するように、前記グラフィカルユーザインターフェイスデータを生成する、請求項５に記載の印刷ドライバ。
【請求項７】
前記印刷データの前記属性は、前記印刷データに関連する名前、前記印刷データが処理された時間を示すタイムスタンプ、仕上げオプション、または前記印刷データの処理の状態を含む、請求項１に記載の印刷ドライバ。
【請求項８】
アプリケーションプログラムが生成する印刷データを処理する、コンピュータに実施させる方法であって、
プリンタドライバが、アプリケーションプログラムが生成した印刷データを処理し、その印刷データを処理しようとしている印刷装置がサポートしているフォーマットに従った変換印刷データを生成する段階と、
前記印刷ドライバが、前記印刷ドライバが処理した印刷データの属性を特定するログデータを生成する段階とを有する方法。
【請求項９】
前記印刷ドライバが、前記ログデータを、前記印刷ドライバが実行されているネットワークノード以外のネットワークノードに、通信ネットワークを介して送信させる段階をさらに有する、請求項８に記載の方法。
【請求項１０】
前記印刷ドライバが、前記ログデータを、通信ネットワークを介してサーバに送信させる段階をさらに有する、請求項８に記載の方法。
【請求項１１】
前記印刷ドライバが、グラフィカルユーザインターフェイスデータを生成する段階をさらに有し、
前記クライアントにおける前記グラフィカルユーザインターフェイスの処理により、ユーザが前記ログデータを通信ネットワークを介してサーバに送信させることができる、請求項１０に記載の方法。
【請求項１２】
前記印刷ドライバが、グラフィカルユーザインターフェイスデータを生成する段階をさらに有し、
前記クライアントにおける前記グラフィカルユーザインターフェイスの処理により、ユーザがユーザインターフェイス上でグラフィカルに前記ログデータを見ることができる、請求項８に記載の方法。
【請求項１３】
前記印刷ドライバが、前記ユーザが前記ユーザインターフェイス上でグラフィカルに前記ログデータを見られるようになる前に、前記クライアントにおけるグラフィカルユーザインターフェイスデータの処理が前記ユーザにパスワードデータの入力を要求するように、前記グラフィカルユーザインターフェイスデータを生成する段階をさらに有する、請求項１２に記載の方法。
【請求項１４】
前記印刷データの前記属性は、前記印刷データに関連する名前、前記印刷データが処理された時間を示すタイムスタンプ、仕上げオプション、または前記印刷データの処理の状態を含む、請求項８に記載の方法。
【請求項１５】
アプリケーションプログラムが生成した印刷データを処理するコンピュータ読み取り可能媒体であって、プロセッサにより処理された時、
プリンタドライバにおいて、アプリケーションプログラムが生成した印刷データを処理し、その印刷データを処理しようとしている印刷装置がサポートしているフォーマットに従った変換印刷データを生成する段階と、
前記印刷ドライバが、前記印刷ドライバが処理した印刷データの属性を特定するログデータを生成する段階とを実行させる命令を担う媒体。
【請求項１６】
前記プロセッサにより処理された時、前記ログデータを、通信ネットワークを介して前記印刷ドライバが実行されているネットワークノード以外のネットワークノードに送信させる別の命令を更に有する、請求項１５に記載のコンピュータ読み取り可能媒体。
【請求項１７】
前記プロセッサにより処理された時、前記ログデータを、通信ネットワークを介してサーバに送信させる別の命令を更に有する、請求項１５に記載のコンピュータ読み取り可能媒体。
【請求項１８】
前記プロセッサにより処理された時、グラフィカルユーザインターフェイスを生成させる別の命令を更に有し、
前記クライアントにおける前記グラフィカルユーザインターフェイスの処理により、ユーザが前記ログデータを通信ネットワークを介してサーバに送信させることができる、請求項１７に記載のコンピュータ読み取り可能媒体。
【請求項１９】
前記プロセッサにより処理された時、グラフィカルユーザインターフェイスを生成させる別の命令を更に有し、
前記クライアントにおける前記グラフィカルユーザインターフェイスの処理により、ユーザがユーザインターフェイス上でグラフィカルに前記ログデータを見ることができる、請求項１５に記載のコンピュータ読み取り可能媒体。
【請求項２０】
前記プロセッサにより処理された時、前記ユーザが前記ユーザインターフェイス上でグラフィカルに前記ログデータを見られるようになる前に、前記クライアントにおけるグラフィカルユーザインターフェイスデータの処理が前記ユーザにパスワードデータの入力を要求するように、前記グラフィカルユーザインターフェイスデータを生成させる別の命令をさらにさらに有する、請求項１９に記載のコンピュータ読み取り可能媒体。
【請求項２１】
前記印刷データの前記属性は、前記印刷データに関連する名前、前記印刷データが処理された時間を示すタイムスタンプ、仕上げオプション、または前記印刷データの処理の状態を含む、請求項１５に記載のコンピュータ読み取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は印刷ドライバに関し、特にデータのロギング（logging）機能を有する印刷ドライバに関する。
【背景技術】
【０００２】
このセクションで説明するアプローチは、達成しようとすることができるものであるが、必ずしも以前に思いついたものや達成しようと試みたものではない。それゆえ、特に注意しない限り、このセクションに記載したアプローチは、本発明の請求項の先行技術ではなく、このセクションに含めたことにより先行技術であると認めたものでもない。
【０００３】
一般的に言って、印刷ドライバは、アプリケーションプログラムが生成した印刷データを処理するプロセスであって、その印刷データを処理しようとしている印刷装置がサポートしているフォーマットにその印刷データを変換するものである。例えば、ユーザはワードプロセッサアプリケーションを用いて電子文書を作成する。次に、ユーザはアプリケーションプログラムの印刷オプションを使用して、その電子文書を印刷装置で印刷する要求をする。アプリケーションプログラムは印刷データを作成して、ユーザのクライアント装置にインストールされている印刷ドライバにその印刷データを供給する。場合によっては、これにはスプーラ（spooler）と呼ばれ印刷データをローカルで保存する中間プロセスを使用する。印刷ドライバは印刷データを処理して、変換印刷データ（translated  print  data）を生成する。この変換印刷データはその印刷装置がサポートしているフォーマットである。例えば、印刷ドライバは印刷データを処理して、ポストスクリプトフォーマットに従った変換印刷データを生成する。次に、印刷ドライバは変換印刷データを印刷装置に送信する。印刷装置はその変換印刷データを処理して、電子文書の印刷バージョンを生成する。
【０００４】
印刷ドライバはクライアント装置上にあっても、印刷サーバ等のサーバ装置上にあっても、印刷装置上にあってもよい。さらに、印刷ドライバはアプリケーションプログラムに組み込まれてもよいが、より一般的には、新しいバージョンの実装を容易にするため、別途のプロセスとして実装される。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来の印刷ドライバの１つの欠点は、処理した印刷データに関する情報を保持しないことである。ユーザは電子文書を印刷したかどうか知りたいとき、印刷装置を物理的にチェックして電子文書が印刷されているか見て確かめるか、例えば、オペレーティングシステムまたは印刷装置のユーティリティを介して印刷装置にリモート的に問い合わせなければならない。例えば、ユーザまたは管理者は印刷ユーティリティアプリケーションを使ってプリンタが処理した、及び現在処理している印刷ジョブを知ることが出来る。このアプローチには、印刷装置からこの情報を得られる印刷ユーティリティアプリケーションが必要となる。さらに、印刷装置がこの機能をサポートしていなければならない。このアプローチでは、処理された印刷データに関するクライアント側の情報はなにも提供されない。
【課題を解決するための手段】
【０００６】
印刷ドライバにデータロギング機能（data  logging  functionality）を設ける。データロギング機能には、印刷ドライバが処理した印刷データの属性を示すログデータを生成する能力が含まれる。このログデータには、印刷データのデータ名、タイムスタンプデータ、印刷オプション、仕上げオプション（finishing  option）、及び状態等の様々な属性が含まれる。ログデータは、具体的な実施に応じて、様々なフォーマットで生成され、保存される。また、印刷ドライバはログデータをユーザに表示するグラフィカルユーザインターフェイスを生成するように構成されている。さらに、印刷ドライバは、サーバ等の他のネットワーク装置にログデータをエクスポートするエクスポート機能を有するように構成されている。ログデータは様々なフォーマット及び様々なプロトコルでエクスポートでき、セキュア通信リンクまたは暗号化も使用できる。ここに記載したように、印刷ドライバにデータロギング機能を含めるアプローチにより、ユーザは、印刷ドライバが処理した印刷データのクライアント側の履歴を得ることが出来る。
【０００７】
本発明の一実施形態では、印刷ドライバはレンダリングモジュールとロギングモジュールを含む。レンダリングモジュールは、アプリケーションプログラムが生成した印刷データを処理し、そのデータを処理しようとしている印刷装置がサポートしているフォーマットに従った変換印刷データを生成する。ロギングモジュールは、印刷ドライバが処理した印刷データの（１つ以上の）属性を特定するログデータを生成するように構成されている。
【発明を実施するための最良の形態】
【０００８】
以下の詳細な説明では、説明を目的として、本発明を完全に理解してもらうために、具体的な詳細事項を開示した実施形態例を記載する。しかし、言うまでもなく、本発明はこれらの詳細がなくても実施することができる。他の場合において、ブロック図として周知の構造やデバイスを示すが、これは本発明が不明瞭になることを避けるためである。本発明の様々な態様を以下次のセクションで説明する。
I.  概要
II.  印刷ドライバデータロギングアーキテクチャ
III.  印刷ドライバデータロギング
IV.  ログデータの共有
V.  実施メカニズム
【０００９】
I.  概要
印刷ドライバにデータロギング機能（data  logging  functionality）を設ける。データロギング機能は、印刷ドライバが処理した印刷データの属性を示すログデータを生成する能力を含む。このログデータには、印刷データのデータ名、タイムスタンプデータ、印刷オプション、仕上げオプション（finishing  option）、及び状態等の様々な属性が含まれる。ログデータは、具体的な実施に応じて、様々なフォーマットで生成され、保存される。また、印刷ドライバはログデータをユーザに表示するグラフィカルユーザインターフェイスを生成するように構成されている。さらに、印刷ドライバは、サーバ等の他のネットワーク装置にログデータをエクスポートするエクスポート機能を有するように構成されている。ログデータは様々なフォーマット及び様々なプロトコルでエクスポートでき、セキュア通信リンクまたは暗号化も使用できる。ここに記載したように、印刷ドライバにデータロギング機能を含めるアプローチにより、ユーザは、印刷ドライバが処理した印刷データの履歴を得ることが出来る。
【００１０】
II.  印刷ドライバデータロギングアーキテクチャ
図１は、本発明の一実施形態による、印刷データロギングを実施する構成例１００を示すブロック図である。構成１００はクライアント装置１０２、印刷装置１０４、サーバ１０６、及びクライアント装置１０７を含み、これらはネットワーク１０８を介して互いに通信可能に結合している。ネットワーク１０８は、図１に示した様々な要素間におけるデータ交換を提供する任意の媒体またはメカニズムにより実施できる。ネットワーク１０８の例としては、これに限定されないが、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、イーサネット(登録商標)、インターネット等のネットワークや、地上波、衛星波、または無線リンク等が含まれる。ネットワーク１０８は図１に示した様々な要素間でセキュアな通信も提供する。図１に示した様々な要素は、（１つ以上の）直接通信リンクを介して互いに通信してもよいが、説明を簡潔にするため図１には示していない。
【００１１】
クライアント装置１０２、１０７はいかなるタイプのクライアント装置でもよく、本発明はクライアント装置の具体的なタイプには限定されない。クライアント装置１０２、１０７にはデスクトップコンピュータ、ノートブックコンピュータ、パーソナルデジタルアシスタント（ＰＤＡ）、テレフォニー（telephony）装置等が含まれるが、これらに限定されない。この実施例では、クライアント装置１０２はユーザインターフェイス１１０と、アプリケーションＡＰＰ１  １１２、ＡＰＰ２  １１４、ＡＰＰ３  １１６と、印刷ドライバ１１８と、記憶装置１２０とを含む。
【００１２】
ユーザインターフェイス１１０はいかなるメカニズム及び／またはプロセスで実施されてもよく、クライアント装置１０２とユーザとの間の情報交換を可能とするものである。ユーザインターフェイス１１０の例には、ＣＲＴ（cathode  ray  tube）や液晶ディスプレイ等のディスプレイ、キーパッド、タッチパッド、タッチスクリーン、キーボード、マウス等の入力装置、またはこれらの任意の組合せを含むが、これらの限定はされない。
【００１３】
アプリケーションＡＰＰ１  １１２、ＡＰＰ２  １１４、ＡＰＰ３  １１６は印刷データを生成できるいかなるタイプのアプリケーションであってもよい。アプリケーションＡＰＰ１  １１２、ＡＰＰ２  １１４、ＡＰＰ３  １１６の例としては、ワードプロセッサ、スプレッドシート、電子メール、その他のタイプのアプリケーションプログラムが含まれるが、これらに限定はされない。
【００１４】
印刷ドライバ１１８はいかなるタイプのいかなる形式の印刷ドライバであってもよい。例えば、印刷ドライバ１１８は（１つ以上の）ソフトウェアプロセスとして実施され得る。本発明の一実施形態では、印刷ドライバ１１８はレンダリングモジュール１２２、ロギングモジュール１２４、及びグラフィカルユーザインターフェイス（ＧＵＩ）モジュール１２６を含む。印刷ドライバ１１８は、説明を簡潔にするため図１には示してなく説明もしていないその他のモジュール、要素、機能等を含んでもよい。または、本発明は特定のモジュールや機能を組合せた印刷ドライバに限定されるものではない。レンダリングモジュール１２２は印刷データを処理し、その印刷データを処理する予定の印刷装置がサポートしているフォーマットに従った変換印刷データ（translated  print  data）を生成する。例えば、レンダリングモジュール１２２はワードプロセッサ（word  processing  application）が生成する印刷データを処理し、ポストスクリプトフォーマットの変換印刷データを生成する。これは、その印刷データを印刷装置１０４が処理する予定であり、印刷装置１０４がポストスクリプトをサポートしていることに基づく。ロギングモジュール１２４とＧＵＩモジュール１２６は、後で詳細に説明する。
【００１５】
記憶装置１２０はいかなるタイプの記憶装置であってもよい。記憶装置１２０の例としては、例えば、ＲＡＭ（random  access  memory）等の揮発性メモリ、ディスクやフラッシュメモリ等の不揮発性メモリ等が含まれる。クライアント装置１０２は具体的な実施形態に応じて、図１には図示していないメカニズム、モジュール、プロセス等を含んでいてもよい。
【００１６】
III.  印刷ドライバデータロギング
本発明の一実施形態では、印刷ドライバ１１８はロギングモジュール１２４を有し、ロギングモジュール１２４はログデータ１２８を生成する。ログデータ１２８は、印刷ドライバ１１８が処理した印刷データの（１つ以上の）属性を示す。属性は具体的な実施形態に応じていかなるタイプの属性であってもよい。属性の例としては、例えば、ジョブ名やファイル名等の印刷データ名と、タイムスタンプ情報と、片面印刷や両面印刷、コピー数、カラーまたは白黒などの情報を含む仕上げオプション等の印刷データオプションとがある。ログデータ１２８は、印刷ドライバ１１８が処理する印刷データ（いくつでもよい）の属性を示し、具体的な実施形態に応じたフォーマットや構造を有する。フォーマットの例としては、例えば、テキスト、リッチテキスト、ＸＭＬ等がある。ログデータ１２８はセキュアに保持されている（maintained  in  a  secure  manner）。例えば、ログデータ１２８は記憶装置１２０に暗号化して記憶されている。ログデータ１２８は記憶スペースを節約するために圧縮して記憶してもよい。
【００１７】
本発明の一実施形態では、ＧＵＩモジュール１２６はグラフィカルユーザインターフェイスを生成するように構成されており、このグラフィカルユーザインターフェイスによりユーザはログデータ１２８をグラフィカルに見ることができる。例えば、ＧＵＩモジュール１２６は、適切に処理されるとログデータ１２８のＧＵＩを提供する（１つ以上の）命令及び／またはＧＵＩオブジェクトを生成するように構成されている。
【００１８】
図２は、ＧＵＩモジュール１２６が生成するグラフィカルユーザインターフェイス２００を示す図である。本発明はグラフィカルユーザインターフェイス２００には限定されない。グラフィカルユーザインターフェイス２００は単なる一例である。ユーザが特定の印刷装置のプロパティをクライアント装置１０２に問い合わせると、それに応じてグラフィカルユーザインターフェイス２００がユーザインターフェイス１１０上に表示される。この例では、グラフィカルユーザインターフェイス２００はその特定の印刷装置の相異なるプロパティを表示するタブ（a  set  of  tabs）を有する。タブにはジョブ履歴タブ２０２が含まれ、印刷ドライバがその印刷装置のために処理した印刷データに関する情報を表示している。この例では、ジョブ履歴タブ２０２は、印刷ドライバが２組の印刷データを処理したことを示し、各印刷データの属性を表示している。属性には印刷データ名（ジョブ名）と、印刷データを処理した日付と、印刷データで指定されたオプションとが含まれている。この例のオプションには、片面または両面印刷と、カラーまたは白黒印刷と、ステープル等の仕上げオプションと、コピー数とが含まれている。属性は印刷完了や失敗等の状態も含んでいる。図２に示したオプションは説明のために設けたオプション例であり、本発明は特定のオプションや属性には限定されない。ジョブ履歴タブ２０２にはユーザインターフェイスオブジェクトが含まれ、これによりユーザは印刷ドライバのデータロギング（print  driver  data  logging）をイネーブル（enable）状態にしたりディスエーブル（disable）状態にしたりできる。例えば、ジョブ履歴タブ２０２は印刷ドライバのデータロギングをイネーブル状態にするチェックボックスを含んでいてもよい。そのチェックボックスをチェックしていないと、ジョブ履歴タブ２０２に表示されるその他の情報はディスエーブル状態になり、例えば、「グレイアウト（grayed  out）」される。あるいは、グラフィカルユーザインターフェイス２００には、ユーザ名及び／またはパスワードによりログデータへのアクセスを管理するオプションが含まれていてもよい。例えば、グラフィカルユーザインターフェイス２００は、ログデータへのセキュアなアクセスをイネーブル（enable）するチェックボックスを含んでいてもよい。そのチェックボックスをチェックしておくと、ユーザはユーザ名及び／またはパスワードの入力を求められる（queried）。ログデータ１２８にアクセスしてそれを見るためには、正しいユーザ名及び／またはパスワードの入力が必要である。
【００１９】
IV.  ログデータの共有
本発明の一実施形態では、印刷ドライバはログデータの共有ができるように構成される。これには、記憶装置１２０以外の装置（other  locations）にログデータを送信可能であることが含まれる。例えば、印刷ドライバ１１８は、ログデータ１２８を、クライアント装置１０２にインターフェイスされたリムーバブル記憶装置に記憶させるように構成されている。印刷ドライバ１１８は、ログデータ１２８を他のネットワーク装置に送信させるように構成されていてもよい。例えば、印刷ドライバ１１８は、ログデータ１２８を、ネットワーク１０８を介してクライアント装置１０７に送信させるように構成されている。他の例として、印刷ドライバ１１８は、ログデータ１２８を、サーバ１０６に送信させるように構成されている。サーバ１０６は、クライアント（いくつでもよい）上の印刷ドライバ（いくつでもよい）からのログデータの集中リポジトリ（central  repository）として機能してもよい。ログデータを集中して一箇所で記憶すると、ログデータを見て解析しようとする管理者にとって非常に便利である。例えば、システム管理者が特定の印刷装置の性能を解析したいとする。その管理者は、サーバ１０６にアクセスして、クライアント装置（いくつでもよい）で生成されたその特定の印刷装置のログデータを見て、その特定の印刷装置に印刷データを送信する複数の印刷ドライバが処理した印刷データのクライアント側のビューを集約して見ることができる。
【００２０】
印刷ドライバ１１８は、具体的な実施形態に応じて、ログデータ１２８を任意のフォーマットまたは構成で他のロケーションに送信させることができる。例えば、印刷ドライバ１１８はログデータ１２８をデータファイル、メッセージ、または電子メールとして送信するように構成されている。印刷ドライバ１１８は、セキュアなまたはセキュアでないフォーマットでログデータ１２８を送信してもよい。例えば、印刷ドライバ１１８は、ログデータ１２８が機密情報を含むと考えられる環境においては、セキュア通信チャネルを用いて、または暗号化形式でログデータ１２８を送信するように構成される。他の例として、ログデータ１２８は、サーバ１０６に送信され、アクセスが管理されているディレクトリやフォルダ等であるサーバ１０６上のセキュアなロケーション（location）に記憶される。ＧＵＩモジュール１２６は、ユーザが、エクスポート（export）するログデータ１２８の形式及び／またはフォーマット（例えば、データファイル、メッセージ、電子メール等）を指定でき、ログデータ１２８をセキュアメカニズムを用いて送信するかどうかを指示できるグラフィカルユーザインターフェイスを生成するように構成されていてもよい。
【００２１】
具体的な実施形態に応じてログデータの共有を開始するやり方は変わり、本発明は特定のやり方には限定されない。図２に示したグラフィカルユーザインターフェイス２００は、エクスポートボタンの形式のユーザインターフェイスオブジェクト２０４を含み、このオブジェクトをユーザが選択するとログデータの共有が開始される。ユーザインターフェイスオブジェクト２０４をユーザが選択すると、別のユーザインターフェイスオブジェクトが表示されてもよい。例えば、ユーザにログデータ１２８の送信先の入力を求める（１つ以上の）ユーザインターフェイスオブジェクトが表示される。ユーザインターフェイスオブジェクトにより、ユーザはログデータ１２８を送信するフォーマットまたは形式を指定することができる。ユーザインターフェイスオブジェクトにより、ユーザは、例えば、セキュア通信チャネルを介してまたは暗号化してセキュアなやり方でログデータ１２８を送信するか指定することができる。
【００２２】
ログデータの共有をユーザの指示により開始するのではなく、印刷ドライバ１１８がログデータ１２８を他のロケーション（locations）に自動的にエクスポート（export）してもよい。例えば、印刷ドライバ１１８は、指定された時間に、または定期的にログデータ１２８を他のロケーションに送信してもよい。ユーザはＧＵＩモジュール１２６が生成するグラフィカルユーザインターフェイスによりエクスポートのスケジュールを指定できる。
【００２３】
図３は、本発明の一実施形態による、印刷ドライバにおけるデータロギングを実施するアプローチを示すフロー図３００である。ステップ３０２において、印刷ドライバのデータロギングが開始される。これは、例えば、ユーザが特定の印刷装置の装置特性を編集して印刷ドライバによるデータロギング（data  logging）をイネーブル状態にすることにより行われる。ステップ３０４において、電子文書を作成するか、もしくはアプリケーションプログラムにロードする。例えば、ユーザがワードプロセッサにより作成した文書をアプリケーションプログラムＡＰＰ１  １１２にロードする。ステップ３０６において、その電子文書の文書印刷プロパティを指定する。これは、例えばユーザがアプリケーションプログラムＡＰＰ１  １１２によりその電子文書の印刷を選択して、選択された印刷装置のプロパティを選択することにより行われる。印刷ドライバ１１８がグラフィカルユーザインターフェイスをユーザインターフェイス１１０上に表示させ、ユーザが用紙オプションや仕上げオプション（finishing  options）等の電子文書の所望の印刷プロパティ（print  properties）を指定する。
【００２４】
ステップ３０８において、ユーザが電子文書の印刷を開始し、アプリケーションプログラムＡＰＰＩ  １１２が印刷データを生成する。ステップ３１０において、印刷データが、ユーザが選択した特定の印刷装置に関与する（associated  with）印刷ドライバに送信される。これは、スプーリングプロセス（spooling  process）の使用も含まれる。ステップ３１２において、印刷ドライバ１１８は印刷データを処理し、ログデータ１２８を上記の通り生成する。
【００２５】
V.  実施メカニズム
データロギング機能を有する印刷ドライバは、いかなるロケーションのいかなる印刷ドライバであってもよい。本発明の実施形態を、クライアント側の印刷ドライバのデータロギングの状況で図示し説明したが、本発明はこの状況には限定されず、データロギングをサーバ上に実装された印刷ドライバにおいて実施してもよい。例えば、データロギングを印刷サーバ上の印刷ドライバにおいて実施してもよい。この場合、ログデータは、クライアント装置（いくつでもよい）から受信して印刷サーバが処理した印刷データを反映している。
【００２６】
データロギング機能を有する印刷ドライバは、いかなるタイプのコンピューティングプラットフォームやアーキテクチャ上で実施してもよい。図４は、本発明の一実施形態を実施するコンピュータシステム４００を示すブロック図である。コンピュータシステム４００は、情報をやりとりするバス４０２その他の通信メカニズムと、バス４０２に結合した情報を処理するプロセッサ４０４とを有する。コンピュータシステム４００は、さらに、ランダムアクセスメモリ（ＲＡＭ）またはその他のダイナミック記憶デバイス等のメインメモリ４０６を含む。このメインメモリは、バス４０２に結合しており、情報と、プロセッサ４０４により実行される命令とを格納する。メインメモリ４０６は、プロセッサ４０４による命令の実行中に、一時的変数やその他の中間情報を記憶するために使用することもできる。コンピュータシステム４００は、さらに、読み出し専用メモリ（ＲＯＭ）４０８その他の静的記憶デバイスを含む。この読出専用メモリは、バス４０２に結合されており、静的な情報とプロセッサ４０４の命令とを格納する。記憶装置４１０（磁気ディスクや光ディスク等）が設けられ、バス４０２に結合されており、情報と命令を格納する。
【００２７】
コンピュータシステム４００は、バス４０２を介して、ディスプレイ４１２（ＣＲＴ等）に結合されており、コンピュータユーザに情報を表示する。入力装置４１４は、英数字その他のキーを含み、バス４０２に結合されており、情報とコマンド選択をプロセッサ４０４に伝送する。他のタイプのユーザ入力装置はカーソル制御部４１６であり、マウス、トラックボール、またはカーソル方向キー等である。これらは、プロセッサ４０４に方向情報とコマンド選択を伝送し、ディスプレイ４１２上のカーソルの動きを制御する。この入力装置は典型的には２つの軸、すなわち第１の軸（例えばｘ軸）と第２の軸（例えばｙ軸）で２自由度を有し、これによりデバイスが平面内の点を特定することができる。
【００２８】
本発明は、ここに説明した方法を実施するためのコンピュータシステム４００の使用方法にも関する。本発明の一実施形態によると、これらの方法のコンピュータシステム４００による実行は、メインメモリ４０６に含まれる１つ以上の命令の１つ以上のシーケンスをプロセッサ４０４が実行することにより行われる。かかる命令は、他の機械読み取り可能媒体（記憶装置４１０等）からメインメモリ４０６に読み込まれる。メインメモリ４０６に含まれる命令シーケンスの実行により、プロセッサ４０４はここに説明したプロセスステップを実行する。他の実施形態では、ソフトウェア命令に替えて、またはソフトウェア命令と組み合わせて、ハードワイヤー回路（hard-wired  circuitry）を使用して本発明を実施することもできる。このように、本発明の実施形態は、ハードウェア回路とソフトウェアの特定の組み合わせに限定はされない。
【００２９】
ここで、「機械読み取り可能媒体」との用語は、機械に特定のやり方で動作させるデータを提供するいかなる媒体も指す。コンピュータシステム４００を用いて実施する一実施形態では、様々な機械読み取り可能媒体を使用して、例えば、プロセッサ４０４が実行する命令を提供する。かかる媒体は、多数の形式をとることができ、例えば、不揮発性媒体、揮発性媒体、伝送媒体等を含むが、これらに限定はされない。不揮発媒体は、例えば光ディスクまたは磁気ディスクを含み、記憶装置４１０等である。揮発性媒体は、ダイナミックメモリを含み、メインメモリ４０６等である。伝送媒体は、同軸ケーブル、銅線、光ファイバを含み、バス４０２を含むワイヤも含む。伝送媒体は、音波や光波であって、無線通信や赤外線データ通信で生成されるものの形態を取ることもできる。
【００３０】
機械読み取り可能媒体の一般的な形態には次のものが含まれる。例えば、フロッピー(登録商標)ディスク（登録商標）、フレキシブルディスク、ハードディスク、磁気テープ、その他の磁気媒体、ＣＤ−ＲＯＭその他の光媒体、パンチカード、紙テープ、その他の穴のパターンを有する物理媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、フラッシュＥＰＲＯＭ、その他のメモリチップまたはカートリッジ、以下に説明する搬送波、コンピュータが読み取れるその他のいかなる媒体。
【００３１】
機械読み取り可能媒体の様々な形態を使用して、１つ以上の命令の１つ以上のシーケンスをプロセッサ４０４に搬送し、実行させる。例えば、命令は最初にリモートコンピュータの磁気ディスク上にあってもよい。リモートコンピュータは、その命令をそのダイナミックメモリにロードして、モデムを用いて電話回線を介してその命令を送信することができる。コンピュータシステム４００にあるモデムが、電話回線上のデータを受信し、赤外トランスミッタを用いてそのデータを赤外信号に変換することができる。赤外検出器が赤外信号で搬送されたそのデータを受信して、適当な回路がそのデータをバス４０２に載せることができる。バス４０２はそのデータをメインメモリ４０６に送り、プロセッサ４０４はその命令を読み出して実行する。メインメモリ４０６が受け取った命令は、任意的に記憶装置４１０に記憶され、その前または後にプロセッサ４０４により実行される。
【００３２】
コンピュータシステム４００は、バス４０２に結合した通信インターフェイス４１８も含む。通信インターフェイス４１８は、ネットワークリンク４２０との双方向データ通信カップリングを提供する。ネットワークリンクはローカルネットワーク４２２に接続されている。例えば、通信インターフェイス４１８は、統合デジタルサービスネットワーク（ＩＳＤＮ）カードまたはモデムであって、対応するタイプの電話回線へのデータ通信接続を提供する。他の例として、通信インターフェイス４１８は、ローカルエリアネットワーク（ＬＡＮ）カードであって、互換性のあるＬＡＮへのデータ通信接続を提供してもよい。無線リンクを実施してもよい。かかる実施では、通信インターフェイス４１８は、いろいろなタイプの情報を表すデジタルデータストリームを搬送する電気的、電磁気的、または光学的信号を送受信する。
【００３３】
ネットワークリンク４２０は、一般的には、１つ以上のネットワークを介して他のデータデバイスとのデータ通信を提供する。例えば、ネットワークリンク４２０は、ローカルネットワーク４２２により、ホストコンピュータ４２４またはインターネットサービスプロバイダ（ＩＳＰ）４２６により運営されているデータ機器への通信を提供する。インターネットサービスプロバイダ（ＩＳＰ）４２６は、これに対して、現在は一般的に「インターネット」４２８と呼ばれている、世界規模のパケットデータ通信ネットワークを介してデータ通信サービスを提供する。ローカルネットワーク４２２とインターネット４２８は、両方とも、デジタルデータストリームを担う電気的、電磁気的、または光学的信号を使用する。様々なネットワーク中の信号やネットワークリンク４２０と通信インターフェイス４１８上の信号は、コンピュータシステム４００との間でデジタルデータを担い、情報を伝送する搬送波の例である。
【００３４】
コンピュータシステム４００は、ネットワーク、ネットワークリンク４２０、及び通信インターフェイス４１８により、メッセージを送信しプログラムコードを含むデータを受信することができる。インターネットの例では、サーバ４３０は、インターネット４２８、ＩＳＰ４２６、ローカルネットワーク４２２、及び通信インターフェイス４１８を介して、要求されたアプリケーションプログラムのコードを送信してもよい。
【００３５】
受信するコードは、受信しつつプロセッサ４０４により実行されてもよいし、後で実行するために記憶装置４１０またはその他の不揮発性記憶装置に記憶されてもよい。このように、コンピュータシステム４００は、搬送波の形態でアプリケーションコードを取得してもよい。
【００３６】
上記の通り明細書では、実施ごとに変わり得る多数の詳細を参照して本発明の実施形態を説明した。このように、本発明であり、出願人が本発明であると意図しているものを示すのは、願書に添付した特許請求の範囲であり、特許後の訂正も含め特許された請求項である。よって、請求項中に明示的に含まれていない限定、要素、特性、特徴、利益、または属性は、いかなる方法によっても、かかる請求項の範囲を限定するものではない。したがって、明細書と図面は例示であって限定ではないと考えるべきである。
【図面の簡単な説明】
【００３７】
添付した図面において、同じ参照番号は同じ構成要素を指す。
【図１】本発明の一実施形態による、印刷データロギングを実施する構成例を示すブロック図である。
【図２】ＧＵＩモジュールが生成するグラフィカルユーザインターフェイスの一例を示す図である。
【図３】本発明の一実施形態による、印刷ドライバデータロギングを実施するアプローチを示すフロー図である。
【図４】本発明の実施形態を実現するコンピュータシステムを示すブロック図である。
【符号の説明】
【００３８】
１００  構成
１０２、１０７  クライアント装置
１０４  印刷装置
１０６  サーバ
１０８  ネットワーク
１１０  ユーザインターフェイス
１１２、１１４、１１６  アプリケーション
１１８  プリンタドライバ
１２０  記憶装置
１２２  レンダリングモジュール
１２４  ロギングモジュール
１２６  ＧＵＩモジュール
１２８  ログデータ
４００  コンピュータシステム
４０２  バス
４０４  プロセッサ
４０６  メインメモリ
４０８  ＲＯＭ
４１０  記憶装置
４１２  ディスプレイ
４１４  入力装置
４１６  カーソル制御部
４１８  通信インターフェイス
４２０  ネットワークリンク
４２２  ローカルネットワーク
４２４  ホスト
４２６  ＩＳＰ
４２８  インターネット
４３０  サーバ
【図１】
2009064404.tif 000003
【図２】
2009064404.tif 000004
【図３】
2009064404.tif 000005
【図４】
2009064404.tif 000006