(57)【要約】【課題】プリンタドライバのバージョン更新が行われる場合に、サーバーとクライアントＰＣのそれぞれが有するプリンタドライバのバージョンの不整合が生じないように、プリンタドライバのバージョン更新を行う。【解決手段】印刷装置６に印刷ジョブを送信する第１のプリンタドライバを有するサーバー２と、第１のプリンタドライバを介して印刷装置６に印刷ジョブを送信する第２のプリンタドライバを有する情報処理装置４とを備える印刷制御システム１であって、サーバー２は、第１のプリンタドライバの更新プログラムを取得し、取得された第１のプリンタドライバの更新プログラムを実行して第１のプリンタドライバを更新させ、情報処理装置４は、第１のプリンタドライバが更新されたことを検知したことを条件として、第２のプリンタドライバの更新プログラムを実行して第２のプリンタドライバを更新する。【選択図】図１
2018014021.tif 000002
【特許請求の範囲】
【請求項１】
所定の印刷装置に印刷ジョブを送信する第１のプリンタドライバを有するサーバーと、
前記サーバーと通信を行うと共に、前記第１のプリンタドライバを介して前記印刷装置に印刷ジョブを送信する第２のプリンタドライバを有する情報処理装置と、
を備える印刷制御システムであって、
前記サーバーは、
前記第１のプリンタドライバの更新プログラムを取得する第１取得手段と、
前記第１取得手段により取得された前記第１のプリンタドライバの更新プログラムを実行することにより前記第１のプリンタドライバを更新する第１更新手段と、
を備え、
前記情報処理装置は、
前記第１のプリンタドライバが更新されたことを検知する検知手段と、
前記第２のプリンタドライバの更新プログラムを取得する第２取得手段と、
前記検知手段により前記第１のプリンタドライバの更新が検知されたことを条件として、前記第２のプリンタドライバの更新プログラムを実行することによって前記第２のプリンタドライバを更新する第２更新手段と、
を備えることを特徴とする印刷制御システム。
【請求項２】
前記第１更新手段は、前記第１のプリンタドライバの更新プログラムを実行することにより、前記第１のプリンタドライバに対応する新バージョンプログラムをインストールすることを特徴とする請求項１に記載の印刷制御システム。
【請求項３】
前記第１更新手段は、前記第１のプリンタドライバに対応する新バージョンプログラムをインストールすると共に、前記第１のプリンタドライバに対応する旧バージョンプログラムを消去することを特徴とする請求項２に記載の印刷制御システム。
【請求項４】
前記第２のプリンタドライバは、前記第１のプリンタドライバに関連付けられており、
前記第１更新手段により前記旧バージョンプログラムが消去されると、前記第２のプリンタドライバと前記第１のプリンタドライバとの関連付けが解消され、
前記検知手段は、前記第１のプリンタドライバとの関連付けが解消されると、前記第１のプリンタドライバが更新されたことを検知することを特徴とする請求項３に記載の印刷制御システム。
【請求項５】
前記情報処理装置は、
ユーザーによる操作入力を受け付ける入力受付手段と、
前記第２のプリンタドライバに対応付けられるプリントキュー画像を所定の表示手段に表示させると共に、前記入力受付手段により前記プリントキュー画像を選択する操作入力が受け付けられると、前記第２のプリンタドライバに対応する印刷設定画面を表示させる表示制御手段と、
前記表示手段に前記印刷設定画面が表示されている状態で、ユーザーによる操作入力に応じて印刷設定を行う設定手段と、
をさらに備え、
前記表示制御手段は、前記第１のプリンタドライバと前記第２のプリンタドライバとの関連付けが解消されている状態で、前記入力受付手段により前記プリントキュー画像を選択する操作入力が受け付けられた場合に、前記印刷設定画面を表示させないことを特徴とする請求項４に記載の印刷制御システム。
【請求項６】
前記第２更新手段は、前記第２のプリンタドライバの更新プログラムを実行することにより、前記第２のプリンタドライバに対応する新バージョンプログラムをインストールすることを特徴とする請求項１乃至５のいずれかに記載の印刷制御システム。
【請求項７】
前記第２更新手段は、前記第２のプリンタドライバに対応する新バージョンプログラムをインストールすると共に、前記第２のプリンタドライバに対応する旧バージョンプログラムを消去することを特徴とする請求項６に記載の印刷制御システム。
【請求項８】
前記サーバーは、
前記第１のプリンタドライバの識別情報を管理する識別情報管理手段と、
予め更新対象となるプリンタドライバの識別情報を設定されている更新プログラムを受け付ける受付手段と、
前記受付手段により受け付けられる更新プログラムが、前記第１のプリンタドライバの更新プログラムであるか否かを判定する判定手段と、
をさらに備え、
前記判定手段は、前記受付手段により更新プログラムが受け付けられると、前記識別情報管理手段から前記第１のプリンタドライバの識別情報を取得すると共に、当該更新プログラムに設定されているプリンタドライバの識別情報が前記第１のプリンタドライバの識別情報と一致する場合に、当該更新プログラムを前記第１のプリンタドライバの更新プログラムであると判定し、
前記第１更新手段は、前記判定手段により前記第１のプリンタドライバの更新プログラムであると判定された更新プログラムを実行して、前記第１のプリンタドライバを更新することを特徴とする請求項１乃至７のいずれかに記載の印刷制御システム。
【請求項９】
前記サーバーは、
前記第２のプリンタドライバの更新プログラムを記憶する記憶手段と、
前記情報処理装置からの要求に応じて、前記記憶手段に記憶されている前記第２のプリンタドライバの更新プログラムを前記情報処理装置に送信する送信手段と、
をさらに備え、
前記情報処理装置は、
前記検知手段により前記第１のプリンタドライバが更新されたことが検知されると、前記サーバーに対して前記第２のプリンタドライバの更新プログラムを要求する要求手段、
をさらに備え、
前記第２取得手段は、前記サーバーから送信される前記第２のプリンタドライバの更新プログラムを取得し、
前記第２更新手段は、前記第２取得手段により取得された前記第２のプリンタドライバの更新プログラムを実行することにより、前記第２のプリンタドライバを更新させることを特徴とする請求項１乃至８のいずれかに記載の印刷制御システム。
【請求項１０】
前記サーバーは、所定の印刷装置に印刷ジョブを送信する前記第１のプリンタドライバとは異なる第３のプリンタドライバを有し、
前記第１取得手段は、前記第３のプリンタドライバの更新プログラムを取得し、
前記第１更新手段は、前記第１取得手段により取得された前記第３のプリンタドライバの更新プログラムを実行することにより、前記第３のプリンタドライバを更新することを特徴とする請求項１乃至９のいずれかに記載の印刷制御システム。
【請求項１１】
前記情報処理装置は、前記第３のプリンタドライバを介して所定の印刷装置に印刷ジョブを送信する第４のプリンタドライバを有し、
前記検知手段は、前記第４のプリンタドライバが更新されたことを検知し、
前記第２取得手段は、前記第４のプリンタドライバの更新プログラムを取得し、
前記第２更新手段は、前記第２取得手段により取得された前記第４のプリンタドライバの更新プログラムを実行することによって、前記第４のプリンタドライバを更新することを特徴とする請求項１０に記載の印刷制御システム。
【請求項１２】
所定の印刷装置に印刷ジョブを送信する第１のプリンタドライバを有すると共に、前記第１のプリンタドライバを介して前記印刷装置に印刷ジョブを送信する第２のプリンタドライバを有する情報処理装置と通信可能なサーバーであって、
前記第１のプリンタドライバの更新プログラムを取得する取得手段と、
前記取得手段により取得された前記第１のプリンタドライバの更新プログラムを実行することにより前記第１のプリンタドライバを更新する更新手段と、
前記第２のプリンタドライバの更新プログラムを記憶する記憶手段と、
前記情報処理装置からの要求に応じて、前記記憶手段に記憶されている前記第２のプリンタドライバの更新プログラムを前記情報処理装置に送信する送信手段と、
を備えることを特徴とするサーバー。
【請求項１３】
所定の印刷装置に印刷ジョブを送信する第１のプリンタドライバを有するサーバーと通信を行うと共に、前記第１のプリンタドライバを介して前記印刷装置に印刷ジョブを送信する第２のプリンタドライバを有する情報処理装置であって、
前記第１のプリンタドライバが更新されたことを検知する検知手段と、
前記第２のプリンタドライバの更新プログラムを取得する取得手段と、
前記検知手段により前記第１のプリンタドライバの更新が検知されたことを条件として、前記第２のプリンタドライバの更新プログラムを実行することによって前記第２のプリンタドライバを更新する更新手段と、
を備えることを特徴とする情報処理装置。
【請求項１４】
前記第２のプリンタドライバは、前記第１のプリンタドライバに関連付けられており、
前記サーバーにより前記第１のプリンタドライバが更新されると、前記第２のプリンタドライバと前記第１のプリンタドライバとの関連付けが解消され、
前記検知手段は、前記サーバーにより前記第１のプリンタドライバが更新されたことによって前記関連付けが解消されると、前記第１のプリンタドライバが更新されたことを検知することを特徴とする請求項１３に記載の情報処理装置。
【請求項１５】
ユーザーによる操作入力を受け付ける入力受付手段と、
前記第２のプリンタドライバに対応付けられるプリントキュー画像を所定の表示手段に表示させると共に、前記入力受付手段により前記プリントキュー画像を選択する操作入力が受け付けられると、前記第２のプリンタドライバに対応する印刷設定画面を表示させる表示制御手段と、
前記表示手段に前記印刷設定画面が表示されている状態で、ユーザーによる操作入力に応じて印刷設定を行う設定手段と、
をさらに備え、
前記表示制御手段は、前記第１のプリンタドライバと前記第２のプリンタドライバとの関連付けが解消されている状態で、前記入力受付手段により前記プリントキュー画像を選択する操作入力が受け付けられた場合に、前記印刷設定画面を表示させないことを特徴とする請求項１４に記載の情報処理装置。
【請求項１６】
所定の印刷装置に印刷ジョブを送信する第１のプリンタドライバを有すると共に、前記第１のプリンタドライバを介して前記印刷装置に印刷ジョブを送信する第２のプリンタドライバを有する情報処理装置と通信可能なサーバーにおいて実行されるプログラムであって、
前記サーバーを、
前記第１のプリンタドライバの更新プログラムを取得する取得手段、
前記取得手段により取得された前記第１のプリンタドライバの更新プログラムを実行することにより前記第１のプリンタドライバを更新する更新手段、及び、
前記情報処理装置からの要求に応じて、前記サーバーが備える記憶手段に記憶されている前記第２のプリンタドライバの更新プログラムを前記情報処理装置に送信する送信手段、
として機能させることを特徴とするプログラム。
【請求項１７】
所定の印刷装置に印刷ジョブを送信する第１のプリンタドライバを有するサーバーと通信を行うと共に、前記第１のプリンタドライバを介して前記印刷装置に印刷ジョブを送信する第２のプリンタドライバを有する情報処理装置において実行されるプログラムであって、
前記情報処理装置を、
前記第１のプリンタドライバが更新されたことを検知する検知手段、
前記第２のプリンタドライバの更新プログラムを取得する取得手段、及び、
前記検知手段により前記第１のプリンタドライバの更新が検知されたことを条件として、前記第２のプリンタドライバの更新プログラムを実行することによって前記第２のプリンタドライバを更新する更新手段、
として機能させることを特徴とするプログラム。
【請求項１８】
前記サーバーは、前記第１のプリンタドライバを更新する際に、前記第２のプリンタドライバとの関連付けを解消し、
前記検知手段は、前記サーバーにより前記第１のプリンタドライバと前記第２のプリンタドライバとの関連付けが解消されると、前記第１のプリンタドライバが更新されたことを検知することを特徴とする請求項１７に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷制御システム、サーバー、情報処理装置及びプログラムに関し、特にプリンタドライバを更新させる技術に関する。
【背景技術】
【０００２】
従来、パーソナルコンピュータ（ＰＣ）やプリンタなどの各種デバイスのネットワーク化が進んでおり、複数のＰＣが１台のプリンタを共有して使用する形態が提供されている。例えばオフィスにおいて、ネットワークに制御用のプリントサーバーを設置し、このプリントサーバーにより各クライアントＰＣからの印刷ジョブを管理する方法が知られている。
【０００３】
このようなネットワーク環境において、ｗｉｎｄｏｗｓ（登録商標）が提供するＰｏｉｎｔ  ａｎｄ  Ｐｒｉｎｔ（ポイントアンドプリント）により、プリントサーバーからクライアントＰＣにプリンタドライバを送信する手法が利用されている。ポイントアンドプリントによると、プリントサーバーに対してプリントサーバーが共有するプリンタのプリンタドライバが予めインストールされている。クライアントＰＣでは、プリントサーバーが共有するプリンタを指定することにより、プリンタドライバがプリントサーバーからクライアントＰＣにダウンロードされる。この方法によれば、各クライアントＰＣにてプリンタドライバが記憶された媒体を用意する必要がなく、プリントサーバーが共有するプリンタを容易に利用可能である。
【０００４】
また、ポイントアンドプリントによると、プリントサーバーが共有するプリンタのプリンタドライバに関するセキュリティパッチなどが、プリンタや当該セキュリティパッチなどが記憶される記憶媒体からプリントサーバーに供給されると、プリントサーバーから当該プリンタドライバがインストールされている各クライアントＰＣに対して自動的にセキュリティパッチがダウンロードされる。これにより、プリントサーバーが有するプリンタドライバと、クライアントＰＣが有するプリンタドライバを同じ状態に保つことができる。
【０００５】
しかしながらポイントアンドプリントによると、オペレーティングシステム（ＯＳ）により認識されていないプリンタドライバ機能データファイルは、プリントサーバーからクライアントＰＣに自動的にダウンロードされない。そこで、プリンタドライバに対する機能データファイルが追加されると、プリンタドライバがこの追加された機能データファイルを検出してインストールすると共に、ＯＳに対して当該機能データファイルの追加を認識させ、このプリンタドライバを有するクライアントＰＣに対して当該機能データファイルをダウンロードさせる技術が提案されている（例えば特許文献１）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２５８６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、プリンタドライバのバージョン更新が行われ、旧バージョンのプリンタドライバを消去すると共に、新バージョンのプリンタドライバをインストールする場合、新旧のプリンタドライバの置換が行われるため、上記特許文献１に開示されるプリンタドライバによっても、新バージョンのプリンタドライバを検出できないため、新バージョンのプリンタドライバを自動的にクライアントＰＣにダウンロードさせることができない。そうすると、プリントサーバーが有するプリンタドライバのバージョンと、クライアントＰＣが有するプリンタドライバのバージョンが異なる場合が生じ、両者の互換性が損なわれるという問題点がある。殊に、プリントサーバーが旧バージョンのプリンタドライバを有し、クライアントＰＣが新バージョンのプリンタドライバを有する場合に、プリントサーバーがクライアントＰＣから受信した印刷ジョブを認識できず、プリンタから適切に出力されないことが生じる。
【０００８】
そこで、本発明は、上記問題点を解決するべく、プリンタドライバのバージョン更新が行われる場合に、サーバーとクライアントＰＣのそれぞれが有するプリンタドライバのバージョンの不整合が生じないようにプリンタドライバのバージョン更新を行うことが可能な印刷制御システム、サーバー、情報処理装置及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するため、請求項１の発明は、所定の印刷装置に印刷ジョブを送信する第１のプリンタドライバを有するサーバーと、前記サーバーと通信を行うと共に、前記第１のプリンタドライバを介して前記印刷装置に印刷ジョブを送信する第２のプリンタドライバを有する情報処理装置とを備える印刷制御システムであって、前記サーバーは、前記第１のプリンタドライバの更新プログラムを取得する第１取得手段と、前記第１取得手段により取得された前記第１のプリンタドライバの更新プログラムを実行することにより、前記第１のプリンタドライバを更新する第１更新手段とを備え、前記情報処理装置は、前記第１のプリンタドライバが更新された殊を検知する検知手段と、前記第２のプリンタドライバの更新プログラムを取得する第２取得手段と、前記検知手段により前記第１のプリンタドライバの更新が検知されたことを条件として、前記第２のプリンタドライバの更新プログラムを実行することによって前記第２のプリンタドライバを更新する第２更新手段とを備えることを特徴とする構成である。
【００１０】
請求項２の発明は、請求項１に記載の印刷制御システムにおいて、前記第１更新手段は、前記第１のプリンタドライバの更新プログラムを実行することにより、前記第１のプリンタドライバに対応する新バージョンプログラムをインストールすることを特徴とする構成である。
【００１１】
請求項３の発明は、請求項２に記載の印刷制御システムにおいて、前記第１更新手段は、前記第１のプリンタドライバに対応する新バージョンプログラムをインストールすると共に、前記第１のプリンタドライバに対応する旧バージョンプログラムを消去することを特徴とする構成である。
【００１２】
請求項４の発明は、請求項３に記載の印刷制御システムにおいて、前記第１のプリンタドライバと前記第２のプリンタドライバとは相互に関連付けられており、前記第１更新手段は、前記旧バージョンプログラムを消去する際に、前記第２のプリンタドライバとの関連付けを解消し、前記検知手段は、前記第１のプリンタドライバとの関連付けが解消されると、前記第１のプリンタドライバが更新されたことを検知することを特徴とする構成である。
【００１３】
請求項５の発明は、請求項４に記載の印刷制御システムにおいて、前記情報処理装置は、ユーザーによる操作入力を受け付ける入力受付手段と、前記第２のプリンタドライバに対応付けられるプリントキュー画像を所定の表示手段に表示させると共に、前記入力受付手段により前記プリントキュー画像を選択する操作入力が受け付けられると、前記第２のプリンタドライバに対応する印刷設定画面を表示させる表示制御手段と、前記表示手段に前記印刷設定画面が表示されている状態で、ユーザーによる操作入力に応じて印刷設定を行う設定手段とをさらに備え、前記表示制御手段は、前記第１のプリンタドライバと前記第２プリンタドライバ１１４との関連付けが解消されている状態で、前記入力受付手段により前記プリントキュー画像を選択する操作入力が受け付けられた場合に、前記印刷設定画面を表示させないことを特徴とする構成である。
【００１４】
請求項６の発明は、請求項１乃至５のいずれかに記載の印刷制御システムにおいて、前記第２更新手段は、前記第２のプリンタドライバの更新プログラムを実行することにより、前記第２のプリンタドライバに対応する新バージョンプログラムをインストールすることを特徴とする構成である。
【００１５】
請求項７の発明は、請求項６に記載の印刷制御システムにおいて、前記第２更新手段は、前記第２のプリンタドライバに対応する新バージョンプログラムをインストールすると共に、前記第２のプリンタドライバに対応する旧バージョンプログラムを消去することを特徴とする構成である。
【００１６】
請求項８の発明は、請求項１乃至７のいずれかに記載の印刷制御システムにおいて、前記サーバーは、前記第１のプリンタドライバの識別情報を管理する識別情報管理手段と、予め更新対象となるプリンタドライバの識別情報を設定されている更新プログラムを受け付ける受付手段と、前記受付手段により受け付けられる更新プログラムが、前記第１のプリンタドライバの更新プログラムであるか否かを判定する判定手段とをさらに備え、前記判定手段は、前記受付手段により更新プログラムが受け付けられると、前記識別情報管理手段から前記第１のプリンタドライバの識別情報を取得すると共に、当該更新プログラムに設定されているプリンタドライバの識別情報が前記第１のプリンタドライバの識別情報と一致する場合に、当該更新プログラムを前記第１のプリンタドライバの更新プログラムであると判定し、前記第１更新手段は、前記判定手段により前記第１のプリンタドライバの更新プログラムであると判定された更新プログラムを実行して、前記第１のプリンタドライバを更新することを特徴とする構成である。
【００１７】
請求項９の発明は、請求項１乃至８のいずれかに記載の印刷制御システムにおいて、前記サーバーは、前記第２のプリンタドライバの更新プログラムを記憶する記憶手段と、前記情報処理装置からの要求に応じて、前記記憶手段に記憶されている前記第２のプリンタドライバの更新プログラムを前記情報処理装置に送信する送信手段をさらに備え、前記情報処理装置は、前記検知手段により前記第１のプリンタドライバが更新されたことが検知されると、前記サーバーに対して前記第２のプリンタドライバの更新プログラムを要求する要求手段をさらに備え、前記第２取得手段は、前記サーバーから送信される前記第２のプリンタドライバの更新プログラムを取得し、前記第２更新手段は、前記第２取得手段により取得された前記第２のプリンタドライバの更新プログラムを実行することにより、前記第２のプリンタドライバを更新させることを特徴とする構成である。
【００１８】
請求項１０の発明は、請求項１乃至９のいずれかに記載の印刷制御システムにおいて、前記サーバーは、所定の印刷装置に印刷ジョブを送信する前記第１のプリンタドライバとは異なる第３のプリンタドライバを有し、前記第１取得手段は、前記第３のプリンタドライバの更新プログラムを取得し、前記第１更新手段は、前記第１取得手段により取得された前記第３のプリンタドライバの更新プログラムを実行することにより、前記第３のプリンタドライバを更新することを特徴とする構成である。
【００１９】
請求項１１の発明は、請求項１０に記載の印刷制御システムにおいて、前記情報処理装置は、前記第３のプリンタドライバを介して所定の印刷装置に印刷ジョブを送信する第４のプリンタドライバを有し、前記検知手段は、前記第４のプリンタドライバが更新されたことを検知し、前記第２取得手段は、前記第４のプリンタドライバの更新プログラムを取得し、前記第２更新手段は、前記第２取得手段により取得された前記第４のプリンタドライバの更新プログラムを実行することによって、前記第４のプリンタドライバを更新することを特徴とする構成である。
【００２０】
請求項１２の発明は、所定の印刷装置に印刷ジョブを送信する第１のプリンタドライバを有すると共に、前記第１のプリンタドライバを介して前記印刷装置に印刷ジョブを送信する第２のプリンタドライバを有する情報処理装置と通信可能なサーバーであって、前記第１のプリンタドライバの更新プログラムを取得する取得手段と、前記取得手段により取得された前記第１のプリンタドライバの更新プログラムを実行することにより前記第１のプリンタドライバを更新する更新手段と、前記第２のプリンタドライバの更新プログラムを記憶する記憶手段と、前記情報処理装置からの要求に応じて、前記記憶手段に記憶されている前記第２のプリンタドライバの更新プログラムを前記情報処理装置に送信する送信手段とを備えることを特徴とする構成である。
【００２１】
請求項１３の発明は、所定の印刷装置に印刷ジョブを送信する第１のプリンタドライバを有するサーバーと通信を行うと共に、前記第１のプリンタドライバを介して前記印刷装置に印刷ジョブを送信する第２のプリンタドライバを有する情報処理装置であって、前記第１のプリンタドライバが更新されたことを検知する検知手段と、前記第２のプリンタドライバの更新プログラムを取得する取得手段と、前記検知手段により前記第１のプリンタドライバの更新が検知されたことを条件として、前記第２のプリンタドライバの更新プログラムを実行することによって前記第２のプリンタドライバを更新する更新手段とを備えることを特徴とする構成である。
【００２２】
請求項１４の発明は、請求項１３に記載の情報処理装置において、前記サーバーは、前記第１のプリンタドライバを更新する際に、前記第２のプリンタドライバとの関連付けを解消し、前記検知手段は、前記サーバーにより前記第１のプリンタドライバと前記第２のプリンタドライバとの関連付けが解消されると、前記第１のプリンタドライバが更新されたことを検知することを特徴とする構成である。
【００２３】
請求項１５の発明は、請求項１４に記載の情報処理装置において、ユーザーによる操作入力を受け付ける入力受付手段と、前記第２のプリンタドライバに対応付けられるプリントキュー画像を所定の表示手段に表示させると共に、前記入力受付手段により前記プリントキュー画像を選択する操作入力が受け付けられると、前記第２のプリンタドライバに対応する印刷設定画面を表示させる表示制御手段と、前記表示手段に前記印刷設定画面が表示されている状態で、ユーザーによる操作入力に応じて印刷設定を行う設定手段とをさらに備え、前記表示制御手段は、前記第１のプリンタドライバと前記第２のプリンタドライバとの関連付けが解消されている状態で、前記入力受付手段により前記プリントキュー画像を選択する操作入力が受け付けられた場合に、前記印刷設定画面を表示させないことを特徴とする構成である。
【００２４】
請求項１６の発明は、所定の印刷装置に印刷ジョブを送信する第１のプリンタドライバを有すると共に、前記第１のプリンタドライバを介して前記印刷装置に印刷ジョブを送信する第２のプリンタドライバを有する情報処理装置と通信可能なサーバーにおいて実行されるプログラムであって、前記サーバーを、前記第１のプリンタドライバの更新プログラムを取得する取得手段と、前記取得手段により取得された前記第１のプリンタドライバの更新プログラムを実行することにより前記第１のプリンタドライバを更新する更新手段と、前記情報処理装置からの要求に応じて、前記サーバーが備える記憶手段に記憶されている前記第２のプリンタドライバの更新プログラムを前記情報処理装置に送信する送信手段として機能させることを特徴とする構成である。
【００２５】
請求項１７の発明は、所定の印刷装置に印刷ジョブを送信する第１のプリンタドライバを有するサーバーと通信を行うと共に、前記第１のプリンタドライバを介して前記印刷装置に印刷ジョブを送信する第２のプリンタドライバを有する情報処理装置において実行されるプログラムであって、前記情報処理装置を、前記第１のプリンタドライバが更新されたことを検知する検知手段と、前記第２のプリンタドライバの更新プログラムを取得する取得手段と、前記検知手段により前記第１のプリンタドライバの更新が検知されたことを条件として、前記第２のプリンタドライバの更新プログラムを実行することによって前記第２のプリンタドライバを更新する更新手段として機能させることを特徴とする構成である。
【００２６】
請求項１８の発明は、請求項１７に記載のプログラムにおいて、前記サーバーは、前記第１のプリンタドライバを更新する際に、前記第２のプリンタドライバとの関連付けを解消し、前記検知手段は、前記サーバーにより前記第１のプリンタドライバと前記第２のプリンタドライバとの関連付けが解消されると、前記第１のプリンタドライバが更新されたことを検知することを特徴とする構成である。
【発明の効果】
【００２７】
本発明によれば、サーバーが有する第１のプリンタドライバが更新されてから、情報処理装置が有する第２のプリンタドライバの更新が行われるため、第２のプリンタドライバのみが更新されるという事態を回避し、第１のプリンタドライバ及び第２のプリンタドライバの不整合が生じることを防止可能である。
【図面の簡単な説明】
【００２８】
【図１】本実施形態における印刷制御システムの全体の構成例を示す図である。
【図２】サーバーの機能構成の一例を示すブロック図である。
【図３】更新ドライバ識別情報の一例を示す図である。
【図４】第１ドライバ識別情報の一例を示す図である。
【図５】第１プリンタドライバの更新の一態様を示す図である。
【図６】情報処理装置の機能構成の一例を示すブロック図である。
【図７】第２ドライバ識別情報の一例を示す図である。
【図８】本実施形態における情報処理装置とサーバーと印刷装置とのデータ通信の一例を示すシーケンス図である。
【図９】本実施形態における情報処理装置とサーバーと印刷装置とのデータ通信の一例を示すシーケンス図である。
【図１０】サーバーにおいて行われる主要な処理手順の一例を示すフローチャートである。
【図１１】サーバーにおいて行われるジョブ実行処理の具体的な処理手順の一例を示すフローチャートである。
【図１２】サーバーにおいて行われる第１更新処理の具体的な処理手順の一例を示すフローチャートである。
【図１３】サーバーにおいて行われる第１置換処理の具体的な処理手順の一例を示すフローチャートである。
【図１４】情報処理装置において行われる主要な処理手順の一例を示すフローチャートである。
【図１５】情報処理装置において行われる印刷設定処理の一例を示すフローチャートである。
【図１６】情報処理装置において行われる第２更新処理の一例を示すフローチャートである。
【図１７】情報処理装置において行われる第２置換処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００２９】
以下、本発明に関する一実施形態を、図面を参照しつつ詳細に説明する。なお、以下に説明する実施形態において、互いに共通する部材には同一符号を付しており、それらの重複する説明は省略する。
【００３０】
図１は、本実施形態における印刷制御システム１の全体構成を示す図である。印刷制御システム１は、サーバー２と、情報処理装置４と、印刷装置６とを備えて構成される。本実施形態では、情報処理装置４ａ（４）と情報処理装置４ｂ（４）とを備える場合を例示するが、情報処理装置４の数はこれに限られず、いずれか一の情報処理装置４のみでもよいし、或いは、３以上の情報処理装置４を備えてもよい。
【００３１】
サーバー２、情報処理装置４及び印刷装置６は、ＬＡＮ（Local Area Network）などのネットワーク７に設けられ、互いに通信可能である。ネットワーク７は、ＬＡＮに限られず、インターネットなどのオープンなネットワークであってもよい。印刷装置６は、少なくともユーザーによって指定された印刷ジョブを実行することができる装置であって、例えばＭＦＰ（Multifunctional Peripherals）などで構成される。印刷装置６は、コピー機能、スキャン機能、印刷機能など複数の機能を備える。ただし、印刷装置６は、必ずしもこれらの複数の機能を備えるものに限られず、少なくとも印刷機能を有するものであればよい。
【００３２】
サーバー２は、情報処理装置４から送信される印刷ジョブを蓄積し、その印刷ジョブを印刷装置６へ送信することが可能なプリントサーバーとして構成される。サーバー２は、印刷装置６に対する印刷ジョブを生成するための第１プリンタドライバ２４を備える。サーバー２は、情報処理装置４ａ又は情報処理装置４ｂから送信された印刷ジョブを受信すると、ハードディスクドライブ（ＨＤＤ）などにより構成される記憶部１２に蓄積し、後に、蓄積された順序に従い蓄積されている印刷ジョブを印刷装置６に送信し、印刷装置６に印刷ジョブを実行させる。
【００３３】
情報処理装置４は、パーソナルコンピュータ（ＰＣ）などにより構成され、ドキュメント等の編集が可能なアプリケーションを有する。そして、編集されたドキュメント等を印刷装置６から印刷出力させるための印刷ジョブを生成することが可能である。情報処理装置４は、サーバー２の第１プリンタドライバ２４と関連付けられる第２プリンタドライバ１１４を備える。第２プリンタドライバ１１４が第１プリンタドライバ２４にどのように関連付けられているかについては、後ほど説明する。情報処理装置４において、第２プリンタドライバ１１４が起動され、印刷装置６で印刷出力するための印刷ジョブが生成されると、第２プリンタドライバ１１４は、生成された印刷ジョブをサーバー２の第１プリンタドライバ２４に送信する。サーバー２は、情報処理装置４から送信された印刷ジョブを受信すると、第１プリンタドライバ２４を起動させて印刷ジョブを登録し、登録された順序により印刷装置６に送信する。
【００３４】
本実施形態において、印刷装置６に対応するプリンタドライバがバージョンアップされる場合、サーバー２には、図２に示すように、管理者などによって第１プリンタドライバ２４のバージョンアップを行う第１更新制御プログラム３６がインストールされる。また、情報処理装置４ａ及び情報処理装置４ｂの各々には、図６に示すように、各ユーザーなどによって第２プリンタドライバ１１４のバージョンアップを行う第２更新制御プログラム１５４がインストールされる。
【００３５】
サーバー２において第１更新制御プログラム３６が実行されると、第１プリンタドライバ２４の旧バージョンの第１プリンタドライバプログラム３２が消去されると共に、新バージョンの第１プリンタドライバプログラム３２がインストールされる。新バージョンのプリンタドライバがインストールされる際に、旧バージョンプログラムにおけるドライバ名や、印刷ジョブの出力先情報は、新バージョンプログラムに承継される。
【００３６】
これに対し、情報処理装置４において第２更新制御プログラム１５４が実行されると、サーバー２において第１プリンタドライバ２４が新バージョンに更新されたことが検知されるまで、第２プリンタドライバ１１４の更新を行わない。その後、第１プリンタドライバ２４が新バージョンに更新されたことが検知されると、情報処理装置４は、サーバー２に第２プリンタドライバ１１４を更新させる第２更新プログラム３４を要求する。第２更新プログラム３４には、新バージョンの第２プリンタドライバプログラム１５２と共に、新バージョンの第２プリンタドライバプログラム１５２をインストールするためのインストーラプログラムが含まれる。そして、サーバー２から第２更新プログラム３４をダウンロードすると、情報処理装置４は旧バージョンの第２プリンタドライバプログラム１５２を消去して、第２更新プログラム３４に含まれる新バージョンの第２プリンタドライバプログラム１５２をインストールする。これにより、サーバー２において第１プリンタドライバ２４の更新が行われた後に、情報処理装置４において第２プリンタドライバ１１４の更新が行われるため、第２プリンタドライバ１１４の更新が第１プリンタドライバ２４の更新に先んじて行われるという事態を防止できる。
【００３７】
次に、上述したような態様にてプリンタドライバの更新を行うサーバー２及び情報処理装置４のそれぞれの構成を説明する。図２は、サーバー２の機能構成の一例を示すブロック図である。サーバー２は、ＣＰＵ１０と、記憶部１２と、情報処理装置４など外部デバイスとの通信におけるインタフェースとなる通信インタフェース１４を備える。
【００３８】
記憶部１２には、第１プリンタドライバ２４の更新を制御する第１更新制御プログラム３６が記憶されており、第１更新制御プログラム３６が実行されることにより、ＣＰＵ１０において更新制御アプリケーション２０として機能する。また、記憶部１２には、図示しないオペレーティングシステムプログラムが記憶されており、このオペレーティングシステムプログラムが実行されることにより、ＣＰＵ１０においてオペレーティングシステム２２として機能する。さらに、記憶部１２には、上述したように第１プリンタドライバプログラム３２が記憶されており、この第１プリンタドライバプログラム３２が実行されることにより、ＣＰＵ１０において第１プリンタドライバ２４として機能する。
【００３９】
更新制御アプリケーション２０は、第１取得部４０と、判定部４２と、第１更新部４６と、要求受付部５０と、更新プログラム送信部５２をさらに備える。第１取得部４０は、第１プリンタドライバ２４の更新プログラムを取得する処理部である。本実施形態において、第１プリンタドライバ２４の更新プログラムは、印刷装置６からサーバー２にダウンロードされ、或いは、管理者等によりサーバー２に入力される。そして、第１プリンタドライバ２４の更新プログラムには、予め更新対象となるプリンタドライバを識別する更新ドライバ識別情報８０が設定されており、このような更新ドライバ識別情報８０が設定されている更新プログラムがサーバー２にダウンロード又は入力されると、第１取得部４０により取得される。図３は、更新ドライバ識別情報８０の一例を示す図である。更新ドライバ識別情報８０は、ドライバ名と、ドライバのバージョン情報と、ドライバファイル名とを有する。ドライバ名は、後述するように印刷設定画面が表示される場合に、プリンタの名称として表示される名称であり、ドライババージョン情報は、更新の対象となるプリンタドライバのバージョン情報を示す。ドライバファイル名は、記憶部１２に記憶されるファイルの名称である。
【００４０】
判定部４２は、第１取得部４０により取得された更新プログラムが、第１プリンタドライバ２４の更新プログラムであるか否かを判定する処理部である。第１取得部４０により更新プログラムが受け付けられると判定部４２が機能し、受け付けられた更新プログラムが第１プリンタドライバ２４の更新プログラムであるか否かを判定する。判定部４２は、オペレーティングシステム２２におけるドライバ識別情報管理部６０に対して、サーバー２にインストールされ、オペレーティングシステム２２により管理されるプリンタドライバを識別する第１ドライバ識別情報３０を要求する。ドライバ識別情報管理部６０は、第１ドライバ識別情報３０を管理する処理部であり、判定部４２からの要求に基づき、第１ドライバ識別情報３０を送信する。第１ドライバ識別情報３０を取得すると、判定部４２は、更新プログラムに予め設定される更新ドライバ識別情報８０と第１ドライバ識別情報３０とを突き合わせて、ドライバ名とドライババージョンと、ドライバファイル名とが互いに一致する場合、更新プログラムを第１プリンタドライバ２４の更新プログラムであると判定する。図４は、第１ドライバ識別情報３０の一例を示す図である。第１ドライバ識別情報３０は、図３に示した更新ドライバ識別情報８０と同じく、ドライバ名と、ドライババージョン情報と、ドライバファイル名とを有する。判定部４２は、更新ドライバ識別情報８０とドライバ識別情報８２とを突き合わせて、ドライバ名などが一致する場合には更新プログラムが第１プリンタドライバ２４の更新プログラムであると判定し、第１プリンタドライバ２４の更新を進める。図３と図４の例では、ドライバ名が「ＡＢＣ  Ｃ９９９  ＸＰＳ」であるプリンタドライバのドライバ識別情報８２と更新ドライバ識別情報８０とが一致する。そこで、判定部４２は、このプリンタドライバの更新プログラムが第１取得部４０により取得されたものと判定する。他方、ドライバ識別情報８２と更新ドライバ識別情報８０にドライバ名などが一致するものが存在しない場合、更新制御アプリケーション２０は、更新ドライバ識別情報８０に対応する更新プログラムを破棄する。
【００４１】
判定部４２により第１プリンタドライバ２４の更新プログラムであると判定されると、第１更新部４６が機能する。第１更新部４６は、第１取得部４０により取得され、判定部４２により第１プリンタドライバ２４の更新プログラムであると判定された更新プログラムを実行することにより、第１プリンタドライバ２４を更新する処理部である。第１更新部４６は、第１プリンタドライバ２４の更新プログラムを実行すると、第１プリンタドライバ２４の新バージョンプログラムをインストールすると共に、旧バージョンプログラムを消去する。新バージョンプログラムをインストールする際に、第１更新部４６は、例えば、旧バージョンプログラムにおいて設定されていた出力先となる印刷装置６のＩＰアドレスなどを新バージョンプログラムにおいて設定する。これにより、旧バージョンプログラムの設定を新バージョンプログラムに承継させるのである。
【００４２】
図５は、第１プリンタドライバ２４の更新態様の一例を示す図である。図５（ａ）は、第１プリンタドライバ２４の旧バージョンプログラムの一例を示す図である。記憶部１２には、旧バージョンの第１プリンタドライバプログラム３２ａと、第１プリンタドライバプログラム３２ｂが記憶されている。旧バージョンプログラムが消去されて新バージョンプログラムがインストールされると、図５（ｂ）に示すように、新バージョンの第１プリンタドライバプログラム３２ａ及び３２ｂとが記憶部１２に記憶されており、旧バージョンの第１プリンタドライバプログラム３２ａ及び３２ｂは消去されている。そして、新バージョンの第１プリンタドライバプログラム３２ａ及び３２ｂがインストールされる際に、第１更新部４６は、旧バージョンの第１プリンタドライバプログラム３２ａ及び３２ｂに設定されていた出力先となる印刷装置６のＩＰアドレスなどを読み出して、新バージョンの第１プリンタドライバプログラム３２ａ及び３２ｂに反映させる。これにより、新バージョンの第１プリンタドライバプログラム３２ａ及び３２ｂは、旧バージョンの第１プリンタドライバプログラム３２ａ及び３２ｂにおける設定を引き継ぐことができるのである。
【００４３】
図５（ｂ）の例は、旧バージョンの第１プリンタドライバプログラム３２ａに対応する新バージョンの第１プリンタドライバプログラム３２ａがインストールされると共に、旧バージョンの第１プリンタドライバプログラム３２ｂに対応する新バージョンの第１プリンタドライバプログラム３２ｂがインストールされる場合を示したものである。すなわち、一の第１プリンタドライバプログラム３２に対して一の第１プリンタドライバプログラム３２が各々置換される場合である。これに対して、図５（ｃ）に示すように、旧バージョンの第１プリンタドライバプログラム３２ａ及び３２ｂを消去して、新バージョンの第１プリンタドライバプログラム３２ａ及び３２ｂのいずれにも対応する一の第１プリンタドライバプログラム３２をインストールしてもよい。例えば、ユニバーサルプリンタドライバ（ＵＰＤ）のように、一のドライバによって複数の印刷装置に対する印刷ジョブを生成可能なドライバプログラムを用いることにより、新バージョンの一の第１プリンタドライバプログラム３２により、旧バージョンの第１プリンタドライバプログラム３２ａ及び３２ｂのいずれの設定も承継することが可能となる。
【００４４】
以下に示すように、第２プリンタドライバ１１４は、第１プリンタドライバ２４に関連付けられている。サーバー２に第１プリンタドライバプログラム３２がインストールされると、オペレーティングシステム２２は、第１プリンタドライバプログラム３２を実行して第１プリンタドライバ２４を起動させ、ＣＰＵ１０に常駐させる。次に情報処理装置４がサーバー２にアクセスして、共有化可能な第１プリンタドライバ２４の共有化を要求する。本実施形態における第１プリンタドライバ２４の共有化とは、情報処理装置４が第１プリンタドライバ２４を利用して印刷出力を行えるようにすることである。この共有化により、第１プリンタドライバ２４は、情報処理装置４により生成される印刷ジョブを蓄積することが可能になると共に、印刷装置６に印刷ジョブを実行させることができるようになる。また、この共有化により、第１プリンタドライバ２４は、情報処理装置４により生成されるドキュメントデータを受信すると、印刷装置６に実行させるための印刷ジョブを生成することができるようになる。
【００４５】
本実施形態において、サーバー２の記憶部１２には、第２プリンタドライバ１１４として機能する第２プリンタドライバプログラム１５２が予め記憶されている。情報処理装置４から第１プリンタドライバ２４の共有化要求を受信すると、サーバー２は、記憶部１２に記憶されている第２プリンタドライバプログラム１５２を、情報処理装置４にダウンロードさせる。第２プリンタドライバプログラム１５２では、第２プリンタドライバ１１４から印刷ジョブやドキュメントデータを送信する送信先として第１プリンタドライバ２４が予め設定されている。情報処理装置４は、ダウンロードされた第２プリンタドライバプログラム１５２をインストールし、第２プリンタドライバ１１４として機能させる。例えば第２プリンタドライバ１１４は、印刷ジョブを生成すると、第１プリンタドライバ２４に送信する。第２プリンタドライバ１１４から送信された印刷ジョブを受信すると、第１プリンタドライバ２４は、受信した印刷ジョブを蓄積し、所定タイミングにおいて印刷装置６に送信する。上述したように、第２プリンタドライバプログラム１５２において、印刷ジョブ等の送信先が第１プリンタドライバ２４に予め設定されている。そのため、第２プリンタドライバプログラム１５２が情報処理装置４にインストールされて第２プリンタドライバ１１４として機能すると、第２プリンタドライバ１１４から印刷ジョブやドキュメントデータが第１プリンタドライバ２４に送信される。すなわち、情報処理装置４は、印刷ジョブ等の送信先として第１プリンタドライバ２４が予め設定されている第２プリンタドライバプログラム１５２をサーバー２からダウンロードすると共に、第２プリンタドライバプログラム１５２をインストールして第２プリンタドライバ１１４として機能させる。第２プリンタドライバプログラム１５２がインストールされたときから、第２プリンタドライバ１１４には、印刷ジョブやドキュメントデータの送信先として第１プリンタドライバ２４が設定されている。そして、第２プリンタドライバ１１４は印刷ジョブを生成すると、当該印刷ジョブを第１プリンタドライバ２４へ送信する。すなわち、第２プリンタドライバ１１４は、第１プリンタドライバ２４を印刷ジョブ等の送信先とし、第１プリンタドライバ２４に関連付けられているのである。これにより、例えば印刷装置６のＩＰアドレスが変更された場合において、情報処理装置４は、印刷装置６の変更後のＩＰアドレスを認識していなくとも、サーバー２の第１プリンタドライバ２４に印刷ジョブを送信することにより、印刷装置６に印刷ジョブを実行させることが可能となる。
【００４６】
図６に示すように、情報処理装置４が起動すると、オペレーティングシステム１１２は、オペレーティングシステム１１２により管理される第２プリンタドライバ１１４の印刷ジョブ送信先を参照し、送信先である第１プリンタドライバ２４を備えるサーバー２にアクセスする。上述したように、第１プリンタドライバ２４はサーバー２において常時起動状態にある。サーバー２において、第１更新部４６により第１プリンタドライバ２４の旧バージョンプログラムが消去されると、サーバー２に継続してアクセスしている情報処理装置４は、第１プリンタドライバ２４が消去されたことを検知する。第１プリンタドライバ２４は、第２プリンタドライバ１１４から印刷ジョブやドキュメントデータが送信される送信先である。第１プリンタドライバ２４がサーバー２から消去されると、第２プリンタドライバ１１４から印刷ジョブ等の送信が不可能となるため、第２プリンタドライバ１１４はオフライン状態となり、ユーザーによる選択不能な状態になる。後述するように、情報処理装置４は、サーバー２において第１プリンタドライバ２４の旧バージョンプログラムが消去されたことにより、第２プリンタドライバ１１４がオフライン状態になると、第１プリンタドライバ２４の更新が行われたことを検知する。そして、情報処理装置４は、サーバー２に対し、記憶部１２に記憶されている第２プリンタドライバ１１４を更新させる第２更新プログラム３４を要求する。
【００４７】
要求受付部５０は、情報処理装置４からの第２更新プログラム３４の要求が通信インタフェース１４を経由して受信されると機能し、受信された要求を受け付ける処理部である。要求受付部５０により要求が受け付けられると、更新プログラム送信部５２が機能する。更新プログラム送信部５２は、情報処理装置４からの要求に応じて、記憶部１２に記憶されている第２更新プログラム３４を情報処理装置４に対して送信する処理部である。情報処理装置４は、第２更新プログラム３４を受信するとこれを実行し、第２プリンタドライバ１１４の更新を行う。これにより、サーバー２において第１プリンタドライバ２４の更新が行われるのに先んじて、情報処理装置４において第２プリンタドライバ１１４の更新が行われるという事態が生じるのを回避することができる。
【００４８】
なお、サーバー２が、第１プリンタドライバ２４とは異なるプリンタドライバであって、情報処理装置４のプリンタドライバと関連付けられる第３プリンタドライバを備えている場合、第１更新部４６は、第１プリンタドライバ２４について上述したのと同様の手順により第３プリンタドライバの更新を行う。第３プリンタドライバは、印刷装置６とは異なる印刷装置に対する印刷ジョブを送信する機能を備えるプリンタドライバであってもよいし、印刷装置６に対して、第１プリンタドライバ２４とは異なる印刷設定に基づく印刷ジョブを送信する機能を備えるプリンタドライバであってもよい。
【００４９】
第１更新部４６は、更新ドライバ識別情報８０と一致する第１ドライバ識別情報３０に対応する全てのプリンタドライバが更新されるまで、上述した処理手順によりプリンタドライバの更新を行う。これにより、更新対象となるプリンタドライバが複数である場合に、更新対象となる全てのプリンタドライバが自動的に更新されるのである。
【００５０】
上述したとおりＣＰＵ１０は、第１プリンタドライバプログラム３２が実行されることにより第１プリンタドライバ２４として機能する。オペレーティングシステム２２は、情報処理装置４から印刷ジョブを受信すると、第１プリンタドライバプログラム３２を起動させ、第１プリンタドライバ２４として機能させる。第１プリンタドライバ２４は、ジョブ生成部６６と、ジョブ登録部６８と、ジョブ送信部７０とを備える。
【００５１】
ジョブ生成部６６は、印刷装置６に実行させる印刷ジョブを生成させる処理部である。情報処理装置４の第２プリンタドライバ１１４経由で送信されたドキュメントデータがサーバー２に受信されると、ジョブ生成部６６が機能し、印刷装置６に実行させる印刷ジョブが生成される。
【００５２】
ジョブ登録部６８は、印刷装置６に対する印刷ジョブを、順に登録する処理部である。ジョブ生成部６６により印刷ジョブが生成されると、ジョブ登録部６８は、生成された印刷ジョブを登録する。また、情報処理装置４において第２プリンタドライバ１１４により生成された印刷ジョブをサーバー２が通信インタフェース１４を経由して受信すると、ジョブ登録部６８は受信された印刷ジョブを登録する。情報処理装置４から送信された印刷ジョブを受信すると、オペレーティングシステム２２は第１プリンタドライバプログラム３２を起動させて第１プリンタドライバ２４として機能させる。そして、ジョブ登録部６８は、オペレーティングシステム２２からの指示に基づいて当該印刷ジョブを登録する。
【００５３】
第１更新部４６は、旧バージョンの第１プリンタドライバプログラム３２ａを消去して新バージョンの第１プリンタドライバプログラム３２ａをインストールする場合に、旧バージョンの第１プリンタドライバプログラム３２ａにおける設定を新バージョンの第１プリンタドライバプログラム３２ａに反映させる。上述したように、情報処理装置４が起動すると、情報処理装置４のオペレーティングシステム１１２（図６参照）は、サーバー２にアクセスして接続状態を確立する。そして、第１プリンタドライバ２４が更新されたことを検知すると、サーバー２に継続してアクセスしている情報処理装置４は、第２プリンタドライバ１１４を更新させる第２更新プログラム３４をサーバー２に対して要求する。上述したように、第２更新プログラム３４には、新バージョンの第２プリンタドライバプログラム１５２と、新バージョンの第２プリンタドライバプログラムをインストールするためのインストーラプログラムが含まれる。第２更新プログラム３４がサーバー２から情報処理装置４にダウンロードされ、情報処理装置４においてインストールされると、第２プリンタドライバ１１４が更新される。後述するように、第２プリンタドライバ１１４の更新に際して、更新前の第２プリンタドライバ１１４における印刷ジョブ等の送信先などの設定は、更新後の第２プリンタドライバ１１４に承継される。更新後の第２プリンタドライバ１１４が起動して印刷ジョブを生成すると、第２プリンタドライバ１１４は当該印刷ジョブを更新後の第１プリンタドライバ２４に送信する。第２プリンタドライバ１１４から送信された印刷ジョブ等を受信すると、第１プリンタドライバ２４におけるジョブ登録部６８は、受信した印刷ジョブ等を登録する。
【００５４】
ジョブ送信部７０は、ジョブ登録部６８に登録されている印刷ジョブを、順序に基づき印刷装置６に対して送信する処理部である。例えばジョブ送信部７０は、登録されている順序に従って、所定タイミングにおいて印刷ジョブを印刷装置６に送信して実行させる。このように、情報処理装置４において第２プリンタドライバ１１４によって生成された印刷ジョブがサーバー２に受信されると、ジョブ登録部６８に登録され、その後にジョブ送信部７０によって印刷装置６に送信されて実行される。すなわち、第１プリンタドライバ２４と第２プリンタドライバ１１４とが関連付けられていることにより、情報処理装置４において生成された印刷ジョブがサーバー２を介して印刷装置６に送信され、実行されるのである。
【００５５】
次に、情報処理装置４の構成を説明する。図６は、情報処理装置４の機能構成の一例を示すブロック図である。情報処理装置４は、ＣＰＵ１００と、記憶部１０２と、サーバー２など外部デバイスとの通信におけるインタフェースとなる通信インタフェース１０４と、キーボードなどにより構成される操作部１０６と、液晶ディスプレイなどにより構成される表示部１０８とを備える。
【００５６】
記憶部１０２には、第２プリンタドライバ１１４の更新を制御する第２更新制御プログラム１５４が記憶されている。第２更新制御プログラム１５４は、管理者等により情報処理装置４に入力され、記憶部１０２に記憶される。そして第２更新制御プログラム１５４が実行されることにより、ＣＰＵ１００は更新制御アプリケーション１１０として機能する。また、ＣＰＵ１００は、図示しないオペレーティングシステムプログラムが実行されることにより、オペレーティングシステム１１２として機能する。さらに、ＣＰＵ１００は、記憶部１０２に記憶されている第２プリンタドライバプログラム１５２がオペレーティングシステム１１２からの指示により実行されることにより、印刷装置６に実行させる印刷ジョブの生成等を行う第２プリンタドライバ１１４として機能する。
【００５７】
第２更新制御プログラム１５４が情報処理装置４にインストールされて実行されると更新制御アプリケーション１１０として機能する。さらに更新制御アプリケーション１１０は、更新候補抽出部１３０と、検知部１３２と、要求部１３４と、第２取得部１３６と、第２更新部１３８とを有する。更新候補抽出部１３０は、情報処理装置４に既にインストールされているプリンタドライバのうち、更新の対象とされているプリンタドライバを抽出する処理部である。更新候補抽出部１３０は、第２更新制御プログラム１５４に含まれている更新ドライバ識別情報８０（図３参照）を取得する。そして、更新候補抽出部１３０は、オペレーティングシステム１１２に情報処理装置４に既にインストールされているプリンタドライバの第２ドライバ識別情報１５０を要求する。オペレーティングシステム１１２は、更新候補抽出部１３０からの要求を受信すると、オペレーティングシステム１１２が管理しているプリンタドライバの第２ドライバ識別情報１５０を更新候補抽出部１３０に送信する。図７は、第２ドライバ識別情報１５０の一例を示す図である。第２ドライバ識別情報１５０は、更新ドライバ識別情報８０と同様に、ドライバ名と、ドライババージョン情報と、ドライバファイル名とを備える。更新候補抽出部１３０は、更新ドライバ識別情報８０と第２ドライバ識別情報１５０とを突き合わせて、両者が一致する場合に、第２ドライバ識別情報１５０を抽出して、例えば更新候補リスト（図示せず）に登録する。
【００５８】
更新候補抽出部１３０により第２プリンタドライバ１１４に対応する第２ドライバ識別情報１５０が抽出されると、検知部１３２が機能する。検知部１３２は、サーバー２が備える第１プリンタドライバ２４が更新されたことを検知する処理部である。上述したとおり、サーバー２において旧バージョンの第１プリンタドライバプログラム３２が消去されると、第２プリンタドライバ１１４から印刷ジョブを送信する送信先がなくなる。サーバー２において第１プリンタドライバプログラム３２が消去されたことを情報処理装置４が検知すると、第２プリンタドライバ１１４をユーザーによる選択ができないオフライン状態にする。検知部１３２は、第２プリンタドライバ１１４がオフライン状態となっている場合に、第１プリンタドライバ２４が更新されたことを検知する。なお、これとは異なり、検知部１３２は、オペレーティングシステム１１２がサーバー２に継続してアクセスしていない場合に、サーバー２に対して所定タイミング毎にアクセスして、第１プリンタドライバ２４の更新が行われたか否かを確認してもよい。
【００５９】
検知部１３２により第１プリンタドライバ２４の更新が検知されると、要求部１３４が機能する。要求部１３４は、検知部１３２により第１プリンタドライバ２４の更新が検知されると、サーバー２に対して第２プリンタドライバ１１４を更新させる第２更新プログラム３４を要求する処理部である。第２プリンタドライバ１１４がオフラインであることにより検知部１３２が第１プリンタドライバ２４の更新を検知すると、要求部１３４は、サーバー２に対して第２更新プログラム３４の要求を送信する。
【００６０】
第２取得部１３６は、第２更新プログラム３４を取得する処理部である。第２取得部１３６は、要求部１３４による要求に応じてサーバー２から送信される第２更新プログラム３４を取得する。そして、第２取得部１３６により第２更新プログラム３４が取得されると、第２更新部１３８が機能する。第２更新部１３８は、第２取得部１３６により取得された第２更新プログラム３４を実行することにより、第２プリンタドライバ１１４を更新する処理部である。第２更新部１３８は、例えば第２更新プログラム３４を実行することにより、第２プリンタドライバ１１４の新バージョンプログラムをインストールすると共に、第２プリンタドライバ１１４の旧バージョンプログラムを消去することにより、第２プリンタドライバ１１４を更新する。第２更新部１３８は、第２プリンタドライバ１１４の新バージョンプログラムをインストールする際に、旧バージョンプログラムに設定されている第１プリンタドライバ２４のポート情報やドライバ名など、第１プリンタドライバ２４に関する情報を新バージョンプログラムに設定する。これにより、第２プリンタドライバ１１４の新バージョンプログラムがインストールされた後に、第２プリンタドライバ１１４により印刷ジョブが生成されると、新バージョンプログラムに設定されている第１プリンタドライバ２４に関する情報に基づき、生成された印刷ジョブを第１プリンタドライバ２４に対して送信可能となる。
【００６１】
なお、情報処理装置４が、第２プリンタドライバ１１４とは異なるプリンタドライバであって、サーバー２の第３プリンタドライバと関連付けられる第４プリンタドライバを備えている場合、第４プリンタドライバが更新対象候補リストに登録されると、第４プリンタドライバは、第２プリンタドライバ１１４に関して上述したのと同様の手順で更新される。すなわち、更新対象候補リストに登録された第２ドライバ識別情報１５０が複数である場合、登録された全ての第２ドライバ識別情報１５０に対応するプリンタドライバが更新されるまで、第２プリンタドライバ１１４に関し上述したのと同様の手順による更新処理が行われるのである。
【００６２】
ＣＰＵ１００は、オペレーティングシステムプログラムが実行されることにより、操作部１０６を操作することによる操作入力を受け付ける入力受付部１２０と、表示部１０８への表示画像を制御する表示制御部１２２として機能する。
【００６３】
第２プリンタドライバ１１４は、オペレーティングシステム１１２の指示に基づき、第２プリンタドライバプログラム１５２が実行されることにより機能する。第２プリンタドライバ１１４は、印刷装置６に実行させる印刷ジョブを生成するジョブ生成部１４０と、ジョブ生成部１４０により生成される印刷ジョブを送信するジョブ送信部１４２を備える。ジョブ送信部１４２は、生成された印刷ジョブを、第２プリンタドライバ１１４からの送信先として設定されている第１プリンタドライバ２４に対して送信する。上述したように第１プリンタドライバ２４が更新される際に、旧バージョンの第１プリンタドライバプログラム３２が消去されると、第２プリンタから印刷ジョブ等を送信する送信先がなくなる。そうすると、第２プリンタドライバ１１４はオフライン状態になり、第２プリンタドライバ１１４がオフライン状態になると、ユーザーは第２プリンタドライバ１１４を選択できない。
【００６４】
表示制御部１２２は、上述したように旧バージョンの第１プリンタドライバプログラム３２が消去されたことにより第１プリンタドライバ２４と第２プリンタドライバ１１４との関連付けが解消されている状態で、入力受付部１２０により第２プリンタドライバ１１４を選択する操作入力が受け付けられた場合に、オペレーティングシステム１１２により第２プリンタドライバ１１４が起動しないため、第２プリンタドライバ１１４に対応する印刷設定画面を表示させない。ユーザーは、第２プリンタドライバ１１４を選択したにもかかわらず、これに対応する印刷設定画面が表示部１０８に表示されないため、第２プリンタドライバ１１４を使用できない状態であることを認識する。
【００６５】
次に、本実施形態における印刷制御システム１を構成するサーバー２と、情報処理装置４と、印刷装置６によるデータ通信の一例を説明する。図８及び図９は、本実施形態における前記各装置相互の通信の態様の一例を示すシーケンス図である。情報処理装置４は起動すると、第２プリンタドライバ１１４からの印刷ジョブ等の送信先となっている第１プリンタドライバ２４を備えるサーバー２にアクセスする。まず、情報処理装置４において、ユーザーによる印刷設定操作が検知されると（プロセスＰ１）、第２プリンタドライバ１１４が起動する（プロセスＰ３）。そして、第２プリンタドライバ１１４により印刷ジョブが生成されると（プロセスＰ５）、次に情報処理装置４からサーバー２に対して印刷ジョブが送信される（プロセスＰ７）。サーバー２は、印刷ジョブを受信すると（プロセスＰ９）、第２プリンタドライバ１１４と関連付けられている第１プリンタドライバ２４を起動させ（プロセスＰ１１）、受信された印刷ジョブを蓄積する（プロセスＰ１３）。次に、サーバー２は、蓄積されている印刷ジョブを印刷装置６に送信する（プロセスＰ１５）。印刷装置６は、サーバー２から印刷ジョブを受信すると（プロセスＰ１７）、受信した印刷ジョブを実行する（プロセスＰ１９）。
【００６６】
管理者やユーザーにより、情報処理装置４に対して第２更新制御プログラム１５４がインストールされ（プロセスＰ２３）、また、サーバー２に対して第１更新制御プログラム３６がインストールされると（プロセスＰ２５）、サーバー２は、第１更新制御プログラム３６から第１更新プログラムを受け付ける（プロセスＰ２７）。そして、サーバー２は、受け付けられた第１更新プログラムが第１プリンタドライバ２４の更新プログラムであるか否かを判定し（プロセスＰ２９）、第１プリンタドライバ２４の更新プログラムであると判定すると、第１更新プログラムを取得する（プロセスＰ３１）と共に第１更新プログラムを実行する（プロセスＰ３３）。
【００６７】
第１更新プログラムを実行すると、サーバー２は、第１プリンタドライバ２４の旧バージョンプログラムを消去する（プロセスＰ３５）。旧バージョンプログラムが消去されることにより、印刷ジョブを蓄積するプリントキューもまた消去される。旧バージョンプログラムが消去されると、サーバー２に継続してアクセスしている情報処理装置４は、印刷ジョブ送信先となる第１プリンタドライバ２４が消去されたことを検知する（プロセスＰ４１）。サーバー２は、旧バージョンプログラムを消去すると、新バージョンプログラムをインストールし（プロセスＰ４３）、新たなプリントキューを生成する（プロセスＰ４５）。
【００６８】
なお、第２プリンタドライバ１１４の印刷ジョブの送信先である第１プリンタドライバ２４が消去されると、第２プリンタドライバ１１４は印刷ジョブの送信先がないため、オフライン状態になる。これにより第１プリンタドライバ２４が更新されたことを検知した情報処理装置４は、サーバー２に対して第２更新プログラム３４を要求する（プロセスＰ４７）。サーバー２は、情報処理装置４からの要求を受信すると（プロセスＰ４９）、情報処理装置４からの要求に応じて第２更新プログラム３４を情報処理装置４に送信する（プロセスＰ５１）。
【００６９】
情報処理装置４は、第２更新プログラム３４を取得すると（プロセスＰ５３）、取得された第２更新プログラム３４を実行する（プロセスＰ５５）。そして、情報処理装置４は、旧バージョンプログラムを消去すると共に（プロセスＰ５７）、新バージョンプログラムをインストールする（プロセスＰ５９）。これにより、第２プリンタドライバ１１４の更新を行う。新バージョンプログラムがインストールされると、更新された第２プリンタドライバ１１４において、サーバー２の更新後の第１プリンタドライバ２４が印刷ジョブの送信先として設定される。そして、ユーザーによる印刷設定操作を検知すると（プロセスＰ６１）、第２プリンタドライバ１１４を起動させて（プロセスＰ６３）印刷ジョブを生成する（プロセスＰ６５）。そして生成した印刷ジョブをサーバー２に対して送信する（プロセスＰ６７）。
【００７０】
サーバー２は、情報処理装置４から送信された印刷ジョブを受信すると（プロセスＰ６９）、第１プリンタドライバ２４を起動させ（プロセスＰ７１）、第１プリンタドライバ２４の新バージョンプログラムに対応するプリントキューに受信した印刷ジョブを蓄積する（プロセスＰ７３）。そして、サーバー２は、プリントキューに順序に基づいて蓄積されている印刷ジョブを、印刷装置６に送信する（プロセスＰ７５）。印刷装置６は、サーバー２により送信された印刷ジョブを受信すると（プロセスＰ７７）、受信された印刷ジョブを実行する（プロセスＰ７９）。このように、サーバー２と情報処理装置４のそれぞれにおいて更新制御プログラムがインストールされた場合において、第１プリンタドライバ２４の更新が行われた後に、サーバー２から情報処理装置４に第２更新プログラム３４が送信されて実行されることにより第２プリンタドライバ１１４の更新が行われる。これにより、第１プリンタドライバ２４の更新に先んじて第２プリンタドライバ１１４が更新される事態が生じるのを確実に防止できる。
【００７１】
次に、本実施形態におけるサーバー２及び情報処理装置４のそれぞれにおいて行われる処理手順の一例を説明する。図１０は、サーバー２により行われる主要な処理手順の一例を示すフローチャートである。まず、サーバー２は、情報処理装置４などから印刷ジョブを受信したか否かを判定する（ステップＳ１）。そして、印刷ジョブを受信した場合（ステップＳ１でＹＥＳ）、受信した印刷ジョブに対応するプリントキューに登録する（ステップＳ３）。例えば、第２プリンタドライバ１１４により生成された印刷ジョブを受信した場合には、第２プリンタドライバ１１４に関連付けられる第１プリンタドライバ２４のプリントキューに登録される。他方、印刷ジョブを受信していない場合（ステップＳ１でＮＯ）、ステップＳ３をスキップする）。
【００７２】
次に、印刷ジョブの実行タイミングであるか否かを判定する（ステップＳ５）。印刷ジョブの実行タイミングである場合（ステップＳ５でＹＥＳ）、印刷ジョブを印刷装置６に実行させるジョブ実行処理（ステップＳ７）を実行する。他方、ジョブ実行タイミングではない場合（ステップＳ５でＮＯ）、ジョブ実行処理をスキップする。ジョブ実行処理（ステップＳ７）の具体的な処理手順について後述する。
【００７３】
さらに、サーバー２は、プリンタドライバを更新させる更新プログラムを検知したか否かを判定し（ステップＳ９）、更新プログラムを検知した場合（ステップＳ９でＹＥＳ）、プリンタドライバを更新させる第１更新処理（ステップＳ１１）を実行して再びステップＳ１に戻り、ステップＳ１乃至Ｓ１１の処理を繰り返し実行する。第１更新処理（ステップＳ１１）の具体的な処理手順について後述する。他方、更新プログラムを検知しなかった場合（ステップＳ９でＮＯ）、ステップＳ１１をスキップしてステップＳ１に戻る。
【００７４】
図１１は、ジョブ実行処理（図１０のステップＳ７）の具体的な処理手順の一例を示すフローチャートである。サーバー２は、プリントキューに登録されている印刷ジョブを、プリントキューの登録順に印刷装置６に送信する（ステップＳ２１）。そして、印刷装置６に送信済みの印刷ジョブをプリントキューから消去して（ステップＳ２３）ジョブ実行処理を終了する。
【００７５】
図１２は、第１更新処理（図１０のステップＳ１１）の具体的な処理手順の一例を示すフローチャートである。まず、サーバー２は、第１更新制御プログラム３６から更新ドライバ識別情報８０を取得して（ステップＳ３１）サーバー２のオペレーティングシステム２２により管理されているプリンタドライバに対応する第１ドライバ識別情報３０を読み出す（ステップＳ３３）。次に、読み出した第１ドライバ識別情報３０のうち一のドライバ識別情報を抽出すると（ステップＳ３５）、更新ドライバ識別情報８０と一致するか否かを判定する（ステップＳ３７）。更新ドライバ識別情報８０と一致する場合（ステップＳ３７でＹＥＳ）、サーバー２は、当該ドライバ識別情報を置換リストに登録する（ステップＳ３９）。他方、更新ドライバ識別情報８０と一致しない場合（ステップＳ３７でＮＯ）、ステップＳ３９をスキップする。
【００７６】
次に、サーバー２は、第１ドライバ識別情報３０の全てのドライバ識別情報を抽出済みか否か判定し（ステップＳ４１）、抽出済である場合（ステップＳ４１でＹＥＳ）、抽出されたドライバ識別情報に対応するプリンタドライバの更新を行う第１置換処理（ステップＳ４３）を実行して第１更新処理を終了する。他方、全てのドライバ情報を識別済みではないと判定された場合（ステップＳ４１でＮＯ）、サーバー２は、ステップＳ３５に戻って、ステップＳ３５乃至Ｓ４３の処理を繰り返し行う。
【００７７】
図１３は、第１置換処理（図１２のステップＳ４３）の具体的な処理手順の一例を示すフローチャートである。まず、サーバー２は、置換リストから一のドライバの識別情報を抽出する（ステップＳ５１）。そして、抽出されたドライバ識別情報に対応する第１プリンタドライバプログラム３２をアンインストールする（ステップＳ５３）と共に、当該第１プリンタドライバプログラム３２に対応付けられるプリントキューを消去する（ステップＳ５５）。
【００７８】
次に、サーバー２は、例えばアンインストールされる旧バージョンプログラムから、出力先となる印刷装置６のＩＰアドレスなどのポート情報を取得する（ステップＳ５７）。そして、サーバー２は、更新プログラムを実行し（ステップＳ５９）、取得したポート情報などを反映させて新バージョンプログラムをインストールする（ステップＳ６１）と共に、置換リストからドライバ名を取得してプリントキューの名称とする（ステップＳ６３）。
【００７９】
サーバー２は、次にプリントキューを生成し（ステップＳ６５）、それから置換リストから当該ドライバ識別情報を消去する。最後に、置換リストにドライバ識別情報の登録があるか否かを判定し（ステップＳ６９）、置換リストにドライバ識別情報の登録があると判定した場合（ステップＳ６９でＹＥＳ）、ステップＳ５１に戻って、ステップＳ５１乃至Ｓ６９を繰り返し実行する。他方、置換リストにドライバ識別情報の登録がない場合（ステップＳ６９でＮＯ）、置換処理を終了する。
【００８０】
次に、情報処理装置４において行われる処理手順の一例を説明する。図１４は、情報処理装置４において行われる主要な処理手順の一例を示すフローチャートである。情報処理装置４は起動すると、ユーザーによる印刷設定操作が検知されたか否かを判定する（ステップＳ８１）。ユーザーによる印刷設定操作が検知された場合（ステップＳ８１でＹＥＳ）、印刷ジョブを生成する印刷設定処理（ステップＳ８３）を実行する。た方、ユーザーによる印刷設定操作が検知されなかった場合（ステップＳ８１でＮＯ）、ステップＳ８３をスキップする。印刷設定処理の具体的な処理手順については後述する。
【００８１】
次に、情報処理装置４は、第２更新制御プログラム１５４がインストールされたことにより更新ドライバ識別情報８０を取得したか否かを判定する（ステップＳ８５）。更新ドライバ識別情報８０を取得した場合（ステップＳ８５でＹＥＳ）、第２プリンタドライバ１１４の更新を行う第２更新処理（ステップＳ８７）を実行する。他方、更新ドライバ識別情報８０を取得しなかった場合（ステップＳ８５でＮＯ）、ステップＳ８７をスキップする。第２更新処理（ステップＳ８７）の具体的な処理手順については後述する。
【００８２】
最後に、情報処理装置４は、ユーザーによる終了指示を検知したか否かを判定し（ステップＳ８９）、終了指示を検知した場合（ステップＳ８９でＹＥＳ）、情報処理装置４の起動状態を終了させる終了処理を行って（ステップＳ９１）処理を終了する。他方、終了指示を検知しなかった場合（ステップＳ８９でＮＯ）、ステップＳ８１に戻り、ユーザーによる終了指示が検知されるまで、ステップＳ８１乃至ステップＳ８９を繰り返し実行する。
【００８３】
図１５は、印刷設定処理（図１４のステップＳ８３）の具体的な処理手順の一例を示すフローチャートである。情報処理装置４はまず、記憶部１０２に記憶されている第２ドライバ識別情報１５０を取得して（ステップＳ１０１）、表示部１０８に第２プリンタドライバ１１４に対応するプリントキュー画像を表示させる（ステップＳ１０３）。そして、第２プリンタドライバ１１４に対応するプリントキュー画像を選択する操作を検知したか否かを判定し（ステップＳ１０５）、選択する操作が検知された場合（ステップＳ１０５でＹＥＳ）、さらに第２プリンタドライバ１１４が第１プリンタドライバ２４と連携中か否かを判定する（ステップＳ１０７）。第２プリンタドライバ１１４が第１プリンタドライバ２４と連携中か否かは、例えば第２プリンタドライバ１１４がオフラインとなっているか否かにより判定し、オフラインとなっている場合には連携が解消されていると判定する。他方、第２プリンタドライバ１１４がオフラインではなくオンラインである場合、第１プリンタドライバ２４と第２プリンタドライバ１１４とは連携中であると判定する。
【００８４】
第１プリンタドライバ２４と連携中であると判定した場合（ステップＳ１０７でＹＥＳ）、表示部１０８に第２プリンタドライバ１１４に対応する印刷設定画面を表示させる（ステップＳ１０９）。他方、ステップＳ１０５で第２プリンタドライバ１１４に対応するプリントキュー画像の選択操作を検知しなかった場合（ステップＳ１０５でＮＯ）、又はステップＳ１０７で第１プリンタドライバ２４と第２プリンタドライバ１１４との連携が解消されていると判定した場合（ステップＳ１０７でＮＯ）、情報処理装置４は、ユーザーによる終了指示を検知したか否かを判定する（ステップＳ１１１）。そして、終了指示を検知した場合（ステップＳ１１１でＹＥＳ）、印刷設定処理を終了させる。他方、終了指示を検知しなかった場合（ステップＳ１１１でＮＯ）、ステップＳ１０５に戻る。
【００８５】
情報処理装置４は、印刷設定画面が表示部１０８に表示されている状態で（ステップＳ１０９）、ユーザーによる印刷実行指示を検知したか否かを判定し（ステップＳ１１３）、印刷実行指示を検知した場合（ステップＳ１１３でＹＥＳ）、印刷ジョブを生成すると共に（ステップＳ１１５）、生成された印刷ジョブをサーバー２へ送信する（ステップＳ１１９）。印刷ジョブをサーバー２へ送信すると、情報処理装置４は表示部１０８に表示されている印刷設定画面を消去して（ステップＳ１２１）印刷設定処理を終了する。他方、ステップＳ１１３で印刷実行指示を検知しなかった場合に（ステップＳ１１３でＮＯ）、ユーザーによる終了指示を検知したか否かを判定し（ステップＳ１１７）、終了指示を検知した場合（ステップＳ１１７でＹＥＳ）、情報処理装置４はステップＳ１１５及びＳ１１９をスキップする。
【００８６】
図１６は、第２更新処理（図１４のステップＳ８７）の具体的な処理手順の一例を示すフローチャートである。情報処理装置４は、記憶部１０２に記憶されている第２ドライバ識別情報１５０を読み出し（ステップＳ１３１）、読み出した第２ドライバ識別情報１５０から一のドライバ識別情報を抽出する（ステップＳ１３３）。そして、抽出された一のドライバ識別情報が、更新ドライバ識別情報８０と一致するか否かを判定し（ステップＳ１３５）、更新ドライバ識別情報８０と一致する場合（ステップＳ１３５でＹＥＳ）、当該ドライバ識別情報を置換候補リストに登録する（ステップＳ１３７）。
【００８７】
次に、情報処理装置４は、読み出した全ての第２ドライバ識別情報１５０を抽出済みであるか否かを判定し（ステップＳ１３９）、全ての第２ドライバ識別情報１５０を抽出済みであると判定した場合（ステップＳ１３９でＹＥＳ）、第２プリンタドライバ１１４の旧バージョンプログラムから新バージョンプログラムに置換する第２置換処理（ステップＳ１４１）を実行して第２更新処理を終了する。第２置換処理（ステップＳ１４１）の具体的な処理手順については後述する。他方、ステップＳ１３９において全ての第２ドライバ識別情報を抽出済みではないと判定した場合（ステップＳ１３９でＮＯ）、ステップＳ１３３に戻り、全ての第２ドライバ識別情報１５０を抽出するまでステップＳ１３３乃至Ｓ１３９の処理を繰り返し実行する。
【００８８】
図１７は、第２置換処理（図１６のステップＳ１４１）の具体的な処理手順の一例を示すフローチャートである。情報処理装置４は、置換候補リストに登録されているドライバ識別情報のうち一のドライバ識別情報を抽出する（ステップＳ１５１）。そして、抽出されたドライバ識別情報に対応する第２プリントドライバがオフラインの状態であるか否かを判定し（ステップＳ１５３）、オフラインであると判定した場合（ステップＳ１５３でＹＥＳ）、情報処理装置４はサーバー２に対して第２プリンタドライバ１１４の更新プログラムを要求する（ステップＳ１５５）。そして、サーバー２から第２プリンタドライバ１１４の更新プログラムを取得すると（ステップＳ１５７）、第２プリンタドライバ１１４の旧バージョンプログラムを消去し（ステップＳ１５９）、新バージョンプログラムのインストールを実行する（ステップＳ１６１）。
【００８９】
そして、情報処理装置４は、置換候補リストから当該ドライバ識別情報を消去して（ステップＳ１６３）、置換候補リストにドライバ識別情報があるか否かを判定する（ステップＳ１６５）、置換候補リストにドライバ識別情報がある場合（ステップＳ１６５でＹＥＳ）、ステップＳ１５１に戻り、置換候補リストに登録されている全てのドライバ識別情報が消去されるまで、ステップＳ１５１乃至Ｓ１６５の処理を繰り返し実行する。他方、置換候補リストにドライバ識別情報がない場合（ステップＳ１６５でＮＯ）、情報処理装置４は第２置換処理を終了する。
【００９０】
本実施形態の印刷制御システム１は、サーバー２において第１プリンタドライバ２４の更新が行われたことを情報処理装置４が検知すると、情報処理装置４はサーバー２に対して第２プリンタドライバ１１４の更新プログラムを要求する。そして、サーバー２から第２プリンタドライバ１１４の更新プログラムを取得すると、情報処理装置４は取得された更新プログラムを実行して第２プリンタドライバ１１４の更新を行う。これにより、第１プリンタドライバ２４の更新に先んじて第２プリンタドライバ１１４の更新が行われる事態を回避できるため、情報処理装置４において第２プリンタドライバ１１４に基づいて生成された印刷ジョブが第１プリンタドライバ２４にない機能に基づく印刷ジョブであることによりエラーになるということを防止できる。
【００９１】
（変形例）
以上、本発明に関する実施形態を説明したが、本発明は上記実施形態において説明した内容のものに限られるものではなく、種々の変形例が適用可能である。
【００９２】
上記実施形態において、第２プリンタドライバ１１４を更新する第２更新プログラム３４がサーバー２に記憶されており、情報処理装置４は、サーバー２に要求して第２更新プログラム３４を取得する場合を示した。しかし、本発明はこれに限らず、第２更新プログラム３４は、第２プリンタドライバ１１４の更新を制御する第２更新制御プログラム１５４と共に情報処理装置４にインストールされてもよい。この場合、例えば第２更新制御プログラム１５４は、サーバー２において第１プリンタドライバ２４が更新されたか否かを監視し、第１プリンタドライバ２４が更新されたことを検知すると、第２更新プログラム３４をインストールして第２プリンタドライバ１１４を更新させる。
【００９３】
また上記実施形態において、情報処理装置４は、第２プリンタドライバ１１４がオフラインとなっているか否かによって、第１プリンタドライバ２４が更新済みであるか否かを判定し、第２プリンタドライバ１１４がオフラインである場合に第１プリンタドライバ２４が更新済みであると判定する場合を示した。しかし本発明はこれに限らず、情報処理装置４は、所定タイミング毎にサーバー２にアクセスして第１プリンタドライバ２４が更新済みであるか否かを問い合わせてもよい。
【符号の説明】
【００９４】
１  印刷制御システム
２  サーバー
４  情報処理装置
６  印刷装置
４２  判定部（判定手段）
４４  第１取得部（第１取得手段）
４６  第１更新部（第１更新手段）
５２  更新プログラム送信部（送信手段）
６０  ドライバ識別情報管理部（識別情報管理手段）
１１４  第２プリンタドライバ（設定手段）
１２０  入力受付部（入力受付手段）
１２２  表示制御部（表示制御手段）
１３２  検知部（検知手段）
１３４  要求部（要求手段）
１３６  第２取得部（第２取得手段）
１３８  第２更新部（第２更新手段）
【図１】
2018014021.tif 000003
【図２】
2018014021.tif 000004
【図３】
2018014021.tif 000005
【図４】
2018014021.tif 000006
【図５】
2018014021.tif 000007
【図６】
2018014021.tif 000008
【図７】
2018014021.tif 000009
【図８】
2018014021.tif 000010
【図９】
2018014021.tif 000011
【図１０】
2018014021.tif 000012
【図１１】
2018014021.tif 000013
【図１２】
2018014021.tif 000014
【図１３】
2018014021.tif 000015
【図１４】
2018014021.tif 000016
【図１５】
2018014021.tif 000017
【図１６】
2018014021.tif 000018
【図１７】
2018014021.tif 000019