(57)【要約】【課題】  ポイントアンドプリントの仕組みでは、同じ機種のプリンターの複数の言語のプリンタードライバーをクライアントコンピューターに配信することが困難である。【解決手段】  プリントサーバーを用いてプリンタードライバーをクライアントにインストールする方法であって、プリントサーバーは各プリンタードライバーとその対応ＣＰＵと対応言語を管理する工程と、クライアントのＣＰＵ種類及び言語の情報をプリントサーバーに送信する工程と、プリントサーバーは受信したクライアントのＣＰＵ種類及び言語の情報に適合するプリンタードライバーのドライバー識別子を送信する工程と、クライアントは受信したドライバー識別子が示すプリンタードライバーをプリントサーバーに要求する工程と、プリントサーバーは受信したドライバー識別子が示すプリンタードライバーを配信する工程を有することを特徴とするプリンタードライバーインストール方法【選択図】  図４
2013130985.tif 000002
【特許請求の範囲】
【請求項１】
プリントサーバー（１０２）を用いた印刷システムにおいてプリンタードライバー（３１３）をクライアントＰＣ（１０３）にインストールする方法であって、
プリントサーバー（１０２）は各プリンタードライバー（３０２、３０３）とその対応ＣＰＵと対応言語を管理する配信プリンタードライバー管理工程（Ｓ５０１〜５０７）と、
クライアントＰＣ（１０３）から共有プリンターの情報を要求する際に、クライアントＰＣ（１０３）のＯＳのＣＰＵ種類（１３０２）及び言語設定（１３０３）の情報をプリントサーバー（１０２）に送信するクライアント情報送信工程（Ｓ１１０２）と、
プリントサーバー（１０２）は前記クライアント情報送信工程によって受信したクライアントＰＣ（１０３）のＯＳのＣＰＵ種類（１３０２）及び言語設定（１３０３）の情報に適合するプリンタードライバーのドライバー識別子（１４０３）を送信するプリンタードライバー識別子送信工程（Ｓ１２１１〜１２１９）と、
クライアントＰＣ（１０３）はプリンタードライバー識別子送信工程によって受信したドライバー識別子（１４０３）が示すプリンタードライバーをプリントサーバー（１０２）に要求するプリンタードライバー配信要求工程（Ｓ１１１０）と、
プリントサーバー（１０２）は前記プリンタードライバー配信要求工程によって受信したドライバー識別子（１４０３）が示すプリンタードライバーを配信するプリンタードライバー配信工程（Ｓ１２２２）と、
を有することを特徴とするプリンタードライバーインストール方法。
【請求項２】
前記配信プリンタードライバー管理工程（Ｓ５０１〜５０７）は、
インストールするプリンタードライバーの言語を、ユーザーが任意に設定するプリンタードライバー言語手動設定工程（Ｓ６０７）
を有することを特徴とする請求項１に記載のプリンタードライバーインストール方法。
【請求項３】
前記配信プリンタードライバー管理工程（Ｓ５０１〜５０７）は、
セットアップ情報ファイルに記載された言語記述に従って、インストールするプリンタードライバーの言語を設定するプリンタードライバー言語自動設定工程（Ｓ１６０２）
を有することを特徴とする請求項１に記載のプリンタードライバーインストール方法。
【請求項４】
前記配信プリンタードライバー管理工程（Ｓ５０１〜５０７）は、
同じＣＰＵ用の複数の言語対応プリンタードライバーのうち１つ標準言語を設定する標準言語設定工程（Ｓ８０４）
を有することを特徴とする請求項２又は請求項３に記載のプリンタードライバーインストール方法。
【請求項５】
前記プリンタードライバー識別子送信工程（Ｓ１２１１〜１２１９）は、
前記クライアント情報送信工程によって受信したクライアントＰＣ（１０３）のＯＳのＣＰＵ種類（１３０２）と言語設定（１３０３）の情報に適合するプリンタードライバーがない場合に、クライアントＰＣ（１０３）のＯＳのＣＰＵ種類（１３０２）に適合する前記配信プリンタードライバー管理工程により標準言語に設定されたプリンタードライバーのドライバー識別子を送信する標準言語プリンタードライバー識別子送信工程（Ｓ１２１８）
を有することを特徴とする請求項１に記載のプリンタードライバーインストール方法。
【請求項６】
プリントサーバー（１０２）を用いた印刷システムにおいてプリンタードライバー（３１３）をクライアントＰＣ（１０３）にインストールするシステムであって、
プリントサーバー（１０２）は各プリンタードライバー（３０２、３０３）とその対応ＣＰＵと対応言語を管理する配信プリンタードライバー管理手段（Ｓ５０１〜５０７）と、
クライアントＰＣ（１０３）から共有プリンターの情報を要求する際に、クライアントＰＣ（１０３）のＯＳのＣＰＵ種類（１３０２）及び言語設定（１３０３）の情報をプリントサーバー（１０２）に送信するクライアント情報送信手段（Ｓ１１０２）と、
プリントサーバー（１０２）は前記クライアント情報送信手段によって受信したクライアントＰＣ（１０３）のＯＳのＣＰＵ種類（１３０２）及び言語設定（１３０３）の情報に適合するプリンタードライバーのドライバー識別子（１４０３）を送信するプリンタードライバー識別子送信手段（Ｓ１２１１〜１２１９）と、
クライアントＰＣ（１０３）はプリンタードライバー識別子送信手段によって受信したドライバー識別子（１４０３）が示すプリンタードライバーをプリントサーバー（１０２）に要求するプリンタードライバー配信要求手段（Ｓ１１１０）と、
プリントサーバー（１０２）は前記プリンタードライバー配信要求手段によって受信したドライバー識別子（１４０３）が示すプリンタードライバーを配信するプリンタードライバー配信手段（Ｓ１２２２）と、
を有することを特徴とするプリンタードライバーインストールシステム。
【請求項７】
前記配信プリンタードライバー管理手段（Ｓ５０１〜５０７）は、
インストールするプリンタードライバーの言語を、ユーザーが任意に設定するプリンタードライバー言語手動設定手段（Ｓ６０７）
を有することを特徴とする請求項６に記載のプリンタードライバーインストールシステム。
【請求項８】
前記配信プリンタードライバー管理手段（Ｓ５０１〜５０７）は、
インストール情報ファイルに記載された言語記述に従って、インストールするプリンタードライバーの言語を設定するプリンタードライバー言語自動設定手段（Ｓ１６０２）
を有することを特徴とする請求項６に記載のプリンタードライバーインストールシステム。
【請求項９】
前記配信プリンタードライバー管理手段（Ｓ５０１〜５０７）は、
同じＣＰＵ用の複数の言語対応プリンタードライバーのうち１つ標準言語を設定する標準言語設定手段（Ｓ８０４）
を有することを特徴とする請求項７又は請求項８に記載のプリンタードライバーインストールシステム。
【請求項１０】
前記プリンタードライバー識別子送信手段（Ｓ１２１１〜１２１９）は、
前記クライアント情報送信手段によって受信したクライアントＰＣ（１０３）のＯＳのＣＰＵ種類（１３０２）と言語設定（１３０３）の情報に適合するプリンタードライバーがない場合に、クライアントＰＣ（１０３）のＯＳのＣＰＵ種類（１３０２）に適合する前記配信プリンタードライバー管理手段により標準言語に設定されたプリンタードライバーのドライバー識別子を送信する標準言語プリンタードライバー識別子送信手段（Ｓ１２１８）
を有することを特徴とする請求項６に記載のプリンタードライバーインストールシステム。
【請求項１１】
コンピューターに、請求項１乃至請求項５の何れか１項に記載のプリンタードライバーインストール方法を実行させるためのプログラム。
【請求項１２】
コンピューターに、請求項１乃至請求項５の何れか１項に記載のプリンタードライバーインストール方法をを実行させるためのプログラムを記録した
コンピューター読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリントサーバーを用いた印刷システムにおいてホストコンピューターにプリンタードライバーをインストールする方法、システムおよびプログラムに関するものである。
【背景技術】
【０００２】
近年、オフィスのネットワーク化に伴い、１台のプリンターを複数のクライアントコンピューターで共有して使用している。マイクロソフト社のＷｉｎｄｏｗｓ（登録商標）によって構築された印刷システムにおいては、Ｐｏｉｎｔ＆Ｐｒｉｎｔ（以下、ポイントアンドプリント）と呼ばれるプリンタードライバーのインストール方法が一般的に用いられる。ポイントアンドプリントの仕組みによって、一般ユーザーはプリンタードライバーのインストールメディアを用意したり、プリンターのＩＰアドレスをあらかじめ調べたりする手間が必要なく、容易に共有プリンターを使用することができる。企業内システムでは、システムの管理コスト削減のため、クライアントコンピューターにインストールして良いプリンタードライバーを厳密に管理している場合が多い。そのため、ポイントアンドプリントの仕組みを使えば、システム管理者はクライアントコンピューターにおけるプリンタードライバーの管理が容易になる。
【０００３】
しかし、ポイントアンドプリントの仕組みには依然面倒な点がある。１つには、同じ機種のプリンターの複数の言語のプリンタードライバーをクライアントコンピューターに配信することが困難な点がある。例えば、複数の国で業務展開を行うグローバル企業では、複数の国のオフィスのプリンターを１か所のプリントサーバーで集中管理して、各オフィスのＰＣは１か所のプリントサーバーに接続して印刷を行う場合がある。その場合、各ＰＣのＯＳは様々な言語設定がされており、その言語に適合したプリンタードライバーが配信されることが望まれる。また別の例では、同じオフィスに色々な国の社員が働いている場合が考えられる。この場合も、様々な言語設定がされた各ＰＣにその言語に適合したプリンタードライバーが配信されることが望まれる。メーカーからは色々な言語に対応したプリンタードライバーが提供されているが、例え言語が異なっていても、１つのＣＰＵタイプに対して同じ機種の複数のプリンタードライバーを同じプリントサーバーにインストールすることはできない。従って、ポイントアンドプリントの仕組みで１つのプリントサーバーから配信可能なプリンタードライバーは１機種につき１言語に限られる。
【０００４】
クライアントＰＣのＯＳの言語に適合するプリンタードライバーを自動的にインストールする方法として、以下に示すような技術が開示されている（特許文献１）。つまり、サーバーからインストーラーがダウンロードされると自動起動し、クライアントＰＣのＯＳや言語やプリンターの機種を調査し、接続されているプリンターに適合するドライバーの格納先を入手し、その格納先からドライバーをダウンロードする。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−３５１０３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ポイントアンドプリントではインストーラーを配信することはできないので、ポイントアンドプリントの仕組みでは前記の方法は実施できない。また、前記の方法は、クライアントＰＣに接続されているプリンターのプリンタードライバーを自動的にダウンロードする方法であり、プリントサーバーの共有プリンターのプリンタードライバーはダウンロードできない。
【０００７】
本発明は、上記課題を解決すべく、クライアントＰＣの言語に適合したプリンタードライバーをポイントアンドプリントの仕組みでプリントサーバーから配信することができる方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
プリントサーバー（１０２）を用いた印刷システムにおいてプリンタードライバー（３１３）をクライアントＰＣ（１０３）にインストールする方法であって、
プリントサーバー（１０２）は各プリンタードライバー（３０２、３０３）とその対応ＣＰＵと対応言語を管理する配信プリンタードライバー管理工程（Ｓ５０１〜５０７）と、
クライアントＰＣ（１０３）から共有プリンターの情報を要求する際に、クライアントＰＣ（１０３）のＯＳのＣＰＵ種類（１３０２）及び言語設定（１３０３）の情報をプリントサーバー（１０２）に送信するクライアント情報送信工程（Ｓ１１０２）と、
プリントサーバー（１０２）は前記クライアント情報送信工程によって受信したクライアントＰＣ（１０３）のＯＳのＣＰＵ種類（１３０２）及び言語設定（１３０３）の情報に適合するプリンタードライバーのドライバー識別子（１４０３）を送信するプリンタードライバー識別子送信工程（Ｓ１２１１〜１２１９）と、
クライアントＰＣ（１０３）はプリンタードライバー識別子送信工程によって受信したドライバー識別子（１４０３）が示すプリンタードライバーをプリントサーバー（１０２）に要求するプリンタードライバー配信要求工程（Ｓ１１１０）と、
プリントサーバー（１０２）は前記プリンタードライバー配信要求工程によって受信したドライバー識別子（１４０３）が示すプリンタードライバーを配信するプリンタードライバー配信工程（Ｓ１２２２）と、
を有することを特徴とするプリンタードライバーインストール方法。
【発明の効果】
【０００９】
プリントサーバーに複数の言語のプリンタードライバーを代替プリンタードライバーとしてインストールして、各プリンタードライバーの言語を設定しておく。そして、プリントサーバーは、ポイントアンドプリントを開始する際にクライアントＰＣからＯＳのＣＰＵと言語の情報を受け取ると、その情報に適合したプリンタードライバーのドライバー識別子をクライアントＰＣに送信する。その結果、クライアントＰＣはＯＳのＣＰＵと言語に適合したプリンタードライバーをダウンロードすることができ、ユーザーエクスペリエンスを向上することができる。また、プリントサーバーにインストールされたプリンタードライバーに対して対応ＣＰＵ毎に１つ標準言語を設定しておく。そして、クライアントＰＣのＣＰＵには適合するが言語に適合したプリンタードライバーがない場合に、プリントサーバーは対応ＣＰＵの標準言語のプリンタードライバードライバー識別子をクライアントＰＣに送信する。その結果、クライアントＰＣはＯＳのＣＰＵに適合した標準言語のプリンタードライバーをダウンロードすることができ、最低限のユーザーエクスペリエンスを確保することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態を適用可能なプリンタードライバーインストールシステムのシステム構成を示すブロック図
【図２】図１のホストコンピューターおける印刷処理のための構成を示すブロック図
【図３】図１のモジュール構成を示すブロック図
【図４】プリントサーバーのプリンタードライバーの配信を管理する画面の一例を示す図
【図５】配信プリンタードライバー管理画面の処理を説明するための全体のフローチャート
【図６】図５のドライバー追加処理のフローチャート
【図７】図５のドライバー削除処理のフローチャート
【図８】図５の標準言語設定処理のフローチャート
【図９】ドライバー追加処理で指定するセットアップ情報ファイルの一例を示す図
【図１０】ドライバー追加処理において代替プリンタードライバーの言語を設定する画面の一例を示す図
【図１１】プリンタードライバーインストール方法におけるクライアントＰＣの処理を説明するためのフローチャート
【図１２】プリンタードライバーインストール方法におけるプリントサーバーの処理を説明するためのフローチャート
【図１３】共有プリンター情報を要求時にプリントサーバーに送信する情報のデータ構造の一例を示す図
【図１４】プリントサーバーが送信する共有プリンター情報のデータ構造の一例を示す図
【図１５】実施例４におけるドライバー追加処理で指定するセットアップ情報ファイルの一例を示す図
【図１６】実施例４におけるドライバー追加処理のフローチャート
【図１７】実施例４におけるドライバー追加処理において代替プリンタードライバーの言語を選択する画面の一例を示す図
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
【００１２】
［実施例１］
図１は、本発明の実施形態を適用可能なプリンタードライバーインストールシステムの構成を示すブロック図である。本実施形態は、オペレーティングシステムとして、マイクロソフト社のＷｉｎｄｏｗｓのプリンティングシステムを例とする。なお、特に断らない限り、本発明の機能が実行されるのであれば、機器の構成に係わらず本発明を適用できることは言うまでもない。単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ，ＷＡＮ等のネットワークを介して接続が為され処理が行われるシステムであってもよい。
【００１３】
システムは、プリンター１０１、プリントサーバー１０２及びクライアントＰＣ１０３、を有する。プリンター１０１、プリントサーバー１０２及びクライアントＰＣ１０３は、ＬＡＮ，ＷＡＮなどのネットワーク１０４を介して通信可能に接続されている。
【００１４】
プリンター１０１は、印刷ジョブを印刷する機能を有する。単機能のプリンターでも良いし、複合機能の周辺機器の印刷部であっても良い。
【００１５】
プリントサーバー１０２は、クライアントＰＣ１０３からの印刷ジョブを管理し、ネットワーク１０４もしくはＵＳＢなどのローカルポート（不図示）を介して接続されているプリンター１０１を管理する機能を有する。また、ポイントアンドプリントでクライアントＰＣ１０３に配信するプリンタードライバーを管理する。
【００１６】
クライアントＰＣ１０３は、プリンター１０１に対して印刷指示を行う機能を有する。アプリケーションが印刷指示を行うと、プリントサーバー１０２を介してプリンター１０１に印刷ジョブを送出する。
【００１７】
図２は、図１のプリントサーバー１０２及びクライアントＰＣ１０３などホストコンピューターの装置構成を示すブロック図である。
【００１８】
ＣＰＵ２０１は主記憶装置２０２のＲＯＭ２０２１あるいはＲＡＭ２０２２あるいは補助記憶装置２０５に格納されたプログラムに従って装置全体の制御を行う。ＲＡＭ２０２２はＣＰＵ２０１が各種処理を行う際のワークエリアとしても使用される。補助記憶装置２０５はオペレーティングシステム（ＯＳ）２０５３やプリンタードライバー２０５２、アプリケーションソフト２０５１等を記憶する。キーボード２０３１やマウス・タッチパネルなどに代表されるポインティングデバイス２０３２などの入力機器は、入力Ｉ／Ｆ２０３を通じて、ユーザーがコンピューターに対して各種指示を与えるためのデバイスである。出力Ｉ／Ｆ２０４は、データを外部に出力するためのインターフェースであり、モニター２０４１やプリンター２０４２などの出力機器に対してデータを出力する。プリンター２０４２とは直接接続されるローカルＩ／Ｏのみならず、通信Ｉ／Ｆ２０６を通じて接続されるネットワーク２０６１を通して接続されていてもよい。また、２０７は共通データシステムバスで、モジュール間でそれぞれのデータのやりとりを行う。
【００１９】
図３は、図１のプリンタードライバーインストールシステムのモジュール構成を示すブロック図である。
【００２０】
プリントサーバー１０２は、プリントシステム３０１と、システムプリンタードライバー３０２と、代替プリンタードライバー３０３を有する。プリントシステム３０１はＯＳの一部で、接続しているプリンター１０１を共有プリンターとして提供し、クライアントＰＣ１０３から印刷ジョブを受け取って、プリンター１０１に出力する。また、クライアントＰＣ１０３からの要求により、共有プリンターに関連付けられたシステムプリンタードライバー３０２及び代替言語プリンタードライバー３０３を配信する。
【００２１】
システムプリンタードライバー３０２は、プリントサーバー１０２のＯＳに対応したプリンタードライバーであり、プリントサーバー１０２上のアプリケーション（不図示）から印刷する場合に使われるドライバーでもある。代替プリンタードライバー３０３は、システムプリンタードライバー３０２と同じ機種の別プリンタードライバーを配信する場合に用いられる。例えば、システムプリンタードライバー３０２が６４ビットＯＳ用の場合、クライアントＰＣ１０３から３２ビットＯＳ用を要求されると、３２ビットＯＳ用の代替プリンタードライバー３０３を配信する。３２ビットＯＳ用の代替プリンタードライバー３０３がない場合には、他のＣＰＵ用プリンタードライバーを配信してもクライアントＰＣ１０３では使用できないので、クライアントＰＣ１０３にエラーを返す。更に、システムプリンタードライバー３０２が３２ビットＯＳ用英語版の場合にクライアントＰＣ１０３から３２ビットＯＳ用日本語版を要求されると、３２ビットＯＳ用日本語版の代替プリンタードライバー３０３を配信する。３２ビットＯＳ用日本語版の代替プリンタードライバー３０３がない場合には、同じＣＰＵ用ドライバーであれば他の言語用プリンタードライバーであってもクライアントＰＣ１０３で使用できる。そのため、エラーとはしないで、システムプリンタードライバー３０２もしくは代替プリンタードライバー３０３の他の言語用プリンタードライバーをクライアントＰＣ１０３に配信する。詳細は後述する。
【００２２】
図４は、プリントサーバー１０２がクライアントＰＣ１０３に配信するプリンタードライバーを管理する画面の一例である。配信プリンタードライバー管理画面４００は、プリンター１０１に対応するシステムプリンタードライバー３０２をインストールすると、共有プリンターのプロパティから表示することが可能になる。ドライバーリスト４０１は、システムプリンタードライバー３０２及び代替プリンタードライバー３０３のインストール状況を表す一覧で、プロセッサ欄４０１ａと言語欄４０１ｂとインストール済み欄４０１ｃがある。プロセッサ欄４０１ａは、インストールされているプリンタードライバーが対応するＣＰＵを表示する。言語欄４０１ｂは、インストールされているプリンタードライバーが対応する言語を表示する。
【００２３】
また、プロセッサ欄４０１ｃが示すＣＰＵ用プリンタードライバーの標準言語であれば、言語の後に例えばアスタリスク“＊”を表示する。例えば図４の場合、ｘ８６ＣＰＵ用として“英語（英国）”と“フランス語（フランス）”と“日本語（日本）”の３つの言語のプリンタードライバーがインストールされているが、“英語（英国）”が標準言語になっている。標準言語は、クライアントＰＣ１０３からプリンタードライバーの配信が要求された場合に、適合する言語のプリンタードライバーがない場合に配信するプリンタードライバーの言語で、配信可能なＣＰＵ毎に設定可能である。また、標準言語は変更することができる。詳細は後述する。インストール済み欄４０１ｃは、プロセッサ欄４０１ａと言語欄４０１ｂが示すプリンタードライバーがインストールされているかを表示する。システムプリンタードライバー３０２がインストールされないと配信プリンタードライバー管理画面４００は表示できないので、プリントサーバー１０２のＯＳのＣＰＵに対応する項目は必ず１つはインストール済みである。インストール済み欄４０１ｃが“いいえ”となっている項目は、プロセッサ欄４０１ａの表すＣＰＵ用プリンタードライバーが１つもインストールされていないことを表し、言語欄４０１ｂは空白である。例えば図４の場合、Ｉｔａｎｉｕｍプロセッサ用ドライバーはインストールされていない。ドライバーリスト４０１は項目を１つだけ選択でき、追加ボタン４０２、削除ボタン４０３及び標準言語に設定ボタン４０４を押すことによって、代替プリンタードライバー３０３の追加・削除、標準言語の変更が可能である。閉じるボタン４０５を押すと、配信プリンタードライバー管理画面４００を閉じる。
【００２４】
図５は、配信プリンタードライバー管理画面４００の処理を説明するための全体のフローチャートである。まず、ユーザーが画面の操作を行ったか判定し（Ｓ５０１）、操作を行うまでＳ５０１で待ち続ける。ユーザーが操作を行ったら、ユーザー操作によるコマンド種別を判定する（Ｓ５０２）。代替プリンタードライバー３０３の追加コマンドであれば、ドライバー追加処理（Ｓ５０３）を行い、Ｓ５０１に戻る。代替プリンタードライバー３０３の削除コマンドであれば、ドライバー削除処理（Ｓ５０４）を行い、Ｓ５０１に戻る。代替プリンタードライバー３０３の標準言語設定コマンドであれば、標準言語設定処理（Ｓ５０５）を行い、Ｓ５０１に戻る。クローズコマンドであれば、画面クローズ処理（Ｓ５０６）を行い、処理を終了する。その他のコマンドであればコマンドに対応するその他の処理（Ｓ５０７）を行い、Ｓ５０１に戻る。
【００２５】
図６は配信プリンタードライバー管理画面４００のドライバー追加処理（Ｓ５０３）の詳細なフローチャートを示す。ユーザーは、追加したい代替プリンタードライバー３０３と同じＣＰＵ用の項目を選択してから、追加コマンドを実行する。追加コマンドは、追加ボタン４０２を押すと実行される。マウス２０３２の右クリックによって表示されるメニューから“追加する”を選択するなど、他の操作方法であってもよい。まず、ドライバーリスト４０１に選択された項目があるか判定し（Ｓ６０１）、選択された項目がなければ処理を抜ける。
【００２６】
次に、インストールする代替プリンタードライバー３０３のプロセッサと機種名を特定するために、選択された項目のプロセッサ欄４０１ａを取得し（Ｓ６０２）、システムプリンタードライバー３０２の機種名を取得する（Ｓ６０３）。そして、インストール元のメディアやフォルダーのセットアップ情報ファイル（ｉｎｆファイル）を指定する画面を表示して、ユーザーに指定されたら（Ｓ６０４）、指定されたセットアップ情報ファイルの記述を解析する（Ｓ６０５）。セットアップ情報ファイルはプリンタードライバーのインストールセットの内容を記述したファイルで、セットアップ情報ファイルを解析すればインストール可能なプリンタードライバーの対応ＣＰＵと機種名がわかる。図９はセットアップ情報ファイルの一例である。この例では、ｘ８６及びｘ６４ＣＰＵ用のＣａｎｏｎ社製“ｘｘｘｘ”という機種名のプリンターに対応するプリンタードライバーをインストール可能であることがわかる。セットアップ情報ファイルが解析できたら、Ｓ６０２とＳ６０３で取得したＣＰＵと機種に対応したプリンタードライバーが含まれるか判定する（Ｓ６０６）。含まれないと判定すれば、処理を抜ける。含まれると判定すれば、インストールする代替プリンタードライバー３０３の言語を設定する画面を表示する（Ｓ６０７）。
【００２７】
図１０は、代替プリンタードライバー３０３の言語を設定する画面の一例である。言語コンボボックス１００１をマウス２０３２でクリックすると言語リストが表示され、その中の１つを選択するとリストが閉じ、選択した項目が言語コンボボックス１００１に入力される。ＯＫボタン１００２を押すと、言語コンボボックス１００１に入力された言語を、インストールする代替プリンタードライバー３０３の言語としてＲＡＭ２０２２内のワーク領域に記憶し、プリンタードライバー言語設定画面１０００を閉じる。プリンタードライバー言語設定画面１０００を閉じたら、指定したセットアップ情報ファイルを用いて代替プリンタードライバー３０３をインストールする（Ｓ６０８）。インストール処理後、インストールが成功したか判定する（Ｓ６０９）。インストールが成功した場合には、インストールされた代替プリンタードライバー３０３の言語にＲＡＭ２０２２内のワーク領域に記憶した言語を設定する（Ｓ６１０）。ユーザーがインストールを中断するなどインストールが失敗した場合には、処理を抜ける。Ｓ６１０で代替プリンタードライバー３０３の言語を設定したら、ドライバーリスト４０１の選択された項目のインストール済み欄４０１ｃが“いいえ”であったか判定する（Ｓ６１１）。“いいえ”であれば、インストールした代替プリンタードライバー３０３はそのＣＰＵ用の唯一のプリンタードライバーであるので、指定したＣＰＵ用プリンタードライバーの標準言語に設定し（Ｓ６１２）、処理を抜ける。
【００２８】
図７は配信プリンタードライバー管理画面４００のドライバー削除処理（Ｓ５０４）の詳細なフローチャートを示す。ユーザーは、削除したい代替プリンタードライバー３０３の項目を選択してから、削除コマンドを実行する。削除コマンドは、削除ボタン４０３を押すと実行される。マウス２０３２の右クリックによって表示されるメニューから“削除する”を選択するなど、他の操作方法であってもよい。まず、ドライバーリスト４０１に選択された項目があるか判定し（Ｓ７０１）、選択された項目がなければ処理を抜ける。次に、選択した項目がシステムプリンタードライバー３０２か判定し（Ｓ７０２）、システムプリンタードライバー３０２であれば処理を抜ける。システムプリンタードライバー３０２は、コントロールパネルのプリンターフォルダーで削除する。そして、選択された項目の言語欄４０１ｂに“＊”（標準言語を示す）が表示されているかを判定し（Ｓ７０３）、更に選択された項目と同じＣＰＵ用の他のプリンタードライバーがあるか判定する（Ｓ７０４）。選択された項目の言語欄４０１ｂに“＊”が表示されていて、かつ、選択された項目と同じＣＰＵ用の他のプリンタードライバーがあれば、選択された項目と同じＣＰＵ用の他のプリンタードライバーを標準言語に変更する（Ｓ７０５）。選択された項目と同じＣＰＵ用の他のプリンタードライバーの選択方法は、ドライバーリスト４０１上で現在の標準言語の項目の次の項目（もし最後ならば最初）など任意の方法でよい。Ｓ７０３で“＊”が表示されていない、もしくはＳ７０４で同じＣＰＵ用の他のプリンタードライバーがないと判定されれば、Ｓ７０５をスキップする。そして、ドライバーリスト４０１に選択された項目の代替プリンタードライバー３０３を削除して（Ｓ７０６）、処理を抜ける。
【００２９】
図８は配信プリンタードライバー管理画面４００の標準言語設定処理（Ｓ５０５）の詳細なフローチャートを示す。ユーザーは、標準言語にしたいシステムプリンタードライバー３０２もしくは代替プリンタードライバー３０３の項目を選択してから、標準言語設定コマンドを実行する。標準言語設定コマンドは、標準言語に設定ボタン４０４を押すと実行される。マウス２０３２の右クリックによって表示されるメニューから“標準言語に設定する”を選択するなど、他の操作方法であってもよい。まず、ドライバーリスト４０１に選択された項目があるか判定し（Ｓ８０１）、選択された項目がなければ処理を抜ける。次に、選択された項目のインストール済み欄４０１ｃが“はい”か判定し（Ｓ８０２）、“いいえ”であれば処理を抜ける。そして、選択された項目の言語欄４０１ｂに“＊”（標準言語を示す）が表示されているかを判定し（Ｓ８０３）、“＊”が表示されていれば処理を抜ける。“＊”が表示されていなければ、ドライバーリスト４０１の選択された項目と同じＣＰＵ用プリンタードライバーの標準言語に設定する。例えば図４の場合、ユーザーが“フランス語（フランス）”の項目を選択して標準言語に設定ボタン４０４を押すと、ｘ８６ＣＰＵ用プリンタードライバの標準言語を現在の“英語（英国）”から“フランス語（フランス）”に変更する。
【００３０】
クライアントＰＣ１０３は、アプリケーション３１１とプリントシステム３１２と、プリンタードライバー３１３を有する。アプリケーション３１１は、ユーザーの印刷指示により印刷データをプリントシステム３１２に出力する。Ｗｉｎｄｏｗｓのプリンティングシステムでは、ＧＤＩコマンドまたはＸＰＳデータが印刷データとして用いられている。プリントシステム３１２はＯＳの一部で、アプリケーション３１１から受け取った印刷データをプリンタードライバー３１３へ出力する。プリンタードライバー３１３は、プリントシステム３１２から印刷データを受け取り、プリンター１０１が認識可能な制御コマンド、例えばページ記述言語（ＰＤＬ）に変換する。変換されたプリンター制御コマンドは、プリントシステム３１２からプリントサーバー１０２のプリントシステム３０１を経てプリンター１０１へ印刷データとして出力される。
【００３１】
図１１と図１２は、本実施形態を適用可能なプリンタードライバーインストール方法を説明するクライアントＰＣ１０３の処理とプリントサーバー１０２の処理のフローチャートを示す。クライアントＰＣ１０３とプリントサーバー１０２はポイントアンドプリントの仕組みに従って互いに通信して、プリントサーバー１０２が配信したプリンタードライバーを、クライアントＰＣ１０３がインストールする。通信によるデータ送信・受信については、図中で点線の矢印によって表している。
【００３２】
以下、図１１と図１２の処理を説明する。
【００３３】
一般ユーザーは、クライアントＰＣ１０３においてプリントサーバー１０２の共有プリンターを表示して、表示されたプリンターオブジェクトの１つを選択して接続コマンドを実行する。すると、クライアントＰＣ１０３のプリントシステム３１２は、ＯＳのＣＰＵと言語設定を調査し（Ｓ１１０１）、その情報とともに選択した共有プリンターに関する情報をプリントサーバー１０２に対し要求する（Ｓ１１０２、Ａ）。
【００３４】
図１３は、クライアントＰＣ１０３が共有プリンター情報を要求する際にプリントサーバー１０２に送信する共有プリンター要求データ１３００のデータ構造の一例である。共有プリンター要求データ１３００は、プリンター名１３０１、クライアントＣＰＵ１３０２、クライアント言語１３０３を含む。プリンター名１３０１は、情報を要求する共有プリンターの共有名である。クライアントＣＰＵ１３０２は、クライアントＯＳのＣＰＵ種別を表す。クライアント言語１３０３は、クライアントＯＳの言語設定を表す。
【００３５】
図１４は、プリントサーバー１０２が共有プリンター要求データに対して返信する共有プリンター情報１４００のデータ構造の一例である。共有プリンター情報１４００は、サーバー名１４０１、プリンター名１４０２、ドライバー識別子１４０３、ポート情報１４０４を含む。サーバー名１４０１は、ネットワーク１０４上でプリントサーバー１０２を一意に表す名称である。プリンター名１４０２は、共有プリンターの共有名である。ドライバー識別子１４０３は、共有プリンターに関連付けられたプリンタードライバーを一意に特定可能な識別子である。ポート情報１４０４は、プリントサーバー１０２上のプリンターオブジェクトのポート設定である。
【００３６】
プリントサーバー１０２のプリントシステム３０１は共有プリンター情報の要求を受け取ると（Ａ）、サービス終了の指示か判定し（Ｓ１２０１）、終了の指示であれば、サービスプログラムをシャットダウンする。終了の指示でなければ、クライアントＰＣ１０３からの通信か判定し（Ｓ１２０２）、クライアントＰＣ１０３からの通信でなければＳ１２０１に戻り、クライアントＰＣ１０３から通信があるまで待ち続ける。クライアントＰＣ１０３からの通信であれば、通信の種類を判定する（Ｓ１２０３）。クライアントからの共有プリンター情報１４００の要求であれば、受け取った共有プリンター要求データ１３００を取得する（Ｓ１２１１）。そして、プリンター名１３０１に対応するクライアントＣＰＵ１３０２用のプリンタードライバーがあるか検索し（Ｓ１２１２）、検索結果を判定する（Ｓ１２１３）。対応するプリンタードライバーがないと判定すれば、対応ドライバーがないことを示すエラーをクライアントＰＣ１０３に送信する（Ｓ１２１４，Ｂ）。クライアントＣＰＵ１３０２に対応していないプリンタードライバーを配信しても、クライアントＰＣ１０３では使用できないからである。対応するプリンタードライバーがあると判定すれば、更にＳ１２１２の検索結果にクライアント言語１３０３に対応したプリンタードライバーがあるか検索し（Ｓ１２１５）、検索結果を判定する（Ｓ１２１６）。対応するプリンタードライバーがあると判定すれば、見つかった言語対応プリンタードライバーのドライバー識別子を取得する（Ｓ１２１７）。対応するプリンタードライバーがないと判定すれば、同じＣＰＵ用の標準言語のプリンタードライバーの識別子を取得する（Ｓ１２１８）。ＣＰＵの場合とは違い、クライアント言語１３０３に対応していない言語用プリンタードライバーであってもクライアントで使用可能なので、エラーとはしない。Ｓ１２１７もしくはＳ１２１８で取得したプリンタードライバー識別子をドライバー識別子１４０３にセットし、その他の情報もセットした共有プリンター情報１４００をクライアントＰＣ１０３に送信し（Ｓ１２１９、Ｂ）、Ｓ１２０１へ戻る。
【００３７】
すると、クライアントＰＣ１０３のプリントシステム３１２が、共有プリンター情報１４００を取得する（Ｓ１１０３、Ｂ）。プリントシステム３１２は、取得した共有プリンター情報１４００に基づき、プリンター１０１の共有プリンターに対応するプリンターオブジェクトが既に存在するかを検索する（Ｓ１１０４）。プリンターオブジェクトが既に作成済みであると判定すれば、処理を終了する。作成されていないと判定すれば、ドライバー識別子１４０３が示すプリンタードライバー３１３がインストール済みか検索し（Ｓ１１０６）、検索結果を判定する（Ｓ１１０７）。インストール済みであると判定すれば、Ｓ１１１４へ進む。インストール済みでないと判定すれば、Ｓ１１０３で対応ドライバーがないことを示すエラーを受信していたか判定する（Ｓ１１０８）。エラーを受信していたと判定すれば、プリントサーバー１０２にクライアントＰＣ１０３に対応するプリンタードライバーがないこと示すエラーを表示し（Ｓ１１０９）、処理を終了する。エラーを受信していないと判定すれば、プリントシステム３１２は、Ｓ１１０３で取得した共有プリンター情報１４００のドライバー識別子１４０３が示すプリンタードライバーをプリントサーバー１０２に要求する（Ｓ１１１０、Ｃ）。
【００３８】
プリントサーバー１０２のプリントシステム３０１は、クライアントＰＣ１０３からの通信を受け取れば（Ｃ）、通信の種類を判定する（Ｓ１２０３）。プリンタードライバーの配信要求であると判定すれば、指定されたドライバー識別子１４０３が示すプリンタードライバーがあるか判定する（Ｓ１２２１）。プリンタードライバーがあると判定すれば、プリンタードライバーをクライアントＰＣ１０３に配信し（Ｓ１２２２、Ｄ）、Ｓ１２０１へ戻る。プリンタードライバーがないと判定すれば、対応ドライバーがないことを示すエラーをクライアントＰＣ１０３に送信し（Ｓ１２２３、Ｄ）、Ｓ１２０１へ戻る。
【００３９】
クライアントＰＣ１０３のプリントシステム３１２は、プリントサーバー１０２から配信要求に対する返信を受け取ると（Ｄ）、プリンタードライバー３１３をダウンロードし（Ｓ１１１１）。ダウンロードが成功したか判定する（Ｓ１１１２）。失敗したと判定すれば、プリントサーバー１０２にクライアントＰＣ１０３に対応するプリンタードライバーがないこと示すエラーを表示し（Ｓ１１０９）、処理を終了する。ダウンロードが成功したと判定すれば、ダウンロードしたプリンタードライバー３１３をインストールする（Ｓ１１１３）。さらに、プリントシステム３１２は、選択したプリントサーバー１０２の共有プリンターに対応したプリンターオブジェクトをコントロールパネルに作成し（Ｓ１１１４）、処理を終了する。
【００４０】
以上の工程によって、クライアントＰＣ１０３のＯＳの言語設定に適合したプリンタードライバー３１３を、ポイントアンドプリントによってプリントサーバー１０２から自動的に配信することを実現できる。また、言語設定に適合したプリンタードライバー３１３がプリントサーバー１０２になければ、標準言語に設定されたプリンタードライバー３１３を配信することを実現できる。
【００４１】
［実施例２］
実施例１は、プリントサーバー１０２に代替プリンタードライバー３１３をインストール時にプリンタードライバー言語設定画面１０００を表示してユーザーが言語設定を行う例であった。しかし、インストールする代替プリンタードライバー３１３が対応している言語を事前に把握しておく必要があり、間違って実際と違う言語を設定してしまう恐れがあった。
【００４２】
実施例２では、セットアップ情報ファイル（ｉｎｆファイル）に各プリンタードライバーの対応言語を記述できるようにする。また、１つのセットアップ情報ファイルに複数の言語用プリンタードライバーの記述をできるようにする。そして、配信プリンタードライバー管理画面４００のドライバー追加処理（Ｓ５０３）のＳ６０４で、指定したセットアップ情報ファイルからインストール可能な言語のリストを表示し、ユーザーがそのリストから選択するようにする。図１５は、対応言語の記述と複数の言語用プリンタードライバーの記述をできるようにしたセットアップ情報ファイルの一例である。このセットアップ情報ファイルの“[CANON.NTx86]”セクションで、“device-description”の第二パラメータの“language-descriptor”で言語を記述している。言語の記述は、ＩＳＯ６３９の２ 桁の小文字の言語コードと、ＩＳＯ３１６６の２桁の大文字の国または地域コードを組み合わせたＲＦＣ４６４６に基づいた書式である。例えば、“ｊａ−ＪＰ”は日本語（日本）、“ｅｎ−ＧＢ”は英語（英国）、“ｅｎ−ＵＳ”は英語（米国）を表す。図１５のセットアップ情報ファイルの場合、同じ機種に対して日本語（日本）、英語（英国）、英語（米国）の３つの言語のプリンタードライバーをインストール可能である。
【００４３】
図１６は、実施例２におけるク配信プリンタードライバー管理画面４００のドライバー追加処理（Ｓ５０３）の詳細なフローを示す。図６と同じ番号のものは実施例１と同じものを表し、説明は省略する。以下、詳細に説明する。
【００４４】
Ｓ６０６でインストールしたいＣＰＵと機種に対応したプリンタードライバーが含まれると判定すれば、Ｓ６０４で指定したセットアップ情報ファイルに対応言語が記述されているか判定する（Ｓ１６０１）。対応言語が記述されていなければ、Ｓ６０７へ進む。対応言語が記述されていれば、セットアップ情報ファイル内に記述された対応言語のリストを表示する（Ｓ１６０２）。ユーザーは、この画面によってどの言語に対応したプリンタードライバーをインストールするか選択する。図１７は、図１５のセットアップ情報ファイルの場合の対応言語を選択する画面の一例である。ユーザーが言語リスト１７０１から１つを選択し、ＯＫボタン１７０２を押す。すると、言語リスト１７０１の選択されている言語を、インストールする代替プリンタードライバー３０３の言語としてＲＡＭ２０２２内のワーク領域に記憶し、プリンタードライバー言語選択画面１７００を閉じる。次に、ＲＡＭ２０２２内のワーク領域に記憶した言語に適合する代替プリンタードライバー３０３を、指定したセットアップ情報ファイルを用いてインストールし（Ｓ１６０３）、Ｓ６０９へ進む。
【００４５】
以上の工程によって、インストール可能な言語対応プリンタードライバーのリストからユーザーが選択したプリンタードライバーの対応言語を適切に設定することができる。そのため、ユーザーが実際のプリンタードライバーの対応言語と違う言語を設定してしまう恐れがなくなる。更に、セットアップ情報ファイルを複数の対応言語をまとめて１つにすることができ、ユーザーも言語分のインストールセットを用意する必要がなくなる。
【符号の説明】
【００４６】
１０１  プリンター
１０２  プリントサーバー
１０３  クライアントＰＣ
【図１】
2013130985.tif 000003
【図２】
2013130985.tif 000004
【図３】
2013130985.tif 000005
【図４】
2013130985.tif 000006
【図５】
2013130985.tif 000007
【図６】
2013130985.tif 000008
【図７】
2013130985.tif 000009
【図８】
2013130985.tif 000010
【図９】
2013130985.tif 000011
【図１０】
2013130985.tif 000012
【図１１】
2013130985.tif 000013
【図１２】
2013130985.tif 000014
【図１３】
2013130985.tif 000015
【図１４】
2013130985.tif 000016
【図１５】
2013130985.tif 000017
【図１６】
2013130985.tif 000018
【図１７】
2013130985.tif 000019