(57)【要約】ＰＣ、（１２、図１）ラップトップ・コンピュータ、ＰＤＡ、（１６、図１）ポケットＰＣ、携帯電話、（１８、図１）などの発信デバイスを操作するユーザが発信デバイスに印刷用デバイス・ドライバをロードすることなく「ドライバレス」プリント・サーバ（ＤＰＳ）システム（３８、図１）を介してドキュメント、イメージ、Ｗｅｂページを印刷できるシステム（図１）および方法を説明する。サーバ・システムでは、テーブル駆動型メカニズムを使用して、発信デバイスのオペレータが印刷したいドキュメントに関係するさまざまなソフトウェア・アプリケーションにより生成されるさまざまなプリンタ・イベントを処理し、取り扱う。ドキュメントに対応する印刷データは、さまざまなネットワークを介して、選択したターゲット・プリンタに送られる。システムは、ＤＰＳサーバ・コンピュータと発信デバイスとの間の双方向通信だけでなく、ＤＰＳサーバ・コンピュータとターゲット・プリンタとの間の双方向通信にも対応する。
2004535618.tif 000002
【特許請求の範囲】
【請求項１】
発信デバイスのユーザがターゲット・プリンタでソース・データを印刷できるようにする方法であって、
発信デバイスにデータを送り、ユーザがその発信デバイスから印刷するソース・データを選択し、ターゲット・プリンタを識別するためのユーザ・インターフェイスを表示できるようにすることと、
発信デバイスからソース・データを識別するソース・データまたは印を受信し、そのソース・データまたは印をプリント・サーバに送ることと、
ソース・データをプリント・サーバ上で実行されている対応するアプリケーションまたはブラウザにロードすることと、
対応するアプリケーションまたはブラウザおよびプリント・サーバ上で実行されているオペレーティング・システムの印刷サブシステムを介してソース・データに対応するプリンタ・データを生成することと、
プリント・サーバからプリンタ・データをターゲット・プリンタにサブミットすることを含む方法。
【請求項２】
発信デバイスはパーソナル・コンピュータ（ＰＣ）、ラップトップ・コンピュータ、ワークステーション、コンピュータ・サーバ、パーソナル・デジタル・アシスタント・デバイス、ポケットＰＣ、携帯電話、またはインターネット・アプライアンスのうちの１つを備える請求項１に記載の方法。
【請求項３】
発信デバイスはターゲット・プリンタに対応するプリンタ・デバイス・ドライバをロードする必要がない請求項１に記載の方法。
【請求項４】
ソース・データはアプリケーション・ファイルに対応し、発信デバイスはアプリケーション・ファイルに対応するアプリケーションをロードする必要がない請求項１に記載の方法。
【請求項５】
ユーザ・インターフェイスを生成するために送られるデータが、プリント・サーバと通信するように動作可能にリンクされたＷｅｂサーバにより処理される一組のＷｅｂページを含む請求項１に記載の方法。
【請求項６】
ソース・データにアプリケーション・ファイルが含まれる請求項１に記載の方法。
【請求項７】
ソース・データにイメージ・ファイルが含まれる請求項１に記載の方法。
【請求項８】
イメージ・ファイルがプリント・サーバ上で動作しているブラウザに表示され、イメージに関係するグラフィカル・データを印刷サブシステムにサブミットする動作をブラウザにさせる印刷アクションを呼び出す請求項７に記載の方法。
【請求項９】
ソース・データにＷｅｂページが含まれる請求項１に記載の方法。
【請求項１０】
ソース・データを識別する印がＷｅｂページに対応するＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）アドレスを含み、ＵＲＬアドレスはＷｅｂページへのナビゲーションのためブラウザによって使用される請求項９に記載の方法。
【請求項１１】
さらにユーザ・インターフェイスに印刷ステータス情報を表示し、ユーザがユーザによってサブミットされるソース・データ印刷要求を監視できるようにする請求項１に記載の方法。
【請求項１２】
さらに、
複数のソース・データ・ファイル・タイプのそれぞれをそのファイル・タイプが設定されているソース・データの印刷に使用できる１つまたは複数の対応するアプリケーションにマッピングするファイル・タイプからアプリケーションへのマッピング情報を定義することと、
プリント・サーバでソース・データを受け取ったことに対する応答として、
ソース・データのファイル・タイプを判別し、
プリント・サーバにロードし、ソース・データを印刷するための適切なアプリケーションを判別し、
アプリケーションと印刷サブシステムを組み合わせてプリンタ・データを生成させる印刷アクションを開始し、
印刷データをターゲット・プリンタに送り、印刷することを含む請求項１に記載の方法。
【請求項１３】
さらに管理者がファイル・タイプからアプリケーションへのマッピング情報を定義し、アプリケーションをプリント・サーバにロードするためのアプリケーション・ロード情報を定義できるようにするユーザ・インターフェイスを備える請求項１２に記載の方法。
【請求項１４】
ユーザ・インターフェイスがプリント・サーバに結合され動作するＷｅｂサーバで処理されるＷｅｂページを備える請求項１３に記載の方法。
【請求項１５】
アプリケーションはアプリケーション印刷プロセス実行中にメッセージ・ボックスおよび／またはダイアログボックスを表示して、エラーまたは警告をユーザに知らせたり、ユーザから印刷パラメータ情報を収集することができ、さらにプリンタ・データを生成するためにアプリケーション側で起動したメッセージ・ボックスおよび／またはダイアログボックスを処理するコンピュータ生成入力を自動的に供給する請求項１２に記載の方法。
【請求項１６】
さらにターゲット・プリンタの出力のシミュレートされた表現を発信デバイスで表示するときにこの表現を含む印刷プレビュー・データを発信デバイスに供給する請求項１に記載の方法。
【請求項１７】
さらに、保留印刷ジョブに関係する情報を管理者が表示できるＷｅｂベースのユーザ・インターフェイスを備える請求項１に記載の方法。
【請求項１８】
さらに、完了印刷ジョブに関係する情報を管理者が表示できるＷｅｂベースのユーザ・インターフェイスを備える請求項１に記載の方法。
【請求項１９】
Ｗｅｂベースのユーザ・インターフェイスにより、管理者は、日付範囲、指定所有者、アカウント、指定プリンタのうち少なくとも１つに基づくフィルタを使用して完了した印刷要求を表示することができる請求項１８に記載の方法。
【請求項２０】
Ｗｅｂベースのユーザ・インターフェイスにより、管理者は、管理者がＷｅｂベースのユーザ・インターフェイスを表示することで入力された複数の検索条件に対する応答として生成されるフィルタを使用して完了した印刷要求を表示することができる請求項１８に記載の方法。
【請求項２１】
ソース・データは、ファイル参照オペレーションによりユーザが選択することができるファイルを含み、前記ファイルは、発信デバイスに格納されるか、またはネットワーク経由で発信デバイスからアクセスできるデバイス上に格納されるファイルを含む請求項１に記載の方法。
【請求項２２】
ソース・データをロードし、プリンタ・データを生成するオペレーションは、オペレーティング・システムのシェル拡張印刷メカニズムを使用して実行される請求項１に記載の方法。
【請求項２３】
コンピューティング・マシンによって実行されたときに発信デバイスのユーザがユーザによって選択されたソース・データに関係するターゲット・プリンタにハードコピー出力を印刷することを可能にする複数の機械語命令が格納される機械読み取り可能媒体であって、その際に、
Ｗｅｂサーバから発信デバイスへのＷｅｂベース・データを処理し、ユーザ・インターフェイスを発信デバイスに表示し、前記ユーザ・インターフェイスは対話型コントロールを備え、ユーザは印刷するソース・データを選択し、ハードコピー出力を印刷するために選択するプリンタのリストからターゲット・プリンタを識別するオペレーションと、
Ｗｅｂサーバで発信デバイスからソース・データを識別するソース・データまたは印を受信するオペレーションと、
ソース・データを識別するソース・データまたは印をプリント・サーバに受け渡すオペレーションと、
ソース・データをプリント・サーバ上で実行されている対応するアプリケーションまたはブラウザにロードするオペレーションと、
ソース・データに対応するプリンタ・データを、対応するアプリケーションまたはブラウザおよびプリント・サーバ上で動作しているオペレーティング・システムの印刷サブシステムにより生成させる印刷アクションを開始するオペレーションと、
プリント・サーバからプリンタ・データをターゲット・プリンタにサブミットするオペレーションが実行される機械読み取り可能媒体。
【請求項２４】
発信デバイスはパーソナル・コンピュータ（ＰＣ）、ラップトップ・コンピュータ、ワークステーション、コンピュータ・サーバ、パーソナル・デジタル・アシスタント・デバイス、ポケットＰＣ、携帯電話、またはインターネット・アプライアンスのうちの１つを備える請求項１に記載の方法。
【請求項２５】
ソース・データはアプリケーション・ファイルを含む請求項２３に記載の機械読み取り可能媒体。
【請求項２６】
ソース・データは、表示されるユーザ・インターフェイスの対応するコントロールにより起動されるファイル参照オペレーションによりユーザが選択することができるアプリケーション・ファイルを含み、前記アプリケーション・ファイルは、発信デバイスに格納されるか、またはネットワーク経由で発信デバイスからアクセスできるデバイス上に格納されるファイルを含む請求項２５に記載の機械読み取り可能媒体。
【請求項２７】
ソース・データはプリント・サーバ上で動作しているブラウザに表示されるイメージ・ファイルを含み、イメージに関係するグラフィカル・データをオペレーティング・システムの印刷サブシステムにサブミットするためブラウザにより印刷アクションが実行される請求項２３に記載の機械読み取り可能媒体。
【請求項２８】
ソース・データを識別する印がＷｅｂページに対応するＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）アドレスを含み、機械語命令を実行することでさらに、
Ｗｅｂブラウザをロードするオペレーション、
ＷｅｂブラウザがＷｅｂページにナビゲートできるようにＵＲＬアドレスをＷｅｂブラウザに受け渡すオペレーションと、
Ｗｅｂブラウザが備える印刷オペレーションをアクティブにし、Ｗｅｂページに対応するプリンタ・データを印刷サブシステムと連携するブラウザに生成させるオペレーションが実行される請求項２３に記載の機械読み取り可能媒体。
【請求項２９】
機械語命令の実行によりさらに印刷ステータス情報を供給してユーザがユーザによってサブミットされるソース・データ印刷要求を監視できる対話型Ｗｅｂページを処理するオペレーションが実行される請求項２３に記載の機械読み取り可能媒体。
【請求項３０】
機械語命令の実行によりさらに、
管理者が複数のソース・データ・ファイル・タイプのそれぞれをそのファイル・タイプが設定されているソース・データのロードに使用できる１つまたは複数の対応するアプリケーションにマッピングするファイル・タイプからアプリケーションへのマッピング情報を定義するために使用できるユーザ・インターフェイスを提供するオペレーションと、
プリント・サーバでソース・データを受け取ったことに対する応答として、
ソース・データのファイル・タイプを判別し、
プリント・サーバにロードし、ソース・データを印刷するための適切なアプリケーションを判別し、
アプリケーションと印刷サブシステムを組み合わせてプリンタ・データを生成させる印刷アクションを開始するオペレーションが実行される請求項２３に記載の機械読み取り可能媒体。
【請求項３１】
機械語命令の実行によりさらに、管理者がファイル・タイプからアプリケーションへのマッピング情報を定義し、アプリケーションをプリント・サーバにロードするためのアプリケーション・ロード情報を定義できるようにするユーザ・インターフェイスを表示するオペレーションが実行される請求項２３に記載の機械読み取り可能媒体。
【請求項３２】
ユーザ・インターフェイスはＷｅｂサーバで処理されるＷｅｂページを含む請求項３１に記載の機械読み取り可能媒体。
【請求項３３】
アプリケーションがアプリケーション印刷プロセス実行中にメッセージ・ボックスおよび／またはダイアログボックスを表示して、エラーまたは警告をユーザに知らせたり、ユーザから印刷パラメータ情報を収集することができ、機械語命令の実行によりさらにプリンタ・データを生成するためにアプリケーション側で起動したメッセージ・ボックスおよび／またはダイアログボックスを処理するコンピュータ生成入力を自動的に供給するオペレーションが実行される請求項３０に記載の機械読み取り可能媒体。
【請求項３４】
機械語命令の実行によりさらに、ハードコピー出力の印刷プレビューに対応する印刷プレビュー・データを生成し、印刷プレビュー・データを発信デバイスに送信して発信デバイスに表示するオペレーションが実行される請求項２３に記載の機械読み取り可能媒体。
【請求項３５】
データはポータブル・ドキュメント形式（ＰＤＦ）ドキュメントとして発信デバイスに送信される請求項３４に記載の機械読み取り可能媒体。
【請求項３６】
機械語命令の実行によりさらに、管理者が保留印刷ジョブに関係する情報を表示するためのＷｅｂページをＷｅｂサーバで処理するオペレーションが実行される請求項２３に記載の機械読み取り可能媒体。
【請求項３７】
機械語命令の実行によりさらに、管理者が完了印刷ジョブに関係する情報を表示するための管理ＷｅｂページをＷｅｂサーバで処理するオペレーションが実行される請求項２３に記載の機械読み取り可能媒体。
【請求項３８】
管理Ｗｅｂページにより、管理者は日付範囲、指定所有者、アカウント、指定プリンタのうち少なくとも１つに基づくフィルタを使用して完了した印刷要求を表示することができる請求項３７に記載の機械読み取り可能媒体。
【請求項３９】
管理Ｗｅｂページにより、管理者は管理者によって入力された複数の検索条件に対する応答として生成されるフィルタを使用して完了した印刷要求を表示することができる請求項３７に記載の機械読み取り可能媒体。
【請求項４０】
ソース・データをロードし、プリンタ・データを生成するオペレーションは、オペレーティング・システムのシェル拡張印刷メカニズムを使用して実行される請求項２３に記載の機械読み取り可能媒体。
【請求項４１】
発信デバイスのユーザがターゲット・プリンタでソース・データを印刷することができるシステムであって、
ユーザが印刷するソース・データを選択し、対話型Ｗｅｂページを表示する発信デバイス上で実行されるブラウザ経由でターゲット・プリンタを識別し、ソース・データを識別するソース・データまたは印を含み、ターゲット・プリンタを識別する印刷要求を受信することができる１つまたは複数の対話側Ｗｅｂページを処理するＷｅｂサーバ手段と、
ソース・データを識別するソース・データまたは印をＷｅｂサーバ手段からプリント・サーバ・コンピュータに受け渡す手段と、
ソース・データの出力元のアプリケーションまたはブラウザをソース・データとともにプリント・サーバ・コンピュータにロードする手段と、
アプリケーションまたはブラウザがプリント・サーバ・コンピュータ上で稼働しているオペレーティング・システムの印刷サブシステムと連携してソース・データおよびターゲット・プリンタに関係するプリンタ・データを生成することを求める印刷要求を生成する手段と、
プリント・サーバ・コンピュータからプリンタ・データをターゲット・プリンタに送信する手段を備えるシステム。
【請求項４２】
発信デバイスはパーソナル・コンピュータ（ＰＣ）、ラップトップ・コンピュータ、ワークステーション、コンピュータ・サーバ、パーソナル・デジタル・アシスタント・デバイス、ポケットＰＣ、携帯電話、またはインターネット・アプライアンスのうちの１つを備える請求項４１に記載のシステム。
【請求項４３】
ソース・データにアプリケーション・ファイル、イメージ、またはＷｅｂページのうちの１つが含まれる請求項４１に記載のシステム。
【請求項４４】
ソース・データは、Ｗｅｂサーバ手段によって処理される対話型Ｗｅｂページの対応するコントロールにより起動されるファイル参照オペレーションによりユーザが選択することができるアプリケーション・ファイルを含み、前記アプリケーション・ファイルは、発信デバイスに格納されるか、またはネットワーク経由で発信デバイスからアクセスできるデバイス上に格納されるファイルを含む請求項４１に記載のシステム。
【請求項４５】
ソース・データはプリント・サーバ・コンピュータ上で動作しているブラウザに表示されるイメージ・ファイルを含み、印刷要求を生成する手段はブラウザにイメージに関係するグラフィカル・データを印刷サブシステムにサブミットさせるブラウザ印刷コマンドを呼び出す請求項４１に記載のシステム。
【請求項４６】
ソース・データを識別する印はＷｅｂページに対応するＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）アドレスを含み、アプリケーションまたはブラウザをロードする手段はＷｅｂブラウザをロードし、ＷｅｂブラウザがＷｅｂページにナビゲートできるようにＵＲＬアドレスをＷｅｂブラウザに受け渡し、印刷要求を生成する手段はＷｅｂブラウザに、Ｗｅｂページに対応するデータを印刷サブシステムに送信させることでプリンタ・データを生成するＷｅｂブラウザ印刷コマンドをアクティブにする請求項４１に記載のシステム。
【請求項４７】
Ｗｅｂサーバ手段はさらに、印刷ステータス情報を供給してユーザがユーザによってサブミットされるソース・データ印刷要求を監視できる対話型Ｗｅｂページを処理するオペレーションを実行する請求項４１に記載のシステム。
【請求項４８】
Ｗｅｂサーバ手段はさらに、
管理者が複数のソース・データ・ファイル・タイプのそれぞれをそのファイル・タイプが設定されているソース・データのロードに使用できる１つまたは複数の対応するアプリケーションにマッピングするファイル・タイプからアプリケーションへのマッピング情報を定義するために使用できる１つまたは複数のＷｅｂページを処理するオペレーションと、
プリント・サーバ・コンピュータでソース・データを受信したことに対する応答として、アプリケーションまたはブラウザをロードする手段は、
ソース・データのファイル・タイプを判別するオペレーションと、
プリント・サーバ・コンピュータにロードし、ソース・データを開くための適切なアプリケーションを判別するオペレーションを実行し、
印刷要求を生成する手段は、アプリケーションに、ソース・データに対応するデータを印刷サブシステムにサブミットさせてプリンタ・データを生成するアプリケーション印刷コマンドを呼び出す請求項４１に記載のシステム。
【請求項４９】
前記１つまたは複数のＷｅｂページではさらに、管理者がファイル・タイプからアプリケーションへのマッピング情報を定義し、アプリケーションをプリント・サーバ・コンピュータにロードするためのアプリケーション・ロード情報を定義できる請求項４８に記載のシステム。
【請求項５０】
アプリケーションはアプリケーション印刷プロセス実行中にメッセージ・ボックスおよび／またはダイアログボックスを表示して、エラーまたは警告をユーザに知らせたり、ユーザから印刷パラメータ情報を収集することができ、さらにプリンタ・データを生成するときに起動されたメッセージ・ボックスおよび／またはダイアログボックスを処理するためのコンピュータ生成入力を自動的に供給するウィンドウ処理手段を備える請求項４８に記載のシステム。
【請求項５１】
さらにハードコピー出力の結果を確認する印刷プレビューを表示するために使用できるデータを生成する印刷プレビュー手段を備える請求項４１に記載のシステム。
【請求項５２】
印刷プレビューを表示するデータはポータブル・ドキュメント形式（ＰＤＦ）ドキュメントを含む請求項５１に記載のシステム。
【請求項５３】
Ｗｅｂサーバ手段はさらに、保留印刷ジョブに関係する情報を管理者が表示できる管理Ｗｅｂページを処理する請求項４１に記載のシステム。
【請求項５４】
Ｗｅｂサーバ手段はさらに、完了印刷ジョブに関係する情報を管理者が表示できる管理Ｗｅｂページを処理する請求項４１に記載のシステム。
【請求項５５】
管理Ｗｅｂページにより、管理者は日付範囲、指定所有者、アカウント、指定プリンタのうち少なくとも１つに基づくフィルタを使用して完了した印刷要求を表示することができる請求項５４に記載のシステム。
【請求項５６】
管理Ｗｅｂページにより、管理者は管理者によって入力された複数の検索条件に対する応答として生成されるフィルタを使用して完了した印刷要求を表示することができる請求項５４に記載のシステム。
【請求項５７】
発信デバイスのユーザがターゲット・プリンタでソース・データを印刷できるようにする方法であって、
発信デバイスにデータを送り、ユーザがその発信デバイスから印刷するソース・データを選択し、ターゲット・プリンタを識別するためのユーザ・インターフェイスを表示できるようにすることと、
発信デバイスからソース・データを受信し、ソース・データをプリント・サーバに供給することと、
ソース・データがプリンタ・ファイルを含むかどうかを判別し、もし含めば、ソース・データをプリンタ・スプーラにサブミットすることと、
プリント・スプーラの出力をターゲット・プリンタに送ることを含む方法。
【請求項５８】
ユーザ・インターフェイスを生成するために送られるデータについて、プリント・サーバと通信するためにリンクされ動作するＷｅｂサーバにより処理されるＷｅｂページが用意される請求項５７に記載の方法。
【請求項５９】
コンピューティング・マシンによって実行されたときに発信デバイスのユーザがユーザによって選択されたソース・データに関係するターゲット・プリンタにハードコピー出力を印刷することを可能にする複数の機械語命令が格納される機械読み取り可能媒体であって、その際に、
Ｗｅｂサーバから発信デバイスへのＷｅｂベース・データを処理し、ユーザ・インターフェイスを発信デバイスに表示し、前記ユーザ・インターフェイスは対話型コントロールを備え、ユーザは印刷するソース・データを選択し、ハードコピー出力を印刷するために選択するプリンタのリストからターゲット・プリンタを識別するオペレーションと、
Ｗｅｂサーバで発信デバイスからのソース・データを受信するオペレーションと、
ソース・データをプリント・サーバに受け渡すオペレーションと、
ソース・データがプリンタ・ファイルを含むかどうかを判別し、もし含めば、ソース・データをプリンタ・スプーラにサブミットするオペレーションと、
プリント・スプーラの出力をターゲット・プリンタに送るオペレーションが実行される機械読み取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的には、コンピュータによる印刷に関するものであり、特に、発信デバイスがプリンタ・デバイス・ドライバをロードしなくても、さまざまなネットワーク経由で各種の発信デバイスが選択したプリンタに印刷を出力することができるシステムと方法に関するものである。
【背景技術】
【０００２】
通常、ドキュメントをプリントアウトするには、印刷する前に、パーソナル・コンピュータ（ＰＣ）、ラップトップ・コンピュータ、パーソナル・デジタル・アシスタント（ＰＤＡ）、ポケットＰＣなどの発信デバイスにプリンタ・デバイス・ドライバをロードしておく必要がある。プリンタ・デバイス・ドライバはオペレーティング・システム（ＯＳ）と特定のプリンタとの間に抽象インターフェイスを用意しており、これにより、オペレーティング・システム（およびこのＯＳ上で実行されるアプリケーション）は、このＯＳによってサポートされているプリンタと、テキスト、グラフィック、およびレイアウトの共通コマンド・セットを使用して通信できる。したがって、開発者はそのアプリケーションで使用できるさまざまなプリンタの特定のオペレーションを（一般に）気にせずにアプリケーションを開発することができる。これらの特定のオペレーションは、プリンタ・デバイス・ドライバと組み合わせてＯＳによって処理される。
【０００３】
今日のモバイル・ビジネス環境では、ビジネスマンは本社から離れる状況に置かれることが多く、しかも近くにあるプリンタや１つまたは複数のドキュメントの送り先である取引相手の近くにある選択したプリンタでドキュメントをプリントアウトできなければならない。一般に、プリンタに出力するには、２つのことが実行される必要がある。まず、ドキュメント・ファイルを格納する（またはドキュメント・ファイルにアクセスするのに使用できる）モバイル・コンピューティング・デバイスをリンクさせ、送信先プリンタと通信する必要がある。この作業は、通常、プリンタにアクセスするためのネットワークに接続するか、またはプリンタ・ケーブル（例えば、シリアル・ケーブル、パラレル・ケーブル、またはＵＳＢケーブル）でプリンタに直接接続することにより実行することができる。多くの場合、これらの接続方法は、実用的あるいは利用可能な解決策とはいえない。例えば、多くのビジネス・プリンタはネットワークに接続するように設計されており、管理者は、プリンタ・ケーブルを介して発信モバイル・コンピューティング・デバイスにプリンタを接続することにより自分が使っているネットワーク接続が中断されることを望まない。さらに、プリンタが接続されるネットワークは、管理者が「外部」コンピュータの接続を許可しないプライベート・ネットワークである場合がある。
【０００４】
前記の問題の残り半分は、プリンタ・デバイス・ドライバに関するものである。上述のように、モバイル・コンピューティング・デバイスがプリンタに出力するためには、適切なプリンタ・デバイス・ドライバをモバイル・コンピューティング・デバイスにロードしなければならない。一般に、独自の種類のプリンタ毎に特定のデバイス・ドライバが必要になる（類似のプリンタ製品群内の独自モデルであっても）。これらのドライバは、ロードする時間がかかり、格納領域を占有し、モバイル・コンピューティング・デバイス上で他のアプリケーションとのソフトウェア・コンフリクトを引き起こすことがある。さらに、ビジネスマンは、必要なドライバにアクセスできない場合もある。場合によっては、ＯＳを最初にインストールした際に使用した媒体に適切なプリンタ・ドライバを利用できるが、このような媒体は一般に、オフィスから離れるときに携帯するものではない。多くの場合、プリンタはＯＳのリリース後に販売されたモデルを含んでおり、そのため、適切なドライバをロードする方法としては、プリンタに付属している特定のデバイス・ドライバを用意することしかない。インターネットを介して特定のドライバをダウンロードできないと、ビジネスマンは運の悪いことに、出力先プリンタを介して印刷する手だてがなくなる。
【発明の開示】
【課題を解決するための手段】
【０００５】
本発明は、さまざまなネットワークを介してさまざまなオペレーティング・システムが稼働するさまざまな発信デバイス間で交信し、発信デバイスに印刷用デバイス・ドライバをロードすることなく発信デバイスが「ドライバレス」プリント・サーバ・システムを介してドキュメントを印刷することができるシステムと方法を提示する。サーバ・システムでは、テーブル駆動型メカニズムを使用して、発信デバイスのオペレータが印刷したいドキュメントに関係するさまざまなソフトウェア・アプリケーションにより生成されるさまざまなプリンタ・イベントを処理し、取り扱う。出力は、さまざまネットワークを介して、選択したターゲット・プリンタに送られる。サーバ・システムは、サーバと発信デバイスとの間の双方向通信だけでなく、サーバとターゲット・プリンタとの間の双方向通信にも対応する。
【０００６】
通常の実装では、ＰＣ、ラップトップ、ＰＤＡ、ポケットＰＣ、携帯電話などの発信デバイスを操作しているユーザが、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）オペレーティング・システムが稼働しているデバイス用のＩｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ、Ｎｅｔｓｃａｐｅ  ＮａｖｉｇａｔｏｒなどのＷｅｂブラウザや、発信デバイスで使用されているＯＳに固有のＷｅｂブラウザを介してドライバレス・プリント・サーバ（ＤＰＳ）システムにアクセスする。適切なＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を入力することにより、ユーザは１つまたは複数のＤＰＳプリンタをサポートするＷｅｂサイトに接続することができる。その後、ユーザは、発信デバイスに格納されている、または発信デバイスを通じて（例えば、ドキュメントが格納されているストレージ・デバイスへのネットワーク接続を介して）アクセスできるドキュメントまたはイメージを選択し、ターゲット・プリンタを選択し、ターゲット・プリンタを介してドキュメントの印刷を要求することができる。オプションにより、ユーザは印刷対象のＷｅｂ  ＵＲＬを選択することができる。印刷要求にはさらに、印刷部数、用紙の種類、１ページ当たりの片面複数ページ印刷の色、カラーまたは白黒などの印刷オプションを含めることができる。
【発明を実施するための最良の形態】
【０００７】
本発明の前述の態様およびその結果の利点の多くは、添付の図面に関して、以下の詳細な説明を参照することにより容易に理解できるため明白であろう。
【０００８】
発信デバイスを操作するユーザが発信デバイスに印刷用デバイス・ドライバをロードすることなく「ドライバレス」プリント・サーバ（ＤＰＳ）システムを介してドキュメント、イメージ、Ｗｅｂページを印刷できるシステムおよび方法について詳述する。以下の説明では、本発明の実施形態を完全に理解できるように、多くの具体的詳細事項を開示している。ただし、当業者であれば、本発明が、具体的な詳細事項が１つまたは複数取りあげられていなくても、あるいは他の方法、コンポーネントなどを使用していたとしても、実施できることを理解するであろう。他の例では、よく知られている構造または動作については、本発明のさまざまな実施形態の態様をわかりにくくしないために詳しく示していないか、あるいは詳しく説明していない。
【０００９】
この明細書全体を通して一実施形態または実施形態を参照した場合、その実施形態と関連して説明している特定の機能、構造、または特性が本発明の少なくとも１つの実施形態に含まれる。したがって、本明細書全体のさまざまな場所に「一実施形態では」または「実施形態では」という語句が出現しても、必ずしもすべて同じ実施形態を指しているわけではない。さらに、特定の機能、構造、または特性を１つまたは複数の実施形態において適当な方法により組み合わせることができる。
【００１０】
用語
以下の説明では、ドライバレス・プリント・サービスを実装し、それにより発信デバイスがプライベート・ネットワークとパブリック・ネットワークの両方でターゲット・プリンタに出力するドキュメントをサブミットできるようにする本発明による実施形態を開示する。開示されている実施形態では、以下の用語を使用している。
サーバ：ネットワーク上でアクセス可能なソフトウエアを実行するコンピュータ。
Ｗｅｂサーバ：クライアントおよびサーバ・コンピュータとの間でハイパーテキスト伝送プロトコル（ＨＴＴＰ）を使用してハイパーテキスト・マークアップ言語（ＨＴＭＬ）ファイル、共通ゲートウェイ・インターフェイス（ＣＧＩ）データ、およびデータ・ファイルを送信するクライアント・コンピュータと通信するコンピュータまたはサーバ上で実行されているソフトウェア・プログラム。
Ｗｅｂブラウザ：ネットワーク上でリソースを取得するおよびポストするソフトウェア・アプリケーション及びコンテンツの描画を行うソフトウェア・アプリケーション。
ＵＲＬ（Ｕｎｉｖｅｒｓａｌ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）：ネットワーク上のリソースのＨＴＴＰアドレス文字列。これは、通常、Ｗｅｂページまたはドキュメント・ファイルである。
ソース・データ：このドキュメント内のソース・データは、取り出してデバイスに出力することができるドキュメントまたは媒体を意味する。サポートされている入力データ形式には、ドキュメント・プロセッサでサポートしている種類の大部分（例えば、ＰＤＦ、ＰｏｓｔＳｃｒｉｐｔ、Ｍｉｃｒｏｓｏｆｔ  Ｗｏｒｄ）、Ｗｅｂ  ＵＲＬリンク、電子メール、または電子メール添付ファイルがあるがそれに限定されない。
ジョブ要求：これは、処理され、出力デバイスに送信される、ユーザがシステムにサブミットする要求のことである。
ジョブ・ステータス：これは、要求処理の現在の進捗状況を示すジョブ要求のステータスのことである。これは、ユーザがジョブ要求のステータスを理解すること、またシステム管理者がそれらを管理することを補助するためのメカニズムである。
プリンタ：電子データ・ストリームを受け取って、紙などの媒体にイメージを作成するハードウェア・デバイス（例えば、ドキュメントのハードコピー出力）。
Ｗｉｎｄｏｗｓプリンタ：Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓオペレーティング・システムでは、プリンタはプリンタ・ドライバ、プリント・プロセッサ、言語モニタ、およびポート・モニタの組み合わせに名前を付けたものとして定義される。
スプール・ファイル：ＭＳ  Ｗｉｎｄｏｗｓプリンタ・ドライバによって作成されるプリンタ言語ファイル。このファイルの内容が直接プリンタに送られて印刷される。
インターネット印刷プロトコル（ＩＰＰ）：ネットワークで接続されているプリンタにスプール・ファイルを送信し、ネットワークで接続されているプリンタから印刷ジョブ・ステータスを取得するためのＨＴＴＰに似たプロトコル。
ライン・プリンタ・リモート（ＬＰＲ）：スプール・ファイルをネットワークで接続されているプリンタにサブミットするためのプロトコル。
【００１１】
インフラストラクチャの概要
本発明の実施形態に対応するネットワーク・インフラストラクチャ１０の概要が図１に示されている。ネットワーク・インフラストラクチャ１０は、ラップトップ・コンピュータ１２および１４、ＰＤＡ  １６、および携帯電話１８をはじめとする、４つの発信デバイスを示している。発信デバイスは、ＰＣ、ワークステーション、ラップトップ・コンピュータ、ＰＤＡ、ポケットＰＣ、携帯電話、無線双方向ページャ（例えば、Ｂｌａｃｋｂｅｒｒｙデバイス）、およびＷｅｂ  ＴＶアプライアンスなど、ネットワーク・ブラウザを介してコンピュータ・ネットワークにアクセスすることができる任意のデバイスを含むことができることは理解されるであろう。発信デバイスはそれぞれ、ドライバレス・プリント・サーバ・サイトによってサポートされているターゲット・プリンタにアクセスすることができ、またネットワーク接続を介して発信デバイスと通信するようにリンクすることができる。図１に示されているこのようなターゲット・プリンタとして、ＰｏｓｔＳｃｒｉｐｔプリンタ２２、ＡＳＣＩＩプリンタ２４、Ｈｅｗｌｅｔｔ−Ｐａｃｋａｒｄ（ＨＰ）レーザー・プリンタ２６、２８、および３０、ＩＢＭレーザー・プリンタ３２および３４、およびプロッタ３６がある。一般に、ターゲット・プリンタとしてはどのような種類のプリンタまたはプロッタでも使用することができる。したがって、図１のプリンタおよびプロッタは、説明のみを目的としており、本発明により実装できるプリンタの種類を制限する意図はない。
【００１２】
それぞれのターゲット・プリンタは、ドライバレス・プリント・サーバ・コンピュータ３８、４０、４２、および４４により示されているように、ドライバレス・プリント・サーバ・コンピュータに接続される。ドライバレス・プリント・サーバ・コンピュータは、ＰＣ、ワークステーション、ラップトップ、またはコンピュータ・サーバなどのコンピューティング・デバイス上で動作する一組のＤＰＳソフトウェア・モジュール４６（ここでは、ドライバレス・プリント・サーバまたはドライバレス・プリント・サーバ・ソフトウェアとも呼ばれる）を備える。以下で詳しく説明するように、ドライバレス・プリント・サーバ・ソフトウェアをＷｅｂサーバ４８と組み合わせることにより、発信デバイスがＤＰＳソフトウェアのホストとなり、そのソフトウェアによりサポートされているコンピューティング・デバイスと通信するためリンクされているプリンタに出力する際に使用するインターフェイスを実現する。一般に、Ｗｅｂサーバ４８は、ドライバレス・プリント・サーバ・コンピュータ３８、４０、および４４で示されているようにＤＰＳソフトウェアと同じデバイス上で実行するか、または当業者であれば理解するように、Ｗｅｂサーバ・コンピュータ５０などの別のマシン上で実行することもできる。
【００１３】
グルーピング・ブラケット５２で示されているように、ラップトップ・コンピュータ１２、ドライバレス・プリント・サーバ・コンピュータ３８、およびプリンタ２０、２４、および２６は、ホテル５４などの通常の物理的な場所に配置されていることが示されている。通常の「歓待」実装では、ホテル、空港、コピーセンターなどの印刷サービス・プロバイダは、発信デバイスをＬＡＮ５６などの歓待サイトにより提供されるドライバレス・プリント・サーバおよび関連するプリンタに接続するためにローカル・エリア・ネットワーク（ＬＡＮ）を設置することができる。この場合、Ｗｅｂサーバ４８はイントラネット・サイトとして機能する。他の場合には、発信デバイスはインターネット５８経由でドライバレス・プリント・サーバ・コンピュータに接続できる。これらの場合、Ｗｅｂサーバ４８は、１つまたは複数の対応するインターネットＷｅｂサイトをサポートするインターネットＷｅｂサーバとして機能する。
【００１４】
図１に示されているように、通常のＤＰＳサイトはさらに、オフィスとホーム・サイトも含む。ＤＳＰホスト・コンピュータがモバイル・コンピュータを含むような場合、ＤＰＳサイトを、適切なネットワーク接続が用意されている任意の場所に置くことができる。
【００１５】
ＰＤＡ１６や携帯電話１８などの無線デバイスの場合、無線デバイスは通常、インターネット５８を介してＷｅｂサイトに無線でアクセスできるようにするサービス・プロバイダ・データ・センター６２を含むセルラー・ネットワーク６０を介してインターネットに接続する。無線インターネット・リンクを確立するために使用されるセルラー・キャリアにより提供されるサービスに応じて、変換サービスを介してＷｅｂナビゲーションをサポートするか、または直接無線デバイス・サポートを必要とすることがある。例えば、米国では、ＷＡＰ（無線アプリケーション・プロトコル）対応無線デバイスは通常、ＷＭＬおよび／またはＨＤＭＬ（無線デバイス用に設計されたＨＴＭＬの一種である無線マークアップ言語）を介してデータを受信するように設計されているブラウザを備える。アジアでは、ｉモード・デバイスは、ｃＨＴＭＬと呼ばれるＨＴＭＬの一変種を使用している。通常の変換サービスが、指定されたＷｅｂサイト向けにＨＴＭＬを解析し、サイト・ナビゲーションを行うのに適したＷＭＬを生成し、ＷＡＰ対応のデバイスでＷｅｂサイトをブラウズできるようにする。さらに、ＷＡＰおよび／またはｉモード・デバイスを直接サポートするＷｅｂサイトも増えてきており、変換サービスなしで無線デバイスによりこれらのサイトをブラウズすることができる。
【００１６】
本発明を実装するソフトウェア・コンポーネントの一実施形態の詳細な説明が図２に示されている。ソフトウェア・コンポーネントは、論理的に、セットアップ・コンポーネント１００、ドキュメント処理コンポーネント１０２、および管理コンポーネント１０４を含む３つのグループに分けられる。これらのコンポーネントはそれぞれさらに、複数のソフトウェア・アプリケーション、スクリプト、コンポーネント、および／またはモジュールを含む。「セットアップ」コンポーネント１００は、「プリント・セットアップ」モジュール１０６と「アカウント・ウィザード」モジュール１０８を備える。「ドキュメント処理」コンポーネント１０２は、コンシューマＷｅｂページ、ＣＧＩスクリプト１１２、「ドライバレス・プリント・サーバ」モジュール４６、ポート・モニタ１１４、ステータス・モニタ１１６、「電子メール」モジュール１１８、および「プレビュー」モジュール１２０を含む。「管理者」コンポーネント１０４は、システム・モニタ１２２、「管理（制御パネル）」Ｗｅｂページ１２４、「自動拡張」モジュール１２６、および「自動更新」モジュール１２８を含む。
【００１７】
一実施形態では、「プリント・セットアップ」モジュール１０６は、システムで使用するＷｉｎｄｏｗｓプリンタの構成を変更するためシステム管理者によって実行されるＭｉｃｒｏｓｏｆｔ（ＭＳ）Ｗｉｎｄｏｗｓアプリケーションを含む。このアプリケーションを使用して、既存のプリンタの変換、新規プリンタのインストール、またはプリンタの削除を行うことができる。既存のプリンタの変換では、既存のプリンタのインストールを行い、ＭＳ  Ｗｉｎｄｏｗｓのポート・モニタによって提供されるオペレーションをポート・モニタ１１４で置き換える。ポート・モニタ１１４を使用することで、ＤＰＳシステムによりスプール・ファイルを操作し、これによりステータス・モニタ１１６はスプール・ファイルを選択したターゲット・プリンタに送信することができる。
【００１８】
プリント・セットアップ・モジュール１０６は、新規プリンタを適切なプリンタ・デバイス・ドライバとともにインストールする場合にも使用できる。例えば、管理者はプリンタのＰｏｓｔＳｃｒｉｐｔプリンタ記述（ＰＰＤ）ファイルを使用しＡｄｏｂｅ  ＰｏｓｔＳｃｒｉｐｔ”ドライバをインストールしてＤＰＳシステムで使用することによりＰｏｓｔＳｃｒｉｐｔプリンタをセットアップすることができる。管理者がＰＤＤを用意できれば、「プリント・セットアップ」モジュールは、ＰｏｓｔＳｃｒｉｐｔドライバをインストールし、ＤＰＳシステムで使用できるように構成する。他の場合、管理者は新しいプリンタの適切なプリンタ・デバイス・ドライバ・ソフトウェアを用意する。
【００１９】
「プリント・セットアップ」モジュール１０６はさらに、プリンタの削除にも使用できる。このような場合、Ｗｉｎｄｏｗｓポート・モニタをシステムのポート・モニタとして復元するか、または選択したプリンタのＤＰＳサーバのサポートを完全に削除することができる。
【００２０】
「アカウント・ウィザード」モジュール１０８は、セキュリティを一組の「管理コントロール・パネル」Ｗｅｂページ・ファイルに適用し、管理者のログインによりどのＷｅｂページ・セットにアクセスできるかを決定する。一実施形態では、システムは、モニタ、マネージャ、および管理レベルを含む３つの管理レベルを実装する。一実施形態では、アカウント・ウィザードはこれら３つのグループをＭＳ  Ｗｉｎｄｏｗｓユーザ・グループとして作成する。さらに、アカウント・ウィザードは、ＭＳ  Ｗｉｎｄｏｗｓユーザ・アカウントを作成して、それらを管理ユーザ・グループの１つに置く。一実施形態では、「アカウント・ウィザード」モジュール１０８は、ＭＳ  Ｗｉｎｄｏｗｓアプリケーションである。
【００２１】
「コンシューマ」Ｗｅｂページ１１０は、発信デバイス上で動作するブラウザを介してコンシューマ・ユーザ（つまり、発信デバイスのオペレータ）用のユーザ・インターフェイスを備える。一実施形態では、「コンシューマ」Ｗｅｂページは、Ｗｅｂブラウザによって表示される標準ＨＴＭＬ  Ｗｅｂページを含む。他の実施形態では、「コンシューマ」Ｗｅｂページ１１０は、無線ＰＤＡおよび携帯電話などのＷＡＰおよびｉモード対応無線デバイスをサポートするＷＭＬ、ＨＤＭＬ、またはｃＨＴＭＬページを含む。
【００２２】
一実施形態では、「コンシューマ」Ｗｅｂページは、「ファイルを印刷」ページ、「Ｗｅｂページを印刷」ページ、「印刷ジョブ・ステータス」ページ、「サポートされているファイル・タイプ」ページ、および「ヘルプ／サポート」ページを含む。「ファイルを印刷」ページに対応する「コンシューマ」Ｗｅｂページ１３０の例が図３に示されている。「コンシューマ」Ｗｅｂページ１３０は、「ファイルを印刷」タブ１３２、「Ｗｅｂページを印刷」タブ１３４、「マイ・プリント・ステータス」タブ１３６、「詳細」タブ１３８、および「終了」タブ１４０を含む、対応するＷｅｂページへのナビゲーションを行うための複数のタブを備えている。
【００２３】
図３に示されているように、「コンシューマ」Ｗｅｂページ１３０では、「ファイルを印刷」タブ１３２が選択されている。したがって、Ｗｅｂページには、コンシューマ・ユーザが選択したファイルを印刷するための入力コントロールが含まれている。これらのコントロールには、「ラストネーム」編集ボックス１４２、「プリンタ選択」プルダウン・コントロール１４４、「部数」編集ボックス１４６、「ファイルを選択」編集ボックス１４８、「参照」ボタン１５０、および「今すぐ印刷」ボタン１５２が含まれる。コンシューマ・ユーザは、自分のラストネームを「ラストネーム」編集ボックス１４２に入力し、プルダウン・コントロール１４４でプリンタを選択し、「部数」コントロール１４６で部数を入力する。名前は、追跡のために使用し、プルダウン・コントロールに表示されるプリンタのリストは指定されたＤＰＳサイトによってサポートされているプリンタに対応する。コンシューマは、印刷したいドキュメントに対応するファイル名を「ファイルを選択」編集ボックス１４８に入力するか、または「参照」ボタン１５０をアクティブにすると、従来のＭＳ  Ｗｉｎｄｏｗｓの「参照」ダイアログボックスが表示され、コンシューマは発信デバイスまたは発信デバイスがネットワーク経由で接続されているストレージ・デバイス上のディレクトリを参照することによりファイルを選択することができる。すべてのコントロールに適切な情報が入ったら、コンシューマは「今すぐ印刷」ボタン１５２をアクティブにし、選択したまたは入力したドキュメントを選択したプリンタで印刷することを要求する。「成功」ページ（図に示されていない）がブラウザに表示され、その要求が正しく受信されたかどうかを示す。
【００２４】
「Ｗｅｂページを印刷」タブ１３４をアクティブにすると、「コンシューマ」Ｗｅｂページ１５４が、図４に示されているように描画される。前述のように、コンシューマは、自分のラストネームを編集ボックス１５６に入力し、プルダウン・コントロール１５８でプリンタを選択し、編集ボックス１６０に必要な部数を入力する。コンシューマは、印刷したいＷｅｂページのＵＲＬを編集ボックス１６２に入力して、「今すぐ印刷」ボタン１６４をアクティブにし、選択したプリンタにＷｅｂページを印刷するよう要求する。また、「成功」ページがブラウザに表示され、その要求が正しく受信されたかどうかを示す。
【００２５】
ユーザは、図５に示されている「コンシューマ」Ｗｅｂページ１６６を表示する「マイ・プリント・ステータス」タブ１３６をアクティブにすることにより要求した印刷ジョブのステータスを確認する。Ｗｅｂページ１６６は、印刷ジョブ名１６８、プログレス・バー１７０、および印刷ステータス１７２など、さまざまなプリント・ステータス情報を表示する。必要ならば、コンシューマ側で、「キャンセル」ボタン１７４をアクティブにすることによりジョブを取り消すことができる。
【００２６】
「詳細」タブ１３８をアクティブにすると、図６に示されている「コンシューマ」Ｗｅｂページ１７６が描画される。「コンシューマ」Ｗｅｂページ１７６には、「サポートされているファイル・タイプ」タブ１７８、「チュートリアル」タブ１８０、「頻繁に尋ねられる質問（ＦＡＱ）」タブ１８２、および「バージョン情報」タブ１８４など複数の「追加」タブが用意されている。図に示されているＷｅｂページでは、「サポートされているファイル・タイプ」タブ１７８がアクティブになっている。「サポートされているファイル・タイプ」タブをアクティブにすると、そのファイル・タイプに関する情報および対応するファイル説明が「ファイル・タイプ説明」ボックス１８６および「ファイル・タイプ拡張子」ボックス１８８に表示される。一般に、ファイル・タイプのリストは、Ｗｅｂサイトに対応するＤＰＳサーバにロードされる特定のアプリケーションによって異なる。場合によっては、特定のアプリケーションに用に特別なプリント・サービス・アプリケーションを用意することで、実際のアプリケーションをＤＰＳサーバにロードしなくて済むようにしている。例えば、ＡｕｔｏＣａｄファイルは、ＤＰＳサーバ上にＡｕｔｏＣａｄアプリケーションのコピーが存在している必要のないサードパーティ製プリント・サービス・アプリケーションを介して印刷することができる。
【００２７】
「チュートリアル」タブ１８０をアクティブにすると、チュートリアル情報を提示するＷｅｂページが描画される。同様に、「ＦＡＱ」タブ１８２をアクティブにすると、ＤＰＳサービスおよび各質問に対する回答への対応するハイパーリンクの使い方に関するさまざまな頻繁に尋ねられる質問を含む「ＦＡＱ」ページが表示される。
【００２８】
ＣＧＩスクリプト１１２は、高度な機能を持つ「コンシューマ」および「管理パネル」Ｗｅｂページを提供する。ＣＧＩスクリプトの詳細な説明が図７に示されている。「印刷ジョブをキャンセル」ＣＧＩスクリプト１９０を使用して、印刷ジョブ要求をシステムから削除する。「コンシューマ」Ｗｅｂページから、「印刷ジョブ・ステータス」Ｗｅｂページに表示されている印刷ジョブに関してスクリプトを呼び出すことができる。「管理コントロール・パネル」Ｗｅｂページからは、システムにサブミットされたが、プリンタに送信されるスプール・ファイルをまだ用意していない印刷ジョブについてスクリプトを呼び出すことができる。
【００２９】
「自動拡張構成」ＣＧＩスクリプト１９２が、サーバ・コンピュータ内のインストール済みアプリケーションをサーチし、見つかったアプリケーションでサポートできるドキュメント・タイプを発見し、発見されたファイル・タイプの印刷ジョブ要求を実行するようにシステムを構成する。このＣＧＩスクリプトの結果は、「サポートされているファイル・タイプ」Ｗｅｂページ（例えば、図６のＷｅｂページ１７６）に表示される。「システム更新」ＣＧＩスクリプト１９４を使用して、インストール済みシステム・コンポーネントと最新の利用可能なコンポーネントとを比較し、新しいコンポーネント（該当する場合）をダウンロードし、システムにインストールする。
【００３０】
「印刷要求」ＣＧＩスクリプト１９６は、「コンシューマ」Ｗｅｂページからドキュメント・ファイル、グラフィック・イメージ・ファイル、またはＵＲＬを入力として受け取り、システムに対する印刷ジョブ要求を作成する。「ジョブ・キュー」ＣＧＩスクリプト１９８は、システムから印刷ジョブ要求キューを読み取り、そのリストをスクリプトの呼び出し側Ｗｅｂページに返す。「ＣＧＩをプレビュー」ＣＧＩスクリプト２００は、「コンシューマ」Ｗｅｂページからドキュメント・ファイル、グラフィック・イメージ・ファイル、またはＵＲＬを入力として受け取り、「印刷要求」ＣＧＩスクリプトのようにシステム上で印刷ジョブ要求を作成する。しかし、「プレビュー」ＣＧＩスクリプトが呼び出されると、システムは、ドキュメント、イメージ、またはＷｅｂページを、印刷のためプリンタに送信するのではなく、コンシューマ・ユーザのＷｅｂブラウザで表示できる形式に変換する。ドキュメント、イメージ、またはＷｅｂページの「プレビュー」ＣＧＩスクリプトを２度目に呼び出して、プレビュー済みアイテムをプリンタに送信するようシステムに指令を出すことができる。
【００３１】
「リセット」ＣＧＩスクリプト２０２は、システム・アプリケーションを閉じて、再度起動する。このスクリプトは、発生したと思われるプログラム・エラーをクリアするために最後の手段としてシステム管理者によって使用される。「ステータス」ＣＧＩスクリプト２０４は、印刷ジョブ要求の進行状況が示される「コンシューマおよび管理コントロール・パネル」Ｗｅｂページを表示する。「電子メール・トリガ」スクリプト２０６は、「電子メール」モジュール１１８に、アカウントに対するメッセージが到着したことを通知する。「電子メール」モジュール１１８は、この情報を使用して、メッセージを取り出し、印刷ジョブ要求に変換する。
【００３２】
ドライバレス・プリント・サーバ４６によって実装されるコンポーネントが図８に示されている。ドライバレス・プリント・サーバは、システムの主要ソフトウェア・コンポーネントである。これは、ジョブ要求を受け付け、その要求をキューに入れ、要求から最終印刷までのドキュメント、イメージ、またはＵＲＬの印刷プロセスを指令するＤＰＳサーバ・コンピュータ上で実行されるアプリケーションを備えている。ドライバレス・プリント・サーバは、「ファイル・タイプ構成」リスト２０８、「ブラウザ印刷」コンポーネント２１０、「補助的アプリケーション印刷」コンポーネント２１２、「シェル拡張印刷」コンポーネント２１４、「印刷プレビュー」コンポーネント２１６、「ジョブ要求サーバ」コンポーネント２１８、「ジョブ処理」コンポーネント２２０、「ウィンドウ処理」コンポーネント２２４、および「ジョブ・ステータス」コンポーネント２２６を備える。
【００３３】
「ファイル・タイプ構成」リスト２０８は、ドライバレス・プリント・サーバによって保持される。構成リストには、ファイル・タイプ毎に、拡張子とそのファイル・タイプを印刷するために使用する方法が記述される。「補助的アプリケーション印刷」コンポーネント２１２側で印刷方法を用意している場合、リストには、印刷に使用されるアプリケーションへのパス、アプリケーションが印刷に使用するメニュー・コマンド、およびアプリケーションがアプリケーションを閉じるために使用するメニュー・コマンドが含まれる。
【００３４】
「ブラウザ印刷」コンポーネント２１０は、ドライバレス・プリント・サーバが印刷に使用する３つの方法のうち１つを備える。一実施形態では、このコンポーネントは、Ｍｉｃｒｏｓｏｆｔ  Ｉｎｔｅｒｎｅｔ  Ｅｘｐｌｏｒｅｒ（ＩＥ）Ｗｅｂブラウザによって提供されるアプリケーション・プログラミング・インターフェイス（ＡＰＩ）を使用する。コンポーネントは、ＩＥ  ＡＰＩを使用して、ドライバレス・プリント・サーバ・アプリケーション上のウィンドウ内でブラウザを実行する。ＵＲＬを印刷するために、ドライバレス・プリント・サーバは用意されているナビゲーション・プログラミング・インターフェイスを使用してＷｅｂページをウィンドウにロードする。ページがロードされた後、コンポーネントはＩＥの用意されている印刷プログラミング・インターフェイスを使用して、印刷をインスタンス化する。
【００３５】
ＤＰＳサーバ・コンピュータ上のＩＥブラウザ・インスタンスがドキュメントまたはイメージ・ファイルの要求されたタイプに対するブラウザ・プラグインを使用するように構成されている場合、この方法を使用して、ドキュメントおよびイメージ・ファイルを印刷することができる。例えば、Ａｄｏｂｅ  Ａｃｒｏｂａｔ”用のＩＥプラグインについて考察する。Ａｄｏｂｅ  Ａｃｒｏｂａｔドキュメント・ファイルはＰＤＦ拡張子を持つ。Ａｃｒｏｂａｔプラグインがサーバ・コンピュータ上にインストールされている場合、ＩＥのナビゲーション・プログラミング・インターフェイスにより、ＰＤＦファイルをＩＥにロードすることができ、ＩＥの印刷プログラミング・インターフェイスにより、ファイルを印刷することができる。
【００３６】
「補助アプリケーション印刷」コンポーネント２１２は、ドライバレス・プリント・サーバが印刷に使用する他の方法を備える。このコンポーネントでは、「ファイル・タイプ構成」リスト２０８を使用してファイル拡張子と関連するアプリケーションを見つけ、ファイルをアプリケーションにロードし、アプリケーションに対して印刷メニュー・コマンドを実行し、印刷オペレーションの完了後、アプリケーションを閉じる。「ファイル・タイプ構成」リストと「補助的アプリケーション印刷」方法の組み合わせにより、システム管理者は、サーバ・マシン上にアプリケーションをインストールし、「ファイル・タイプ構成」リストを編集することにより、追加ドキュメントまたはイメージ・タイプのサポートを追加することができる。
【００３７】
「シェル拡張印刷」コンポーネント２１４は、ドライバレス・プリント・サーバが印刷に使用する第３の方法を備える。このコンポーネントは、ＭＳ  Ｗｉｎｄｏｗｓ  Ｓｈｅｌｌ  Ｅｘｔｅｎｓｉｏｎｓプログラミング・インターフェイスを使用して印刷する。ＭＳ  Ｗｉｎｄｏｗｓ  Ｓｈｅｌｌ  Ｅｘｔｅｎｓｉｏｎｓインターフェイスは、ユーザがそのドキュメント・タイプをサポートするアプリケーションに送られるコマンドでドキュメント・タイプを印刷するためのオペレーティング・システム機能である。アプリケーションがＳｈｅｌｌ  Ｅｘｔｅｎｓｉｏｎインターフェイスをサポートしている場合、アプリケーションはドキュメントをロードし、印刷し、そして自動的に閉じる。「ファイル・タイプ構成」リストと「シェル拡張印刷」方法の組み合わせにより、システム管理者は、サーバ・マシン上にアプリケーションをインストールし、「ファイル・タイプ構成」リスト２０８を編集することにより、追加ドキュメントまたはイメージ・タイプのサポートを追加することができる。
【００３８】
「印刷プレビュー」コンポーネント２１６は、コンシューマ・ユーザが要求したドキュメント、イメージ、またはＵＲＬの例を表示できるように、印刷ジョブ要求ドキュメント、イメージまたはＵＲＬをドキュメント形式ファイルに変換する。このコンポーネントは、「プレビュー」ＣＧＩスクリプト２００と連携して動作する。ドライバレス・プリント・サーバが実行する変換の１つは、Ａｄｏｂｅ  Ａｃｒｏｂａｔドキュメント形式に関するものである。「印刷プレビュー」コンポーネントを使用することで、ドライバレス・プリント・サーバは、印刷用スプール・ファイルを作成する場合と同じ方法によりスプール・ファイルを作成する。しかし、プリンタに送信するためスプール・ファイルをステータス・モニタ１１６に送信する代わりに、ドキュメントをＡｃｒｏｂａｔ  ＰＤＦ形式に変換するＡｄｏｂｅ  Ａｃｒｏｂａｔ  Ｄｉｓｔｉｌｌｅｒアプリケーションを通じてスプール・ファイルを実行する。この変換では、プリンタ・ドライバはＡｄｏｂｅ  ＰｏｓｔＳｃｒｉｐｔドライバである必要がある。ドライバレス・プリント・サーバは、プレビュー・プロセスで作成したスプール・ファイルを保持し、コンシューマ・ユーザがドキュメントの印刷を望んだ場合に、ＤＰＳはスプール・ファイルをステータス・モニタ１１６に単に送信し、印刷のためプリンタに送信することができる。
【００３９】
「ジョブ要求サーバ」コンポーネント２１８は、「印刷要求」ＣＧＩスクリプト１９６から印刷ジョブ要求を受け取って、処理されるようにキューに入れる。
【００４０】
「ジョブ処理」コンポーネント２２０は、スプール・ファイルがプリンタに送信されるまで、ジョブ・キューへの挿入からの印刷ジョブ要求を管理する。このコンポーネントは、キューに入っているジョブ要求を読み取り、印刷に使用する３つの印刷方法のうちの１つを決定し、ドキュメント、イメージ、またはＵＲＬを決定された印刷方法にサブミットし、印刷コマンドの実行を処理し、スプール・ファイルを印刷のためステータス・モニタにサブミットする。印刷処理の各段階で、ステータスを追跡し、実行できる「ステータス」ＣＧＩスクリプト２０４呼び出しを利用できるようにする。
【００４１】
「ウィンドウ処理」コンポーネント２２４を使用して、信頼できる印刷を行う。多くのアプリケーションが、印刷プロセスの実行中にメッセージ・ボックスおよび／またはダイアログボックスを表示し、印刷サービスを要求しているユーザに情報を提供したり印刷サービスを要求しているユーザから情報を収集したりする。印刷要求の自動処理をサポートするために、要求を印刷するために使用されるアプリケーションにメッセージ・ボックスまたはダイアログボックスが表示された場合にそれらのメッセージ・ボックスまたはダイアログボックスに応答するメカニズムが必要である。このメカニズムは、「ウィンドウ処理」コンポーネント２２４によって提供される。ドライバレス・プリント・サーバが、印刷プロセス実行中にメッセージ・ボックスおよびダイアログボックスが表示されないかサーバを監視している。新しいメッセージ・ボックスまたはダイアログボックスが表示されると、「ウィンドウ処理」コンポーネントがその情報を読み込み、知られているメッセージまたは知られているステートメントと比較し、そのプログラムされているロジックに従ってメッセージ・ボックスまたはダイアログボックスを閉じる。「ウィンドウ処理」コンポーネントの詳細について、図１９を参照しながら以下で説明する。
【００４２】
各ドライバレス・プリント・サーバ・キュー内にすべてのジョブのメモリマップ済みファイルを保持する「ジョブ・ステータス」コンポーネント２２６が用意される。周期的に、ジョブ・ステータス情報をメモリマップ済みファイルに書き込むことで、「ステータス」ＣＧＩスクリプトがジョブ要求のステータスを読み込めるようにしている。
【００４３】
ポート・モニタは、ＭＳ  Ｗｉｎｄｏｗｓ印刷サブシステム内の標準コンポーネントを含む。ポート・モニタは、印刷サブシステムを介してプリンタ・ドライバからスプールされたデータを受け取る。従来のポート・モニタは、プリンタ・ドライバからスプールされたデータを受け取り、プリンタに引き渡す役割が与えられている。ドライバレス・プリント・サーバ・システムでは、「ポート・モニタ」モジュール１１４（図２）がスプールされているデータをファイルに書き込む。スプール・ファイル全体がファイルに書き込まれると、「ポート・モニタ」モジュール１１４がドライバレス・プリント・サーバに、スプールされたファイルの名前と所在をメッセージとして送る。
【００４４】
ステータス・モニタ１１６は、サーバ・コンピュータ上で実行されるアプリケーションを含む。これは、複数の機能を実行するが、主にスプール・ファイルをプリンタに送信する役割を持つ。ドライバレス・プリント・サーバがポート・モニタ１１４からスプール・ファイルの所在を示すメッセージを受け取った後、ドライバレス・プリント・サーバがスプール／ファイルの場所、スプール・ファイルの送信先プリンタのＵＲＬ、スプール・ファイルをプリンタに送信するためのプロトコル情報を示すメッセージをステータス・モニタ１１６に送信する。ステータス・モニタ１１６は、それぞれの要求されたプリンタＵＲＬのキューを作成する。プリンタは、一度に１つのスプール・ファイルしか受け取れないので、スプール・ファイルの送信をシリアライズする。ステータス・モニタ１１６は、複数のキューを同時に作成し維持することができる。
【００４５】
スプール・ファイルがプリンタに正常に送信された後、ステータス・モニタ１１６はドライバレス・プリント・サーバに、ジョブが完了していることをメッセージで知らせる。ジョブ履歴が更新され、ドライバレス・プリント・サーバ・キューからジョブが削除される。ステータス・モニタ１１６は、スプール・ファイルをプリンタに送信する前後にメッセージを外部システムに送信するように構成することができる。外部システムの一例として、この情報を使用して料金を客の請求書に付けることができるホテルの請求システムがある。
【００４６】
「電子メール」コンポーネント１１８は、プリンタ用の仮想電子メール・アドレスを作成する。コンシューマ・ユーザは、電子メールをプリンタに送信して、電子メールの内容を印刷させる。「電子メール」コンポーネント１１８は、サーバ・コンピュータ上で実行されるアプリケーションを含む。一実施形態では、「電子メール」コンポーネント１１８は、ＰＯＰ３（Ｐｏｓｔ  Ｏｆｆｉｃｅ  Ｐｒｏｔｏｃｏｌ  ３）電子メール・サーバを使用して、電子メール・メッセージを取り出し、ドライバレス・プリント・サーバ・キューに挿入する。本質的に、「電子メール」コンポーネントは、電子メール・アカウントとＤＰＳサーバ・コンピュータとの間の接続を行う。電子メール・コンポーネント内にアカウントを設定するには、プリンタに使用する電子メール・アカウントのＰＯＰ３サーバＵＲＬ、ユーザ名、およびパスワードを入力し、その後、電子メール・アカウントに使用するドライバレス・プリント・サーバのプリンタに入力する。
【００４７】
電子メール・コンポーネント１１８は、ポーリングおよびトリガードの２つの動作モードを持つ。ポーリング・モードを使用する場合、ＰＯＰ３電子メール・サーバに電子メール・メッセージが届いていないか定期的にチェックする。トリガード・モードを使用する場合、「電子メール・トリガ」ＣＧＩスクリプト２０６が電子メール・コンポーネントにメッセージが届いていることを通知したときに、ＰＯＰ３電子メール・サーバにメッセージが届いていることをチェックする。新規電子メール・メッセージが届いている場合、電子メール・コンポーネント１１８はＰＯＰ３サーバから、添付ファイルを含む電子メール・コンテンツをダウンロードする。電子メールのテキストと電子メール内の各添付ファイルについて印刷ジョブ要求がシステム上に作成される。送信の通知は、印刷ジョブ要求が行われたとき、また電子メールの内容全体が印刷を終えたときに、電子メールの返信の形式で返される。
【００４８】
システム・モニタ・コンポーネント１２２は、他のすべてのシステム・コンポーネントを監視し、エラーがないか調べ、特定の要求の着信を待つアプリケーションを備える。印刷ジョブ要求が「印刷要求」ＣＧＩスクリプト１９６から届くと、ドライバレス・プリント・サーバ・アプリケーションが動作していない場合、「印刷要求」ＣＧＩスクリプトは、システム・モニタ１２２がドライバレス・プリント・サーバを起動し、印刷ジョブ要求を実行するよう要求することができる。システム・モニタ１２２は、定期的に、メッセージをドライバレス・プリント・サーバに送信し、プログラムおよびキュー内の印刷ジョブのステータスを取得する。システム・モニタは、エラーを検出すると、この問題をクリアする。
【００４９】
システム・モニタ１２２はさらに、より新しいシステム・コンポーネントをダウンロードし、インストールする場合にも使用できる。システム内のすべてのコンポーネントのバージョン番号を収集し、それらをシステムの「更新」Ｗｅｂサイトに送信する。「更新」Ｗｅｂサイトは、新しいコンポーネントが利用できるかどうかについての情報で返信する場合、これらのコンポーネントを取り出して、システムにインストールする。システム・モニタは、メニューから、または「システムを更新」ＣＧＩスクリプト１９４から更新要求を受け付ける。
【００５０】
「管理」Ｗｅｂページ１２４では、管理ユーザがシステムのリモート構成および監視を実行できる。セキュリティ機能は、コンシューマ・ユーザによるこれらのＷｅｂページへのアクセスを防止する場合に使用する。「管理パネル」Ｗｅｂページ２２８の例が図９に示されている。「管理パネル」Ｗｅｂページ２２８は、「ジョブを印刷」タブ２３０、「バージョン情報」タブ２３２、「ファイル・タイプ」タブ２３４、「コンシューマ問い合わせ先」タブ２３６、「プリンタ管理」タブ２３８、および「構成」タブ２４０などの複数の最上位タブを備え、これにより、これらのタブに対応する「管理」Ｗｅｂページへのナビゲーションを行う。
【００５１】
「ジョブを印刷」タブ２３０をアクティブにすると、下位のタブ群が図９に示されているように描画される。これらには、「プリント・キューを表示」タブ２４２、「日付別リスト」タブ２４４、「所有者別リスト」タブ２４６、「プリンタ別リスト」タブ２４８、「すべてのジョブ」タブ２５０、および「詳細検索」タブ２５２がある。図９に示されているように、「プリント・キューを表示」タブ２４２をアクティブにすることで、管理者は、プルダウン・コントロール２５４で選択したプリンタの保留印刷ジョブを表示することができる。保留印刷ジョブは、テキスト・ボックス２５６に表示され、キュー内のジョブの個数はテキスト・ボックス２５８に表示される。「詳細」ボタン２６０をアクティブにすると、管理者は選択した印刷ジョブの詳細を確認することができる。
【００５２】
「日付別リスト」タブ２４４、「所有者別リスト」タブ２４６、「プリンタ別リスト」タブ２４８、および「すべてのジョブ」タブ２５０をアクティブにすると、管理者は、選択した特定のタブに関係する印刷ジョブの履歴を表示することができる。例えば、「日付別リスト」タブ２４４をアクティブにすると、管理者は図１０に示されている「管理者パネル」Ｗｅｂページ２６２に示されているように、選択した日付範囲に関して指定されたドライバレス・プリント・サーバのすべての印刷ジョブを表示することができる。その後、管理者は、編集ボックス２６４および２６６を介して開始日と終了日の値を入力して、「ｇｏ」ボタン２６８をアクティブにし、取り出す日付範囲内のすべての印刷ジョブのレコードを要求する。１ページ当たりの結果の数は、プルダウン・コントロール２７０を使用して選択することができ、レコード間のナビゲーションは、一組のナビゲーション・コントロール２７２により有効にされる。各レコードには、開始時刻、所有者、ドキュメント名、印刷ステータス、終了時刻、印刷ページ数、料金合計、所有者アドレス、およびプリンタ・アドレスに関する情報が含まれる。
【００５３】
「所有者別リスト」タブ２４６をアクティブにすると、管理者は、図１１の「管理パネル」Ｗｅｂページ２７４に示されているように、特定の所有者にサブミットされるすべてのジョブに関する情報を表示することができる。所有者とは、ユーザの名前、ユーザがジョブをサブミットしたときに居た部屋の部屋番号、または誰からジョブがサブミットされたかあるいはどこからサブミットされたかを示す他のインジケータのいずれかである。所有者情報を、編集ボックス２７６に入力する。その後、管理者は、「ｇｏ」ボタン２７８をアクティブにして、その所有者に対応するレコードを取り出す。上述のように、１ページ当たりの結果の数は、対応するコントロール（図には示されていない）により選択することができ、またレコード間のナビゲーションは、ナビゲーション・コントロール・セット２８０により有効にされる。
【００５４】
「プリンタ別リスト」タブ２４８をアクティブにすると、管理者は、図１２の「管理パネル」Ｗｅｂページ２８２に示されているように、選択したプリンタについて完了したすべてのジョブを表示することができる。印刷ジョブ履歴が必要なプリンタのＩＤをプルダウン・コントロール２８４により選択し、その後、「ｇｏ」ボタン２８６がアクティブになるとその応答として対応するレコードが取り出される。１ページ当たりの結果の数は、プルダウン・コントロール２８８を使用して選択することができ、レコード間のナビゲーションは、ナビゲーション・コントロール・セット２９０により実行できる。
【００５５】
「すべてのジョブ」タブ２５０をアクティブにすると、管理者は、図１３の「管理パネル」Ｗｅｂページ２９２に示されているように、特定のドライバレス・プリント・サーバを通じて印刷されるすべてのジョブに関係する情報を表示することができる。上述のように、１ページ当たりの結果の数は、対応するコントロール（図には示されていない）により選択することができ、またレコード間のナビゲーションは、一組のナビゲーション・コントロール２９４により有効にされる。
【００５６】
「詳細検索」タブ２５２をアクティブにすると、管理者は、図１４の「管理パネル」Ｗｅｂページ２９６に示されているように、さまざまな入力値に基づいて選択されるジョブに関係する情報を表示することができる。検索の日付範囲は、「開始日」編集ボックス２９８および「終了日」編集ボックス３００を使用して入力する。プルダウン・コントロール３０２を介して、プリンタまたは複数のプリンタを選択することができる。プリンタの所有者をブロック３０４の中で指定できる。所有者が指定されていなければ、検索はすべての所有者について実行される。プルダウン・コントロール３０６を介してサイト識別を選択できる。プルダウン・コントロール３０８を介して、１ページ当たりの結果を選択することができる。管理者が並べ替えの対象となる列を定義するためのプルダウン・コントロール３１０が用意されている。一対のラジオ・ボタン３１２により、並べ替え順を昇順または降順のいずれかとして定義することができる。目的の値を入力し、選択した後、管理者は「ｇｏ」ボタン３１４で検索を開始することができる。前の検索パラメータ・セットを取り出すには「前へ」ボタン３１６をアクティブにし、さまざまな検索パラメータに対する値をデフォルト値にリセットするには、「リセット」ボタン３１８をアクティブにする。
【００５７】
「ファイル・タイプ」タブ２３４をアクティブにすることにより、管理者は、図１５のＷｅｂページ３２０に示されているように、ドライバレス・プリント・サーバによって印刷することができるドキュメントおよびイメージ・ファイルのファイル・タイプを表示かつ／または編集することができる。各種のファイル・タイプ・レコードのナビゲーションは、「編集」コントロール・セット３２２と「編集」コントロール・セット３２４により実現されている。プルダウン・コントロール３２６を介して、１ページ当たりのレコード数を選択することができる。特定のファイル・タイプに対する値を編集したい場合、管理者は、該当する行内の「編集」ボタン３２８をアクティブにすることで、「値」列内の値を編集できるようになる。これらの列には、「拡張子」列、「アプリケーション」列、および「有効化」列、「方法」列、「ＴｏＬａｕｎｃｈ」列、「ＴｏＰｒｉｎｔ」列、「ＴｏＣｌｏｓｅ」列、および「静的」列がある。ファイル・タイプの拡張子は、「拡張子」列に入力する。対応するアプリケーションまたはアプリケーションのタイプの名前（例えば、「ｉｍａｇｉｎｇ」）を「アプリケーション」列に入力する。アプリケーションを起動するファイル・パスは、「ＴｏＬａｕｎｃｈ」列に入力する。アプリケーションから印刷し、アプリケーションを閉じる内部コマンドは、それぞれ「ＴｏＰｒｉｎｔ」列および「ＴｏＣｌｏｓｅ」列に入力することができる。指定された行に対応するファイル・タイプ・マッピング情報は、「削除」列内の該当するチェックボックスをオンにし、「削除」ボタン３２９をアクティブにすることにより削除することができる。
【００５８】
「構成」タブ２４０をアクティブにすることで、管理者は、ドライバレス・プリント・サーバ・インストールを更新しその動作を構成することができる。図１６に示されているように、「構成」タブをアクティブにすると、「更新」タブ３３２、「拡張子」タブ３３４、および「ジョブ・アカウンティング・サーバ」タブ３３５などの、３つの追加タブを備えるＷｅｂページ３３０がロードされる。「拡張子」タブ３３４をアクティブにすると、Ｗｅｂページ３３０に対応する「拡張子」Ｗｅｂページが起動する。
【００５９】
印刷のためファイルをサブミットすると、ドライバレス・プリント・サーバがファイルのファイル・タイプに対応するアプリケーションを開く。例えば、ファイルの拡張子が．ｄｏｃであれば、一般的にＭＳ  Ｗｏｒｄアプリケーションが開く。次に、アプリケーションはファイルを開き、組み込みの印刷コマンドを使用して、サブミットされているファイル選択したプリンタに送信する。「拡張子」Ｗｅｂページ（つまり、Ｗｅｂページ３３０）に、（「拡張子」列内の）ファイル・タイプ情報の一覧を表示する行（エントリ）および（「アプリケーション名」列内の）ファイル・タイプに対応するソフトウェア・アプリケーションが表示される。また、それぞれのエントリには、拡張子の優先度レベル（サブミットされたファイルに対する適切なアプリケーションを決定するため同じ拡張子を持つファイル・タイプを評価する順序を定義する）、アプリケーションに関するＯＳレジストリ情報の格納先を識別するレジストリ・ロケーション、アプリケーションのデフォルト・パス、アプリケーション用実行可能名、およびアプリケーションを印刷しアプリケーションを閉じるための内部コードが表示される。管理者は、「新規エントリを追加」ボタン３３６をアクティブにして新規ファイル・タイプを追加し、Ｗｅｂページ３３０（図に示されていない）の各列の対応する編集コントロールでＷｅｂページを描画することができる。「ファイル・タイプを更新」ボタン３３８をアクティブにするとその応答として類似のＷｅｂページが表示され、この場合のみ、編集コントロールに、更新対象の選択したファイル・タイプに関係する値が埋められる。ファイル・タイプの更新は、さらに、「編集」ボタン３４０をアクティブにしても開始することができる。前述のように、レコード間のナビゲーションは、一組のナビゲーション・コントロール３４２により有効にされる。
【００６０】
ドライバレス・プリント・サーバでは、ファイル・タイプの値に対応する拡張子テーブルを使用して、拡張子テーブルに列挙されている各ファイル・タイプのファイルの印刷に使用するサーバ・コンピュータ上にインストールされているアプリケーションを決定する。さらに、このテーブルに含まれる情報を使用して、サーバ・コンピュータ上の実行可能ファイルの場所を判別する。一実施形態では、拡張子テーブルおよび他のさまざまな構成および印刷ジョブ・データがデータベース内に保持される。通常、データベースは、ＤＰＳソフトウェアのホストとなるマシンと同じマシンをホストとするが、当業者であれば理解できるであろうが、データベースのホストとして別のマシンを使用することもできる。
【００６１】
印刷要求の処理
印刷要求に対するデータの流れとＤＰＳシステム・ソフトウェア・コンポーネントにより実行される動作が図１７に示されている。最初に、発信デバイス３５０のユーザがドライバレス・プリント・サーバＷｅｂサイト（または該当する場合にはイントラネット・サイト）のＵＲＬを発信デバイスのブラウザに入力してコンシューマ・ユーザ印刷Ｗｅｂページ（例えば、図１３の「コンシューマ」Ｗｅｂページ１３０）をロードする。ユーザは、上述のようにドキュメント、イメージ、またはＷｅｂページを印刷するための適切な情報を入力する。入力された情報は、Ｗｅｂサーバ３５３として示されているシステムのＷｅｂサーバ・コンポーネントにより処理される「コンシューマ」ＷｅｂページにあるＡＳＰコントロールなどのメカニズム（例えば、ｊａｖａｓｃｒｉｐｔ、Ｖｂｓｃｒｉｐｔなど）によって有効にされる。ユーザ入力データは、ユーザ入力３５２として示されており、Ｗｅｂサーバ３５３を介して受信し、最初に、「印刷要求」ＣＧＩスクリプト１９６により処理され、その要求に対応する印刷パラメータおよびその他のデータが格納されているｔｍｐｄｏｃ．ｄｐｓｎドキュメント３５４が生成される。その後、Ｔｍｐｄｏｃ．ｄｐｓｎドキュメントは、「印刷要求」ＣＧＩスクリプトにより、ジョブ・キュー３５６に送られる。一実施形態では、ジョブ・キューは先入れ先出し（ＦＩＦＯ）型のジョブ・キューを含む。オプションにより、他の種類のジョブ・キューも使用することができるが、このことは、当業者であれば理解するであろう。上述のように、ジョブ・キュー・オペレーションはジョブ処理コンポーネント２２０により実行される。
【００６２】
ジョブ・キューがサブミットしたジョブ要求は、システムによって処理されることになる。それぞれの要求は、ドキュメント・ファイル３６０に格納されている印刷要求に対応する印刷ジョブ・パラメータを取り出すためにｔｍｐｄｏｃ．ｄｐｓｎファイルが解析されるブロック３５８により処理される。例えば、解析された情報には、プリンタの選択、部数、コンシューマ・ユーザのＩＤ、ドキュメント名などが含まれる。印刷ジョブ・パラメータの一部は、ＤＰＳデータベース３８６に格納される。
【００６３】
決定ブロック３６２で、どのような種類のドキュメントの印刷が要求されたか、例えば、アプリケーション・ファイルなのか、イメージなのか、ＷｅｂページＵＲＬなのかが判別される。ドキュメントがＷｅｂページ、イメージ、またはＰＤＦファイルなどの参照可能なドキュメントに関係する場合、ロジックの流れはブロック３６４に入り、そこで、Ｗｅｂページ、イメージ、またはＰＤＦドキュメントがドライバレス・プリント・サーバのブラウザを介してロードされる。そうでない場合、ロジックの流れはブロック３６６に入り、そこで、ドキュメントおよびドキュメントの印刷に使用することができる適切な補助アプリケーションがロードされる。例えば、ドキュメントがＭＳ  Ｅｘｃｅｌスプレッドシートを含む場合、ＭＳ  Ｅｘｃｅｌアプリケーションのインスタンスが、Ｅｘｃｅｌドキュメントとともに、ロードされる。ブロック３６８では、ブラウザまたは補助アプリケーションのいずれかにより、ＵＲＬ、イメージ、またはドキュメントを印刷することを要求する印刷オペレーションを要求するユーザをシミュレートする内部コマンドが生成される。例えば、ほとんどのアプリケーションでは、アプリケーションの印刷プロセスを起動する「ファイル」→「印刷」メニュー・オプションを備えている。
【００６４】
内部アプリケーションまたはブラウザの印刷要求への応答として、さまざまな印刷およびドキュメント情報が内部的に、プリンタ・オペレーションを処理するオペレーティング・システム・コンポーネントに受け渡される。上述のように、一実施形態では、ドライバレス・プリント・サーバは、ＭＳ  Ｗｉｎｄｏｗｓ  ＯＳ環境で動作する。したがって、この環境は、ターゲット・プリンタ３７４に送られて出力ドキュメントを生成する適切なプリンタ（つまり、出力デバイス）データを生成する選択したプリンタに対応するプリンタ・デバイス・ドライバ３７２と対話とするグラフィカル・デバイス・インターフェイス（ＧＤＩ）コンポーネント３７０を含むＯＳ印刷サブシステム３６９を備える。プリンタ・データは、ポート・モニタ１１４によって受信される印刷スプール・ファイルを出力するＭＳ  Ｗｉｎｄｏｗｓ印刷スプーラ・コンポーネント３７６によって内部的に処理される。図に示されている例では、ターゲット・プリンタ３７４としてＰｏｓｔＳｃｒｉｐｔプリンタが使用されると仮定している。したがって、ポート・モニタ１１４はＰｏｓｔＳｃｒｉｐｔファイル３７８を出力する。
【００６５】
上述の動作が進行している間、発信デバイス３５０のユーザは、ソース・ドキュメントを印刷する前に、ドキュメント、イメージ、またはＷｅｂページのシミュレートされた印刷済み出力をプレビューすることを選択できる。決定ブロック３８０で、ユーザがプリンタ出力をプレビューする要求をしたかどうかが判別される。答えが「はい」（ＴＲＵＥ）であれば、一実施形態ではＡｄｏｂｅ  Ａｃｒｏｂａｔ  Ｄｉｓｔｉｌｌｅｒ３８２のインスタンスが起動され、これを使用してＡｄｏｂｅポータブル・ドキュメント形式（ＰＤＦ）ドキュメント３８４が生成される。ＰＤＦドキュメントは、「プレビュー」ＣＧＩスクリプト２００によって処理され、Ｗｅｂサーバ３５３を介して発信デバイス３５０に送り返され、そこでＡｄｏｂｅ  ＰＤＦプラグインを介して発信デバイス上で実行されているブラウザに表示される。描画された表示（図に示されていない）は、ドキュメントの印刷結果を確認するためのプレビューとして使用でき、またコンシューマ・ユーザがドキュメントの印刷またはキャンセルを選択できるようにするユーザ・インターフェイス（ＵＩ）コントロールが配置されている。
【００６６】
コンシューマ・ユーザがドキュメントを印刷することを望んでいる場合、印刷通知がＷｅｂサーバ３５３に送り返され、そこで「プレビュー」ＣＧＩスクリプト２００により処理される。印刷通知を受け取ったことへの応答として、「プレビュー」ＣＧＩスクリプト２００はステータス・モニタ１１６を起動し、印刷ドキュメント３７８をターゲット・プリンタ３７４にサブミットする。このイベントとともに、ＤＰＳデータベース３８６内のジョブ履歴情報が更新される。
【００６７】
コンシューマ・ユーザによって「印刷プレビュー」オプションが選択されていない場合、決定ブロック３８０に対する答えは、「いいえ」（ＦＡＬＳＥ）であり、ステータス・モニタ１１６が起動し、印刷ドキュメント３７４がターゲット・プリンタ３７４にサブミットされる。印刷プロセス中、ステータス・モニタ１１６はプロセスの進捗状況を監視し、ＤＰＳデータベース３８６を更新する。「ステータス」ＣＧＩスクリプト２０４を使用し、データベースから進捗情報を取り出して、進捗情報を図５のＷｅｂページ１６６に示されているようなＷｅｂページに表示する適切なＨＴＭＬを生成することにより、Ｗｅｂページ印刷ステータス情報を提供する。
【００６８】
一実施形態では、ドライバレス・プリント・サーバはプリンタ・ファイルの直接印刷をサポートしている。例えば、印刷ジョブ・ファイルがプリンタ・ファイルを含む場合、ターゲット・プリンタのプリンタ・ファイルに対応していれば、直接印刷することができる。例えば、ＰｏｓｔＳｃｒｉｐｔファイルをＰｏｓｔＳｃｒｉｐｔプリンタに出力することができる。同様に、他の種類のプリンタのプリンタ・ファイルが、印刷プロセスで「ファイルへ保存」オプションを選択することによりすでに作成されている場合がある。決定ブロック３６２でファイルがプリンタ・ファイルであると判別された場合、ロジックはブロック３６７に進み、そこで、プリンタ・ファイル（プリンタ・ファイル３６９によって示されている）は直接、Ｗｉｎｄｏｗｓ印刷スプーラ３７６に送信される。
【００６９】
ドライバレス・プリント・サーバ・ソフトウェア４６の内部オペレーションの詳細は、図１８に示されている。上述のように、発信デバイス３５０を動作させるコンシューマ・ユーザは、それぞれ「コンシューマ」Ｗｅｂページ１３０および１５４を介して、ドキュメントまたはイメージ・ファイルまたはＷｅｂページをプリンタに出力することを要求する。適切な「コンシューマ」Ｗｅｂページ上の「今すぐ印刷」ボタンをアクティブにすることに対する応答として、ユーザ入力データが「印刷要求」ＣＧＩスクリプト１９６により処理され、ｔｍｐｄｏｃ．ｄｐｓｎドキュメント３５４が作成される。「印刷要求」ＣＧＩスクリプトはさらに、パイプで、印刷要求が含まれるメッセージを新規ジョブ・パイプ・サーバ３９０に送り込み、メッセージをメッセージ・キュー３９２に格納する。印刷要求メッセージ毎に、メッセージ・キュー・ハンドラ３９４が、対応するｔｍｐｄｏｘ．ｄｐｓｎドキュメント３５４を解析する対応するスレッドを起動し、ドキュメント・ファイル３６０を生成し、印刷ジョブをジョブ・キュー３５６にサブミットする。
【００７０】
「ジョブ・キュー・ループの起動」ブロック３９６と「ジョブ・キュー・ループの終了」ブロック３９７に示されているように、これらのループ端の間に表示される以下のオペレーションおよびロジックが印刷ジョブに対して実行される。まず、ブロック３９８で、次のジョブがジョブ・キュー３５６から取り出される。決定ブロック４００で、印刷ジョブがどのような種類のドキュメントに対応しているかが判別される。ドキュメントがアプリケーション・ファイルの場合、ロジックは決定ブロック４０２に進み、そこで、印刷方法としてどのような種類のファイル・タイプを使用すべきかが判別される。ファイルが補助アプリケーション（例えば、ＭＳ  Ｗｏｒｄ、ＭＳ  Ｅｘｃｅｌ、ＡｕｔｏＣａｄなど）を必要とする場合、ロジックはブロック３６６に進み、そこで、上で説明したように、ドキュメントおよび適切な補助アプリケーションがロードされる。補助アプリケーションにファイルがロードされたら、ファイル印刷コマンドをブロック３６８内に内部的に生成し、前のように、ファイルをサブミットしＯＳによる印刷に任せる。
【００７１】
次に、決定ブロック４０４で、「完了」メッセージがポート・モニタ１１４から届いたかどうかが判別される。この判別は、定期的に、またはソフトウェアの割り込みメカニズムにより、「完了」メッセージが受信されるまで実行される。その後、ブロック４０６でステータス・モニタ１１６が起動し、印刷ドキュメント３７８をターゲット・プリンタ３７４に送信し、ＤＰＳデータベース３８６内のジョブ履歴データが前のように更新される。
【００７２】
決定ブロック４００および４０２に戻り、ドキュメント・タイプがＷｅｂページであるか、または補助アプリケーション（例えば、ＰＤＦドキュメントまたはさまざまな種類のイメージ・ファイル）なしでドライバレス・プリント・サーバ・コンピュータにより直接印刷することができるファイル・タイプの場合、ロジックはブロック３６４に進み、そこで、ＤＰＳコンピュータのブラウザでそのＷｅｂページのＵＲＬにナビゲートするか、またはブラウザを他の方法で使用し、ＰＤＦファイルまたはイメージ・ファイルを表示する。表示されると、上述の方法で残りの印刷オペレーションが実行されるが、これはブロック３６８から始まる。上述のように、ドキュメント・タイプがプリンタ・ファイルの場合、ドキュメントは直接、Ｗｉｎｄｏｗｓ印刷スプーラ３７６に送られる。
【００７３】
「ウィンドウ処理」コンポーネント２２４によって実行されるロジックおよびオペレーションを説明する流れ図が図１９に示されている。図１７の「開始」ブロック４５０に示されているように、「ウィンドウ処理」スレッドが決定ブロック３６２の始め、およびブロック３６８で印刷アクションが呼び出された直後に起動される。上述のように、「ウィンドウ処理」コンポーネントを使用して、アプリケーションをロードするとき、ドキュメントをアプリケーションにロードするとき、印刷アクションを開始するとき、印刷プロセス中などに起動することができるさまざまなダイアログボックスおよびメッセージ・ボックスを処理する。
【００７４】
図１９の流れ図に戻ると、「ウィンドウ処理」スレッドは、起動後、ブロック４５２で調べなければならないデスクトップ・ウィンドウがまだあるかどうか判別する。このようなウィンドウは、一般に、ダイアログボックスとメッセージ・ボックスを備える。調べるべきウィンドウがもうなければ、スレッドは、「スレッドの終了」ブロック４５４に示されているように終了する。調べるべきウィンドウがまだあれば、ロジックはブロック４５６に進み、ウィンドウのウィンドウ情報を取得する。ＭＳ  Ｗｉｎｄｏｗｓオペレーティング・システムでは、ウィンドウ情報を取得するには、適切なＷｉｎｄｏｗｓ  ＡＰＩコールを実行する。
【００７５】
次に、決定ブロック４５８で、ウィンドウが描画アプリケーションの子ウィンドウかどうかを判別する（つまり、補助アプリケーションまたはブラウザで生成されたか）。決定が「いいえ」ならば、ウィンドウはその描画アプリケーションに対応せず、ロジックは決定ブロック４５２に進み、次のウィンドウを評価する。決定ブロック４５８に対する答えが「はい」（ＴＲＵＥ）ならば、ロジックはブロック４６０に進み、ウィンドウのテキストおよびコントロール・ボタンが調べられる。
【００７６】
決定ブロック４６２によって判別されると、テキストが標準メッセージ文字列に一致する場合、ロジックはブロック４６４に進み、そこで、「ウィンドウを閉じる」コマンドが内部的に与えられ、ユーザがウィンドウ上の「閉じる」ボタンまたはウィンドウのフレーム内の「ウィンドウを閉じる」アイコンをアクティブにする動作をエミュレートする。その後、ロジックは決定ブロック４５２に戻り、次のウィンドウを処理する。
【００７７】
テキストが標準メッセージ文字列に一致しない場合、決定ブロック４６２に対する答えは「いいえ」（ＦＡＬＳＥ）であり、ロジックは決定ブロック４６６に進み、そこで、テキストがＤＰＳデータベース３８６内のウィンドウ処理テーブル４７０に格納される対応するエントリ・リストＭｅｓｓａｇｅＴｅｘｔ値と一致するか判別される。一致する値がある場合、ロジックはブロック４６８に進み、そこで、一致するＭｅｓｓａｇｅＴｅｘｔ値の行内のデータを取り出し、データによって与えられるパラメータに基づき対応するメッセージをＷｉｎｄｏｗｓ  ＡＰＩに発行することによりテーブル・コマンドを実行する。例えば、通常のエントリ・リストの行４７２は、図４７２の上に表示される。行には、ＭｅｓｓａｇｅＩＤ、Ｗｐａｒａｍ、およびＬｐａｒａｍ値を含む、Ｗｉｎｄｏｗｓ  ＡＰＩに関係する情報が格納される。これらのパラメータを使用して、ウィンドウを処理する目的のオペレーションを実行するため対応するＡＰＩを呼び出す。テーブル・コマンドが実行されると、あるいは決定ブロック４６６に対する答えが「いいえ」（ＦＡＬＳＥ）であれば、ロジックは決定ブロック４５２に戻り、次のウィンドウの処理を開始する。
【００７８】
前記の説明および付属の図面では、ＭＳ  Ｗｉｎｄｏｗｓオペレーティング・システム・コンポーネントが備えるソフトウェアのオペレーションを実施する本発明の実施形態が開示されていた。本発明の原理および教示はＵＮＩＸ（登録商標）ベースのオペレーティング・システムやＬＩＮＵＸベースのオペレーティング・システムなどの他のオペレーティング・システムが使用される場合にも適用できるため、これは制限することを意味しない。例えば、さまざまなＵＮＩＸおよびＬＩＮＵＸオペレーティング・システムは、上で説明したＭＳ  Ｗｉｎｄｏｗｓ印刷サポート・コンポーネント（例えば、Ｗｉｎｄｏｗｓ  ＧＤＩ、プリント・スプーラ、プリント・ドライバなど）と類似するオペレーションを実現するＯＳカーネル・コンポーネントによってサポートされているグラフィカル・ユーザ・インターフェイス、アプリケーションＡＰＩ、および印刷機能を備える。
【００７９】
ファイル・サーバ・コンピュータ・システムの例
図２０を参照すると、一般的に従来型であるコンピュータ・サーバ５００が説明されており、これは、本発明を実践することと関連して使用するのに適しており、別のコンピュータがＷｅｂサーバ・オペレーションの実行に使用されるＤＰＳサーバ・コンピュータおよびＷｅｂサーバ・コンピュータに使用することができる。これらの目的に適していると考えられるコンピュータ・システムの例として、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ、ＵＮＩＸベース、およびＬＩＮＵＸベースのオペレーティング・システムが稼働するコンピュータ・サーバが挙げられる。
【００８０】
コンピュータ・サーバ５００は、一般的に、当業者であればよく知っているように、１つまたは複数のプロセッサ５０４およびメモリ（例えば、ＤＩＭＭまたはＳＩＭＭ）５０６を搭載する、適切な集積回路が配置されているマザーボード（図に示されていない）上に取り付けられているシャシ５０２を備える。モニタ５０８は、コンピュータ・サーバによって実行されるソフトウェア・プログラムおよびプログラム・モジュールにより生成されたグラフィックスおよびテキストを表示するために含まれる。マウス５１０（またはその他のポインティング・デバイス）は、シャシ５０２の背面のシリアル・ポート（またはバス・ポートまたはＵＳＢポート）に接続され、マウス５１０からの信号がマザーボードに伝達され、これにより、コンピュータ上で実行されるソフトウェア・プログラムおよびモジュールによりディスプレイ上のカーソルを制御し、モニタ５０８に表示されるテキスト、メニュー・オプション、およびグラフィック・コンポーネントを選択することができる。さらに、キーボード５１２は、ユーザがコンピュータ上で実行されるソフトウェア・プログラムの実行に影響を及ぼすテキストおよびコマンドを入力できるようにマザーボードに結合されている。コンピュータ・サーバ５００は、さらに、サーバがネットワーク５１６を介してデータを送受信できるようにするネットワーク・インターフェイス・カード（ＮＩＣ）５１４または同等の回路がマザーボード内に組み込まれている。
【００８１】
本発明に対応するファイル・システムのストレージは、シャシ５０２内部に収納されている複数のハード・ディスク５１８および／またはマザーボードに組み込まれているＳＣＳＩカード５２２または同等のＳＣＳＩ回路を介してアクセスできる外部ディスク・アレイ５２０内に収納されている複数のハード・ディスクを介して実装することができる。オプションにより、ディスク・アレイ５２０は、適切なＦｉｂｒｅ  Ｃｈａｎｎｅｌインターフェイス・カード（図に示されていない）または組み込み回路を使用してＦｉｂｒｅ  Ｃｈａｎｎｅｌリンクを使用してアクセスすることができる。
【００８２】
コンピュータ・サーバ５００は、一般に、ディスク上にある実行可能ファイルおよびデータを読み取りメモリ５０６および／またはハード・ディスク５１８上のストレージに転送できるようにＣＤ−ＲＯＭディスクを挿入できるコンパクト・ディスク読み取り専用メモリ（ＣＤ−ＲＯＭ）ドライブ５２４を備える。同様に、フロッピー（登録商標）・ドライブ５２６をそのような目的のために備えることができる。光記録媒体またはＤＶＤドライブなどの他の大容量メモリ・ストレージ・デバイスも備えることができる。上で説明した本発明のオペレーションをプロセッサ２０４に実行させるソフトウェア・プログラム、コンポーネント、およびモジュールを含む機械語命令は、通常、フロッピー・ディスク５２８またはＣＤ−ＲＯＭ５３０（またはその他のメモリ媒体）で配布するか、または１つまたは複数のハード・ディスク５１８上に格納しておき、プロセッサ５０４によって実行するときにメモリ５０６にロードする。オプションにより、ネットワーク５１６を介して機械語命令を搬送波ファイルとしてロードすることもできる。
【００８３】
本発明は本発明を実践する好ましい形態およびその修正と関連して説明したが、当業者であれば、請求項の範囲内で本発明に他の多数の修正を加えられることは理解できるであろう。したがって、本発明の範囲はいかなる形でも上記説明の制限を受けないものとし、その代わりに、請求項を全体的に引用することにより決定されるものとする。
【図面の簡単な説明】
【００８４】
【図１】さまざまな発信デバイスのユーザが「ドライバレス」プリント・サーバ（ＤＰＳ）システムを介して選択したターゲット・プリンタにドキュメントを印刷することができる、ターゲット・プリンタに対応するプリンタ・デバイス・ドライバを発信デバイス上にロードする必要がない、本発明の一実施形態によるインフラストラクチャの例の概略図である。
【図２】本発明の一実施形態によるＤＰＳシステムが備えるオペレーションを実現するために使用されるさまざまなソフトウェア・コンポーネントを示す概略ブロック図である。
【図３】ユーザがファイルを印刷するため選択することができる発信デバイス上のブラウザを介して描画されるＷｅｂページを表す図である。
【図４】ユーザがＷｅｂページを印刷するため選択することができる発信デバイス上のブラウザを介して描画されるＷｅｂページを表す図である。
【図５】ユーザがＤＰＳシステムを介してすでに送信されている印刷要求に関係するステータス情報を表示することができる発信デバイス上のブラウザを介して描画されるＷｅｂページを表す図である。
【図６】ユーザが与えられたＤＰＳサイトによりサポートされているさまざまなファイル・タイプを表示することができる発信デバイス上のブラウザを介して描画されるＷｅｂページを表す図である。
【図７】コンシューマおよび管理者ユーザとの対話を可能にするためＤＰＳシステムに使用されるさまざまなＣＧＩスクリプトを示す概略ブロック図である。
【図８】本発明の一実施形態によるドライバレス・プリント・サーバ・ソフトウェアに対応するさまざまなソフトウェア・コンポーネントを示す概略ブロック図である。
【図９】与えられたＤＰＳサイトに関してプリント・キュー情報を管理者が表示できるようにするためＤＰＳサーバ上のブラウザまたは管理者ユーザが使用するクライアント・デバイスを介して描画されるＷｅｂページを表す図である。
【図１０】与えられたＤＰＳサイトについて選択された日付範囲の完了している印刷ジョブを管理者が表示できるようにするためＤＰＳサーバ上のブラウザまたは管理者ユーザが使用するクライアント・デバイスを介して描画されるＷｅｂページを表す図である。
【図１１】与えられたＤＰＳサイトについて選択された所有者の完了している印刷ジョブを管理者が表示できるようにするためＤＰＳサーバ上のブラウザまたは管理者ユーザが使用するクライアント・デバイスを介して描画されるＷｅｂページを表す図である。
【図１２】与えられたＤＰＳサイトについて選択されたプリンタの完了している印刷ジョブを管理者が表示できるようにするためＤＰＳサーバ上のブラウザまたは管理者ユーザが使用するクライアント・デバイスを介して描画されるＷｅｂページを表す図である。
【図１３】与えられたＤＰＳサイトに関して完了したすべての印刷ジョブを管理者が表示できるようにするためＤＰＳサーバ上のブラウザまたは管理者ユーザが使用するクライアント・デバイスを介して描画されるＷｅｂページを表す図である。
【図１４】管理者によって入力された選択可能な検索情報に基づき完了しているさまざまな印刷ジョブ情報を管理者が表示できるようにするためＤＰＳサーバ上のブラウザまたは管理者ユーザが使用するクライアント・デバイスを介して描画されるＷｅｂページを表す図である。
【図１５】与えられたＤＰＳサイトによってサポートされているドキュメント・ファイル・タイプに関係するファイル・タイプ情報を管理者が表示し編集できるようにするためＤＰＳサーバ上のブラウザまたは管理者ユーザが使用するクライアント・デバイスを介して描画されるＷｅｂページを表す図である。
【図１６】与えられたＤＰＳサイトによってサポートされているドキュメント・ファイル・タイプに関係する拡張子および対応するアプリケーション情報を管理者が表示し編集できるようにするためＤＰＳサーバ上のブラウザまたは管理者ユーザが使用するクライアント・デバイスを介して描画されるＷｅｂページを表す図である。
【図１７】ドライバレス・プリント・サーバにサブミットされる印刷要求に対応する代表的なデータフロー・プロセスを説明する概略図である。
【図１８】ドライバレス・プリント・サーバ・ソフトウェアによって実現される他のオペレーションおよびロジックを説明する概略図と流れ図を組み合わせた図である。
【図１９】印刷ジョブを処理するときに起動されるさまざまなダイアログボックスおよびメッセージ・ボックスを取り扱うため「ウィンドウ処理」コンポーネントにより使用されるオペレーションおよびロジックを説明する流れ図および概略図である。
【図２０】ドライバレス・プリント・サーバ・インストールを処理するために使用できる例示的コンピュータ・サーバの概略図である。
【図１】
2004535618.tif 000003
【図２】
2004535618.tif 000004
【図７】
2004535618.tif 000005
【図８】
2004535618.tif 000006
【図１７】
2004535618.tif 000007
【図１８】
2004535618.tif 000008
【図１９】
2004535618.tif 000009
【図２０】
2004535618.tif 000010
【国際公開パンフレット】
2004535618.tif 000011
2004535618.tif 000012
2004535618.tif 000013
2004535618.tif 000014
2004535618.tif 000015
2004535618.tif 000016
2004535618.tif 000017
2004535618.tif 000018
2004535618.tif 000019
2004535618.tif 000020
2004535618.tif 000021
2004535618.tif 000022
2004535618.tif 000023
2004535618.tif 000024
2004535618.tif 000025
2004535618.tif 000026
2004535618.tif 000027
2004535618.tif 000028
2004535618.tif 000029
2004535618.tif 000030
2004535618.tif 000031
2004535618.tif 000032
2004535618.tif 000033
2004535618.tif 000034
2004535618.tif 000035
2004535618.tif 000036
2004535618.tif 000037
2004535618.tif 000038
2004535618.tif 000039
2004535618.tif 000040
2004535618.tif 000041
2004535618.tif 000042
2004535618.tif 000043
2004535618.tif 000044
2004535618.tif 000045
2004535618.tif 000046
2004535618.tif 000047
2004535618.tif 000048
2004535618.tif 000049
2004535618.tif 000050
2004535618.tif 000051
2004535618.tif 000052
2004535618.tif 000053
2004535618.tif 000054
2004535618.tif 000055
2004535618.tif 000056
2004535618.tif 000057
2004535618.tif 000058
2004535618.tif 000059
2004535618.tif 000060
2004535618.tif 000061
2004535618.tif 000062
2004535618.tif 000063
2004535618.tif 000064
2004535618.tif 000065
2004535618.tif 000066
2004535618.tif 000067
2004535618.tif 000068
2004535618.tif 000069
【国際公開パンフレット（コレクトバージョン）】
2004535618.tif 000070
2004535618.tif 000071
2004535618.tif 000072
2004535618.tif 000073
2004535618.tif 000074
2004535618.tif 000075
2004535618.tif 000076
2004535618.tif 000077
2004535618.tif 000078
2004535618.tif 000079
2004535618.tif 000080
2004535618.tif 000081
2004535618.tif 000082
2004535618.tif 000083
2004535618.tif 000084
2004535618.tif 000085
2004535618.tif 000086
2004535618.tif 000087
2004535618.tif 000088
2004535618.tif 000089
2004535618.tif 000090
2004535618.tif 000091
2004535618.tif 000092
2004535618.tif 000093
2004535618.tif 000094
2004535618.tif 000095
2004535618.tif 000096
2004535618.tif 000097
2004535618.tif 000098
2004535618.tif 000099
2004535618.tif 000100
2004535618.tif 000101
2004535618.tif 000102
2004535618.tif 000103
2004535618.tif 000104
2004535618.tif 000105
2004535618.tif 000106
2004535618.tif 000107
2004535618.tif 000108
2004535618.tif 000109
2004535618.tif 000110
2004535618.tif 000111
2004535618.tif 000112
2004535618.tif 000113
2004535618.tif 000114
2004535618.tif 000115
2004535618.tif 000116
2004535618.tif 000117
2004535618.tif 000118
2004535618.tif 000119
2004535618.tif 000120
2004535618.tif 000121
2004535618.tif 000122
2004535618.tif 000123
2004535618.tif 000124
2004535618.tif 000125
2004535618.tif 000126
2004535618.tif 000127
2004535618.tif 000128
2004535618.tif 000129
2004535618.tif 000130
2004535618.tif 000131
【国際公開パンフレット（コレクトバージョン）】
2004535618.tif 000132
2004535618.tif 000133
【国際調査報告】
2004535618.tif 000134