(57)【特許請求の範囲】
【請求項１】
複数機種のプリンタを制御可能なプリンタドライバを更新するためのプリンタドライバ更新プログラムであって、
前記プリンタから当該プリンタのファームウエアに関する情報を取得する手順（ｃ）と、
前記プリンタドライバの所定の機能を実現するモジュールについて、前記手順（ｃ）において取得された前記プリンタのファームウエアに関する情報に基づいて、当該モジュールの新バージョンのプログラムを前記プリンタドライバ内に既に存在する旧バージョンのプログラムに上書きする上書処理と、前記新バージョンのプログラムを前記旧バージョンのプログラムとは別に前記プリンタドライバに追加する追加処理のうちいずれか一方の処理を選択する手順（ａ）と、
前記手順（ａ）において選択された処理を実行することにより、前記プリンタドライバを更新する手順（ｂ）と、
をコンピュータに実行させるプリンタドライバ更新プログラム。
【請求項２】
複数機種のプリンタを制御可能なプリンタドライバを更新するためのプリンタドライバ更新プログラムであって、
前記プリンタドライバの所定の機能を実現するモジュールについて、当該モジュールの新バージョンのプログラムを前記プリンタドライバ内に既に存在する旧バージョンのプログラムに上書きする上書処理と、前記新バージョンのプログラムを前記旧バージョンのプログラムとは別に前記プリンタドライバに追加する追加処理のうちいずれか一方の処理を選択する手順（ａ）と、
前記手順（ａ）において選択された処理を実行することにより、前記プリンタドライバを更新する手順（ｂ）と、
をコンピュータに実行させ、
前記手順（ａ）において前記上書処理が選択された場合、前記上書処理の実行中に当該処理を中止することができるように、前記手順（ｂ）において前記旧バージョンのプログラムが前記新バージョンのプログラムにより上書きされる前に、前記旧バージョンのプログラムが異なる名称で記憶部に記憶されることを特徴とするプリンタドライバ更新プログラム。
【請求項３】
前記新バージョンのプログラムは、当該プログラムのバージョンを示すバージョン情報を有し、
前記手順（ａ）において、前記新バージョンのプログラムのバージョン情報に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする請求項１または２に記載のプリンタドライバ更新プログラム。
【請求項４】
前記プリンタから当該プリンタのファームウエアに関する情報を取得する手順（ｃ）をさらに前記コンピュータに実行させ、
前記手順（ａ）において、前記手順（ｃ）において取得された前記プリンタのファームウエアに関する情報に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする請求項２に記載のプリンタドライバ更新プログラム。
【請求項５】
前記手順（ａ）において、ユーザの操作に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする請求項１〜４のいずれか１項に記載のプリンタドライバ更新プログラム。
【請求項６】
前記手順（ａ）において前記追加処理が選択された場合、前記プリンタドライバにより提供される操作画面に、前記新バージョンおよび旧バージョンのプログラムの名称に加えて、前記新バージョンおよび旧バージョンのプログラムのバージョンがそれぞれ表示されることを特徴とする請求項１〜５のいずれか１項に記載のプリンタドライバ更新プログラム。
【請求項７】
前記手順（ａ）において前記上書処理が選択された場合、前記上書処理の実行中に当該処理を中止することができるように、前記手順（ｂ）において前記旧バージョンのプログラムが前記新バージョンのプログラムにより上書きされる前に、前記旧バージョンのプログラムが異なる名称で記憶部に記憶されることを特徴とする請求項１に記載のプリンタドライバ更新プログラム。
【請求項８】
前記手順（ａ）において、前記モジュール毎に、前記上書処理および追加処理のうちいずれか一方の処理が選択され、
前記手順（ｂ）において、前記モジュール毎に、前記手順（ａ）において選択された処理が実行されることを特徴とする請求項１〜７のいずれか１項に記載のプリンタドライバ更新プログラム。
【請求項９】
前記プリンタドライバは、当該プリンタドライバを構成するモジュールを示す構成情報と当該プリンタドライバのバージョンを示すバージョン情報とを有し、
前記手順（ｂ）において前記プリンタドライバが更新されるとき、前記構成情報およびバージョン情報が変更されることを特徴とする請求項１〜８のいずれか１項に記載のプリンタドライバ更新プログラム。
【請求項１０】
前記プリンタドライバのバージョン情報は、前記プリンタドライバの更新内容に応じて変更されることを特徴とする請求項９に記載のプリンタドライバ更新プログラム。
【請求項１１】
前記プリンタドライバは、複数機種のプリンタに共通の機能を実現する共通モジュールと各プリンタに固有の機能を実現する個別モジュールとを有し、
前記手順（ａ）において、前記個別モジュールについて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする請求項１〜１０のいずれか１項に記載のプリンタドライバ更新プログラム。
【請求項１２】
請求項１〜１１のいずれか１項に記載のプリンタドライバ更新プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項１３】
複数機種のプリンタのそれぞれに対応する複数のチャイルドドライバを備え、当該複数のチャイルドドライバを切り替えることにより前記複数機種のプリンタを制御可能なユニバーサルプリンタドライバを更新するためのプリンタドライバ更新プログラムであって、
前記複数のチャイルドドライバのうちの少なくとも一つのチャイルドドライバについて、当該少なくとも一つのチャイルドドライバの新バージョンのプログラムを前記ユニバーサルプリンタドライバ内に既に存在する前記少なくとも一つのチャイルドドライバの旧バージョンのプログラムに上書きする上書処理と、前記少なくとも一つのチャイルドドライバの新バージョンのプログラムを前記少なくとも一つのチャイルドドライバの旧バージョンのプログラムとは別に前記ユニバーサルプリンタドライバに追加する追加処理のうちいずれか一方の処理を選択する手順（ａ）と、
前記手順（ａ）において選択された処理を実行することにより、前記ユニバーサルプリンタドライバを更新する手順（ｂ）と、
をコンピュータに実行させるプリンタドライバ更新プログラム。
【請求項１４】
複数機種のプリンタを制御可能なプリンタドライバを更新するためのプリンタドライバ更新方法であって、
前記プリンタから当該プリンタのファームウエアに関する情報を取得するステップ（ｃ）と、
前記プリンタドライバの所定の機能を実現するモジュールについて、前記ステップ（ｃ）において取得された前記プリンタのファームウエアに関する情報に基づいて、当該モジュールの新バージョンのプログラムを前記プリンタドライバ内に既に存在する旧バージョンのプログラムに上書きする上書処理と、前記新バージョンのプログラムを前記旧バージョンのプログラムとは別に前記プリンタドライバに追加する追加処理のうちいずれか一方の処理を選択するステップ（ａ）と、
前記ステップ（ａ）において選択された処理を実行することにより、前記プリンタドライバを更新するステップ（ｂ）と、
を有することを特徴とするプリンタドライバ更新方法。
【請求項１５】
複数機種のプリンタを制御可能なプリンタドライバを更新するためのプリンタドライバ更新方法であって、
前記プリンタドライバの所定の機能を実現するモジュールについて、当該モジュールの新バージョンのプログラムを前記プリンタドライバ内に既に存在する旧バージョンのプログラムに上書きする上書処理と、前記新バージョンのプログラムを前記旧バージョンのプログラムとは別に前記プリンタドライバに追加する追加処理のうちいずれか一方の処理を選択するステップ（ａ）と、
前記ステップ（ａ）において選択された処理を実行することにより、前記プリンタドライバを更新するステップ（ｂ）と、を有し、
前記ステップ（ａ）において前記上書処理が選択された場合、前記上書処理の実行中に当該処理を中止することができるように、前記ステップ（ｂ）において前記旧バージョンのプログラムが前記新バージョンのプログラムにより上書きされる前に、前記旧バージョンのプログラムが異なる名称で記憶部に記憶されることを特徴とするプリンタドライバ更新方法。
【請求項１６】
前記新バージョンのプログラムは、当該プログラムのバージョンを示すバージョン情報を有し、
前記ステップ（ａ）において、前記新バージョンのプログラムのバージョン情報に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする請求項１４または１５に記載のプリンタドライバ更新方法。
【請求項１７】
前記プリンタから当該プリンタのファームウエアに関する情報を取得するステップ（ｃ）をさらに有し、
前記ステップ（ａ）において、前記ステップ（ｃ）において取得された前記プリンタのファームウエアに関する情報に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする請求項１５に記載のプリンタドライバ更新方法。
【請求項１８】
前記ステップ（ａ）において、ユーザの操作に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする請求項１４〜１７のいずれか１項に記載のプリンタドライバ更新方法。
【請求項１９】
前記ステップ（ａ）において前記追加処理が選択された場合、前記プリンタドライバにより提供される操作画面に、前記新バージョンおよび旧バージョンのプログラムの名称に加えて、前記新バージョンおよび旧バージョンのプログラムのバージョンがそれぞれ表示されることを特徴とする請求項１４〜１８のいずれか１項に記載のプリンタドライバ更新方法。
【請求項２０】
前記ステップ（ａ）において前記上書処理が選択された場合、前記上書処理の実行中に当該処理を中止することができるように、前記ステップ（ｂ）において前記旧バージョンのプログラムが前記新バージョンのプログラムにより上書きされる前に、前記旧バージョンのプログラムが異なる名称で記憶部に記憶されることを特徴とする請求項１４に記載のプリンタドライバ更新方法。
【請求項２１】
前記ステップ（ａ）において、前記モジュール毎に、前記上書処理および追加処理のうちいずれか一方の処理が選択され、
前記ステップ（ｂ）において、前記モジュール毎に、前記ステップ（ａ）において選択された処理が実行されることを特徴とする請求項１４〜２０のいずれか１項に記載のプリンタドライバ更新方法。
【請求項２２】
前記プリンタドライバは、当該プリンタドライバを構成するモジュールを示す構成情報と当該プリンタドライバのバージョンを示すバージョン情報とを有し、
前記ステップ（ｂ）において前記プリンタドライバが更新されるとき、前記構成情報およびバージョン情報が変更されることを特徴とする請求項１４〜２１のいずれか１項に記載のプリンタドライバ更新方法。
【請求項２３】
前記プリンタドライバのバージョン情報は、前記プリンタドライバの更新内容に応じて変更されることを特徴とする請求項２２に記載のプリンタドライバ更新方法。
【請求項２４】
前記プリンタドライバは、複数機種のプリンタに共通の機能を実現する共通モジュールと各プリンタに固有の機能を実現する個別モジュールとを有し、
前記ステップ（ａ）において、前記個別モジュールについて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする請求項１４〜２３のいずれか１項に記載のプリンタドライバ更新方法。
【請求項２５】
複数機種のプリンタのそれぞれに対応する複数のチャイルドドライバを備え、当該複数のチャイルドドライバを切り替えることにより前記複数機種のプリンタを制御可能なユニバーサルプリンタドライバを更新するためのプリンタドライバ更新方法であって、
前記複数のチャイルドドライバのうちの少なくとも一つのチャイルドドライバについて、当該少なくとも一つのチャイルドドライバの新バージョンのプログラムを前記ユニバーサルプリンタドライバ内に既に存在する前記少なくとも一つのチャイルドドライバの旧バージョンのプログラムに上書きする上書処理と、前記少なくとも一つのチャイルドドライバの新バージョンのプログラムを前記少なくとも一つのチャイルドドライバの旧バージョンのプログラムとは別に前記ユニバーサルプリンタドライバに追加する追加処理のうちいずれか一方の処理を選択するステップ（ａ）と、
前記ステップ（ａ）において選択された処理を実行することにより、前記ユニバーサルプリンタドライバを更新するステップ（ｂ）と、
を有することを特徴とするプリンタドライバ更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数機種のプリンタを制御可能なプリンタドライバを更新するためのプリンタドライバ更新プログラムおよびプリンタドライバ更新方法に関する。
【背景技術】
【０００２】
近年、複数機種のプリンタに１つのプリンタドライバで対応でき、印刷実行のたびに出力先のプリンタを選択可能な、複数機種共通のプリンタドライバ（Ｕｎｉｖｅｒｓａｌ  Ｐｒｉｎｔｅｒ  Ｄｒｉｖｅｒ：以下、ＵＰＤと称する）が提案されている。ＵＰＤは、複数機種のプリンタに共通の機能を実現する共通モジュールと、各プリンタに固有の機能を実現する個別モジュールとを備え、出力先のプリンタに応じて、個別モジュールが切り替えられる。
【０００３】
ところで、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等の印刷指示装置にインストールされているプリンタドライバは、バージョンアップに伴い更新される。一般的に、プリンタドライバの更新理由には、プリンタドライバ自体の機能追加や不具合修正を目的とするプリンタドライバ自体の都合によるものと、対応するプリンタの機能追加や不具合修正に伴うプリンタ都合によるものとがある。
【０００４】
プリンタ都合によるプリンタドライバの更新では、プリンタの機能追加や不具合修正を目的とするプリンタのファームウエアの更新に伴い、ファームウエアのバージョンに対応する適切なバージョンにプリンタドライバが更新される（たとえば、特許文献１参照）。
【０００５】
通常、プリンタドライバが更新される場合、新バージョンのプログラムにより旧バージョンのプログラムは上書きされ、旧バージョンのプログラムは使用不能になる。一般的なプリンタドライバは、プリンタと一対一に対応するため、１台のプリンタのファームウエアのバージョンに対応するバージョンのプログラムのみ備え、このプリンタの制御さえできればよい。
【０００６】
しかしながら、ネットワーク上に存在する複数機種のプリンタを制御するＵＰＤには、ファームウエアのバージョンが異なる同一機種のプリンタを制御することも望まれる。ファームウエアのバージョンが異なる同一機種のプリンタを制御するには、ＵＰＤの更新時に、ＵＰＤに含まれる個別モジュールの旧バージョンのプログラムが、新バージョンのプログラムにより上書きされずに、更新後も存在する必要がある。
【０００７】
他方、プリンタドライバ自体の都合によりプリンタドライバが更新される場合には、新バージョンのプログラムのみ使用可能であればよく、新バージョンのプログラムにより旧バージョンのプログラムが上書きされ、旧バージョンのプログラムを使用不能にすることが望ましい。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００４−３５５５９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、上述した課題に鑑みてなされたものである。したがって、本発明の目的は、複数機種のプリンタを制御可能なプリンタドライバを更新する際、更新理由に応じたプリンタドライバの適切な更新を可能にして、ユーザの利便性を向上することができるプリンタドライバ更新プログラムおよびプリンタドライバ更新方法を提供することである。
【課題を解決するための手段】
【００１０】
本発明の上記目的は、下記の手段によって達成される。
【００１１】
（１）複数機種のプリンタを制御可能なプリンタドライバを更新するためのプリンタドライバ更新プログラムであって、前記プリンタから当該プリンタのファームウエアに関する情報を取得する手順（ｃ）と、前記プリンタドライバの所定の機能を実現するモジュールについて、前記手順（ｃ）において取得された前記プリンタのファームウエアに関する情報に基づいて、当該モジュールの新バージョンのプログラムを前記プリンタドライバ内に既に存在する旧バージョンのプログラムに上書きする上書処理と、前記新バージョンのプログラムを前記旧バージョンのプログラムとは別に前記プリンタドライバに追加する追加処理のうちいずれか一方の処理を選択する手順（ａ）と、前記手順（ａ）において選択された処理を実行することにより、前記プリンタドライバを更新する手順（ｂ）と、をコンピュータに実行させるプリンタドライバ更新プログラム。
（２）複数機種のプリンタを制御可能なプリンタドライバを更新するためのプリンタドライバ更新プログラムであって、前記プリンタドライバの所定の機能を実現するモジュールについて、当該モジュールの新バージョンのプログラムを前記プリンタドライバ内に既に存在する旧バージョンのプログラムに上書きする上書処理と、前記新バージョンのプログラムを前記旧バージョンのプログラムとは別に前記プリンタドライバに追加する追加処理のうちいずれか一方の処理を選択する手順（ａ）と、前記手順（ａ）において選択された処理を実行することにより、前記プリンタドライバを更新する手順（ｂ）と、をコンピュータに実行させ、前記手順（ａ）において前記上書処理が選択された場合、前記上書処理の実行中に当該処理を中止することができるように、前記手順（ｂ）において前記旧バージョンのプログラムが前記新バージョンのプログラムにより上書きされる前に、前記旧バージョンのプログラムが異なる名称で記憶部に記憶されることを特徴とするプリンタドライバ更新プログラム。
【００１２】
（３）前記新バージョンのプログラムは、当該プログラムのバージョンを示すバージョン情報を有し、前記手順（ａ）において、前記新バージョンのプログラムのバージョン情報に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする上記（１）または（２）に記載のプリンタドライバ更新プログラム。
【００１３】
（４）前記プリンタから当該プリンタのファームウエアに関する情報を取得する手順（ｃ）をさらに前記コンピュータに実行させ、前記手順（ａ）において、前記手順（ｃ）において取得された前記プリンタのファームウエアに関する情報に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする上記（２）に記載のプリンタドライバ更新プログラム。
【００１４】
（５）前記手順（ａ）において、ユーザの操作に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする上記（１）〜（４）のいずれか１つに記載のプリンタドライバ更新プログラム。
【００１５】
（６）前記手順（ａ）において前記追加処理が選択された場合、前記プリンタドライバにより提供される操作画面に、前記新バージョンおよび旧バージョンのプログラムの名称に加えて、前記新バージョンおよび旧バージョンのプログラムのバージョンがそれぞれ表示されることを特徴とする上記（１）〜（５）のいずれか１つに記載のプリンタドライバ更新プログラム。
【００１６】
（７）前記手順（ａ）において前記上書処理が選択された場合、前記上書処理の実行中に当該処理を中止することができるように、前記手順（ｂ）において前記旧バージョンのプログラムが前記新バージョンのプログラムにより上書きされる前に、前記旧バージョンのプログラムが異なる名称で記憶部に記憶されることを特徴とする上記（１）に記載のプリンタドライバ更新プログラム。
【００１７】
（８）前記手順（ａ）において、前記モジュール毎に、前記上書処理および追加処理のうちいずれか一方の処理が選択され、前記手順（ｂ）において、前記モジュール毎に、前記手順（ａ）において選択された処理が実行されることを特徴とする上記（１）〜（７）のいずれか１つに記載のプリンタドライバ更新プログラム。
【００１８】
（９）前記プリンタドライバは、当該プリンタドライバを構成するモジュールを示す構成情報と当該プリンタドライバのバージョンを示すバージョン情報とを有し、前記手順（ｂ）において前記プリンタドライバが更新されるとき、前記構成情報およびバージョン情報が変更されることを特徴とする上記（１）〜（８）のいずれか１つに記載のプリンタドライバ更新プログラム。
【００１９】
（１０）前記プリンタドライバのバージョン情報は、前記プリンタドライバの更新内容に応じて変更されることを特徴とする上記（９）に記載のプリンタドライバ更新プログラム。
【００２０】
（１１）前記プリンタドライバは、複数機種のプリンタに共通の機能を実現する共通モジュールと各プリンタに固有の機能を実現する個別モジュールとを有し、前記手順（ａ）において、前記個別モジュールについて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする上記（１）〜（１０）のいずれか１つに記載のプリンタドライバ更新プログラム。
【００２１】
（１２）上記（１）〜（１１）のいずれか１つに記載のプリンタドライバ更新プログラムを記録したコンピュータ読み取り可能な記録媒体。
（１３）複数機種のプリンタのそれぞれに対応する複数のチャイルドドライバを備え、当該複数のチャイルドドライバを切り替えることにより前記複数機種のプリンタを制御可能なユニバーサルプリンタドライバを更新するためのプリンタドライバ更新プログラムであって、前記複数のチャイルドドライバのうちの少なくとも一つのチャイルドドライバについて、当該少なくとも一つのチャイルドドライバの新バージョンのプログラムを前記ユニバーサルプリンタドライバ内に既に存在する前記少なくとも一つのチャイルドドライバの旧バージョンのプログラムに上書きする上書処理と、前記少なくとも一つのチャイルドドライバの新バージョンのプログラムを前記少なくとも一つのチャイルドドライバの旧バージョンのプログラムとは別に前記ユニバーサルプリンタドライバに追加する追加処理のうちいずれか一方の処理を選択する手順（ａ）と、前記手順（ａ）において選択された処理を実行することにより、前記ユニバーサルプリンタドライバを更新する手順（ｂ）と、をコンピュータに実行させるプリンタドライバ更新プログラム。
【００２２】
（１４）複数機種のプリンタを制御可能なプリンタドライバを更新するためのプリンタドライバ更新方法であって、前記プリンタから当該プリンタのファームウエアに関する情報を取得するステップ（ｃ）と、前記プリンタドライバの所定の機能を実現するモジュールについて、前記ステップ（ｃ）において取得された前記プリンタのファームウエアに関する情報に基づいて、当該モジュールの新バージョンのプログラムを前記プリンタドライバ内に既に存在する旧バージョンのプログラムに上書きする上書処理と、前記新バージョンのプログラムを前記旧バージョンのプログラムとは別に前記プリンタドライバに追加する追加処理のうちいずれか一方の処理を選択するステップ（ａ）と、前記ステップ（ａ）において選択された処理を実行することにより、前記プリンタドライバを更新するステップ（ｂ）と、を有することを特徴とするプリンタドライバ更新方法。
（１５）複数機種のプリンタを制御可能なプリンタドライバを更新するためのプリンタドライバ更新方法であって、前記プリンタドライバの所定の機能を実現するモジュールについて、当該モジュールの新バージョンのプログラムを前記プリンタドライバ内に既に存在する旧バージョンのプログラムに上書きする上書処理と、前記新バージョンのプログラムを前記旧バージョンのプログラムとは別に前記プリンタドライバに追加する追加処理のうちいずれか一方の処理を選択するステップ（ａ）と、前記ステップ（ａ）において選択された処理を実行することにより、前記プリンタドライバを更新するステップ（ｂ）と、を有し、前記ステップ（ａ）において前記上書処理が選択された場合、前記上書処理の実行中に当該処理を中止することができるように、前記ステップ（ｂ）において前記旧バージョンのプログラムが前記新バージョンのプログラムにより上書きされる前に、前記旧バージョンのプログラムが異なる名称で記憶部に記憶されることを特徴とするプリンタドライバ更新方法。
【００２３】
（１６）前記新バージョンのプログラムは、当該プログラムのバージョンを示すバージョン情報を有し、前記ステップ（ａ）において、前記新バージョンのプログラムのバージョン情報に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする上記（１４）または（１５）に記載のプリンタドライバ更新方法。
【００２４】
（１７）前記プリンタから当該プリンタのファームウエアに関する情報を取得するステップ（ｃ）をさらに有し、前記ステップ（ａ）において、前記ステップ（ｃ）において取得された前記プリンタのファームウエアに関する情報に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする上記（１５）に記載のプリンタドライバ更新方法。
【００２５】
（１８）前記ステップ（ａ）において、ユーザの操作に基づいて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする上記（１４）〜（１７）のいずれか１つに記載のプリンタドライバ更新方法。
【００２６】
（１９）前記ステップ（ａ）において前記追加処理が選択された場合、前記プリンタドライバにより提供される操作画面に、前記新バージョンおよび旧バージョンのプログラムの名称に加えて、前記新バージョンおよび旧バージョンのプログラムのバージョンがそれぞれ表示されることを特徴とする上記（１４）〜（１８）のいずれか１つに記載のプリンタドライバ更新方法。
【００２７】
（２０）前記ステップ（ａ）において前記上書処理が選択された場合、前記上書処理の実行中に当該処理を中止することができるように、前記ステップ（ｂ）において前記旧バージョンのプログラムが前記新バージョンのプログラムにより上書きされる前に、前記旧バージョンのプログラムが異なる名称で記憶部に記憶されることを特徴とする上記（１４）に記載のプリンタドライバ更新方法。
【００２８】
（２１）前記ステップ（ａ）において、前記モジュール毎に、前記上書処理および追加処理のうちいずれか一方の処理が選択され、前記ステップ（ｂ）において、前記モジュール毎に、前記ステップ（ａ）において選択された処理が実行されることを特徴とする上記（１４）〜（２０）のいずれか１つに記載のプリンタドライバ更新方法。
【００２９】
（２２）前記プリンタドライバは、当該プリンタドライバを構成するモジュールを示す構成情報と当該プリンタドライバのバージョンを示すバージョン情報とを有し、前記ステップ（ｂ）において前記プリンタドライバが更新されるとき、前記構成情報およびバージョン情報が変更されることを特徴とする上記（１４）〜（２１）のいずれか１つに記載のプリンタドライバ更新方法。
【００３０】
（２３）前記プリンタドライバのバージョン情報は、前記プリンタドライバの更新内容に応じて変更されることを特徴とする上記（２２）に記載のプリンタドライバ更新方法。
【００３１】
（２４）前記プリンタドライバは、複数機種のプリンタに共通の機能を実現する共通モジュールと各プリンタに固有の機能を実現する個別モジュールとを有し、前記ステップ（ａ）において、前記個別モジュールについて、前記上書処理および追加処理のうちいずれか一方の処理が選択されることを特徴とする上記（１４）〜（２３）のいずれか１つに記載のプリンタドライバ更新方法。
（２５）複数機種のプリンタのそれぞれに対応する複数のチャイルドドライバを備え、当該複数のチャイルドドライバを切り替えることにより前記複数機種のプリンタを制御可能なユニバーサルプリンタドライバを更新するためのプリンタドライバ更新方法であって、前記複数のチャイルドドライバのうちの少なくとも一つのチャイルドドライバについて、当該少なくとも一つのチャイルドドライバの新バージョンのプログラムを前記ユニバーサルプリンタドライバ内に既に存在する前記少なくとも一つのチャイルドドライバの旧バージョンのプログラムに上書きする上書処理と、前記少なくとも一つのチャイルドドライバの新バージョンのプログラムを前記少なくとも一つのチャイルドドライバの旧バージョンのプログラムとは別に前記ユニバーサルプリンタドライバに追加する追加処理のうちいずれか一方の処理を選択するステップ（ａ）と、前記ステップ（ａ）において選択された処理を実行することにより、前記ユニバーサルプリンタドライバを更新するステップ（ｂ）と、を有することを特徴とするプリンタドライバ更新方法。
【発明の効果】
【００３２】
本発明によれば、複数機種のプリンタを制御可能なプリンタドライバを更新する際、モジュールの新バージョンのプログラムの上書処理と追加処理とを使い分けることが可能になる。したがって、プリンタドライバ自体の都合による更新の場合には、上書処理を選択して旧バージョンのプログラムを使用不能にし、プリンタ都合による更新の場合には、追加処理を選択して新バージョンと旧バージョンの両方のプログラムを使用可能にすることができる。つまり、複数機種のプリンタを制御可能なプリンタドライバを更新する際、更新理由に応じたプリンタドライバの適切な更新が可能になり、ユーザの利便性が向上する。
【図面の簡単な説明】
【００３３】
【図１】本発明の一実施形態に係る印刷システムの全体構成を示すブロック図である。
【図２】図１に示されるＰＣの構成を示すブロック図である。
【図３】プリンタドライバの機能を示すブロック図である。
【図４】更新ツールの機能を示すブロック図である。
【図５】図１に示されるプリンタの構成を示すブロック図である。
【図６】図１に示されるＰＣにより実行されるプリンタドライバ更新処理の手順を示すフローチャートである。
【図７】図６のステップＳ１０４に示される更新処理の手順を示すフローチャートである。
【図８】旧バージョンのチャイルドドライバが新バージョンのチャイルドドライバにより上書きされたプリンタドライバを説明するための図である。
【図９】旧バージョンのチャイルドドライバとは別に新バージョンのチャイルドドライバが追加されたプリンタドライバを説明するための図である。
【図１０】プリンタドライバのバージョン番号を変更する処理を説明するための図である。
【発明を実施するための形態】
【００３４】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
【００３５】
図１は、本発明の一実施形態に係る印刷システムの全体構成を示すブロック図である。
【００３６】
本実施形態の印刷システムは、ＰＣ１０と、プリンタ２０Ａ，２０Ｂ，２０Ｃ，２０Ｄ，２０Ｅとを備える。ＰＣ１０とプリンタ２０Ａ〜２０Ｅとは、ネットワーク５０を介して相互に通信可能に接続されている。
【００３７】
ネットワーク５０は、たとえば、イーサネット（登録商標）、トークンリング、およびＦＤＤＩ（Ｆｉｂｅｒ  Ｄｉｓｔｒｉｂｕｔｅｄ  Ｄａｔａ  Ｉｎｔｅｒｆａｃｅ）等の規格によりコンピュータやネットワーク機器同士を接続したＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、またはＬＡＮ同士を専用線で接続したＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等の各種のネットワークからなる。なお、ネットワーク５０に接続される機器の種類および台数は、図１に示される例に限定されない。また、プリンタ２０Ａ〜２０Ｅには、ＭＦＰ（Ｍｕｌｔｉ−Ｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）等の画像形成装置が含まれる。さらに、プリンタ２０Ａ〜２０Ｅには、ファームウエア（ＦＷ）のバージョンが異なる同一機種のプリンタが含まれる。
【００３８】
図２は、図１に示されるＰＣの構成を示すブロック図である。ＰＣ１０は、印刷指示装置として、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３、ハードディスク１４、ディスプレイ１５、入力装置１６、および通信インタフェース１７を含み、これらは信号をやり取りするためのバス１８を介して相互に接続されている。
【００３９】
ＣＰＵ１１は、プログラムにしたがって上記各部の制御や各種の演算処理を行う。ＲＯＭ１２は、各種プログラムや各種データを格納する。ＲＡＭ１３は、作業領域として一時的にプログラムやデータを記憶する。ハードディスク１４は、オペレーティングシステム（ＯＳ）を含む各種プログラムや、各種データを格納する。
【００４０】
ディスプレイ１５は、たとえば、液晶ディスプレイであり、各種の情報を表示する。入力装置１６は、マウス等のポインティングデバイス、およびキーボードを含み、各種の入力を行うために使用される。通信インタフェース１７は、ネットワーク５０を介し他の機器と通信するためのインタフェースであり、イーサネット（登録商標）、トークンリング、ＦＤＤＩ等の規格が用いられる。
【００４１】
ハードディスク１４には、文書ファイルを作成するための文書ファイル作成アプリケーションと、プリンタドライバ１００（図３参照）とがインストールされている。また、本実施形態では、ハードディスク１４には、プリンタドライバ１００を更新するための更新ツール２００（図４参照）が格納されている。
【００４２】
プリンタドライバ１００は、ＰＣ１０に格納されているＯＳ上にインストールされ、印刷ジョブを生成するプログラムである。本実施形態では、プリンタドライバ１００は、印刷時に、操作画面（不図示）にネットワーク５０上の複数のプリンタの情報を一覧表示し、操作画面を用いたユーザの操作に基づいて、複数のプリンタの中から出力先のプリンタを選択することができる。
【００４３】
図３は、プリンタドライバの機能を示すブロック図である。
【００４４】
プリンタドライバ１００は、ネットワーク通信部１１０、接続機器認識部１２０、表示制御部１３０、入力制御部１４０、チャイルドドライバ切替部１５０、印刷データ作成部１６０、およびチャイルドドライバ格納部１７０を有している。チャイルドドライバ格納部１７０には、複数機種のプリンタにそれぞれ対応する複数のチャイルドドライバが格納されている。ネットワーク通信部１１０、接続機器認識部１２０、表示制御部１３０、入力制御部１４０、チャイルドドライバ切替部１５０、および印刷データ作成部１６０は、複数機種のプリンタに共通の機能を実現する共通モジュールであり、チャイルドドライバは、プリンタに固有の機能を実現する個別モジュールである。プリンタドライバ１００は、ハードディスク１４に格納されており、起動時にＲＡＭ１３上に読み出され、ＣＰＵ１１により実行される。これにより、プリンタドライバ１００の上記各モジュールの機能が発揮される。各モジュールは、たとえば、ＤＬＬ（Ｄｙｎａｍｉｃ  Ｌｉｎｋ  Ｌｉｂｒａｒｙ）等のプログラムファイルからなる。
【００４５】
ネットワーク通信部１１０は、ネットワーク５０上のプリンタ２０Ａ〜２０Ｅと通信して機器情報を取得する。機器情報には、プリンタのモデル名情報やＦＷバージョン情報が含まれる。機器情報を取得するための具体的な手法としては、ＲＦＣ１２１３で規定されているネットワーク管理手法であるＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）  ＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）−ＩＩのパブリックエリアやプライベートエリアが使用される。
【００４６】
接続機器認識部１２０は、ネットワーク通信部１１０により取得された機器情報を認識して、プリンタのモデル名やファームウエアのバージョン番号を特定する。特定されたモデル名やバージョン番号は、表示制御部１３０に渡される。
【００４７】
表示制御部１３０は、接続機器認識部１２０から渡されるプリンタに関する情報を表示する。表示制御部１３０は、ＰＣ１０のディスプレイ１５に表示される操作画面上に、ネットワーク５０上で発見されたプリンタのモデル名やバージョン番号を表示する。
【００４８】
入力制御部１４０は、操作画面を通じて、ユーザが複数のプリンタの中から１つのプリンタを選択するための情報の入力を受け付ける。入力制御部１４０は、操作画面上に表示される複数のプリンタの中から、ユーザによる１つのプリンタの選択を受け付ける。あるいは、入力制御部１４０は、ユーザによるプリンタのモデル名やバージョン番号の直接的な入力を受け付ける。あるいは、入力制御部１４０は、使用履歴に含まれるプリンタの中から、ユーザによる１つのプリンタの選択を受け付ける。
【００４９】
チャイルドドライバ切替部１５０は、出力先のプリンタに応じて、チャイルドドライバを切り替える。チャイルドドライバ切替部１５０は、操作画面を通じてユーザにより選択された１つのプリンタが、現在、選択されているプリンタと異なる場合、適切なチャイルドドライバに切り替える。上述したとおり、チャイルドドライバは、たとえば、ＤＬＬ等のプログラムファイルであり、プリンタドライバ１００に含まれる他のモジュールと連携して動作する。チャイルドドライバは、たとえば、プリンタに固有の機能についての設定情報を出力する機能や当該設定情報を設定するための操作画面（印刷設定画面）を提供する機能を実現する。プリンタに固有の機能には、たとえば、セキュリティのためのパスワード印刷機能およびトナー消費量を抑制するためのドラフト印刷機能等の印刷機能、ステープル処理、穴開け処理、折り処理、および糊付け処理等の後処理機能、ＰＣおよびプリンタ間の双方向通信機能が含まれる。
【００５０】
印刷データ作成部１６０は、各プリンタでビットマップ画像データに変換される印刷データと、プリンタのステープル処理、穴開け処理、折り処理等の後処理を指示する指示データとを生成する。印刷データおよび指示データは、印刷ジョブとして、出力先のプリンタに送信される。
【００５１】
次に、プリンタドライバ１００の更新に用いられる更新ツールについて説明する。
【００５２】
図４は、更新ツールの機能を示すブロック図である。更新ツール２００は、ＰＣ１０にインストール済みのプリンタドライバ１００に対して、チャイルドドライバを上書きまたは追加するためのプログラムである。
【００５３】
更新ツール２００は、更新対象ＵＰＤ探索部２１０、更新方法選択部２２０、更新方法選択基準記憶部２３０、更新実行部２４０、表示制御部２５０、および更新用モジュール格納部２６０を有している。更新方法選択基準記憶部２３０には、各チャイルドドライバのバージョン番号とチャイルドドライバの更新方法とを関連付けた情報テーブルが記憶されている。更新用モジュール格納部２６０には、プリンタの機種別の新バージョンのチャイルドドライバが複数格納されている。
【００５４】
更新対象ＵＰＤ探索部２１０は、ＰＣ１０の内部にインストールされている更新対象のプリンタドライバを探索する。更新対象ＵＰＤ探索部２１０は、ＰＣ１０の内部にプリンタドライバが存在することを確認し、存在が確認されたプリンタドライバのバージョン番号に基づいて、当該プリンタドライバが更新対象のプリンタドライバであるか否かを判断する。
【００５５】
更新方法選択部２２０は、更新対象のプリンタドライバの各チャイルドドライバについて、上書処理を行うか、または、追加処理を行うかを選択する。更新方法選択部２２０は、更新方法選択基準記憶部２３０に記憶されている情報テーブルを参照して、チャイルドドライバのバージョン番号から、上書処理および追加処理のうちいずれか一方の処理を選択する。
【００５６】
更新実行部２４０は、更新方法選択部２２０による選択結果にしたがって、チャイルドドライバの上書きまたは追加を行う。更新方法選択部２２０により上書処理が選択される場合、更新実行部２４０は、チャイルドドライバの新バージョンのプログラムにより旧バージョンのプログラムを上書きする。更新方法選択部２２０により追加処理が選択される場合、更新実行部２４０は、チャイルドドライバの新バージョンのプログラムを、旧バージョンのプログラムとは別にプリンタドライバ１００に追加する。
【００５７】
表示制御部２５０は、更新処理の実行結果または実行状況をユーザに通知するための通知画面（不図示）を表示する。
【００５８】
図５は、図１に示されるプリンタの構成を示すブロック図である。プリンタ２０Ａ〜２０Ｅは、相互に同様の構成であるため、以下、プリンタ２０Ａを代表として用いて説明する。
【００５９】
プリンタ２０Ａは、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、ハードディスク２４、操作パネル２５、印刷部２６、後処理部２７、および通信インタフェース２８を含み、これらは信号をやり取りするためのバス２９を介して相互に接続されている。なお、プリンタ２０Ａの上記各部のうち、ＰＣ１０の上記各部と同様の機能を有する部分については、説明の重複を避けるためその説明を省略する。
【００６０】
操作パネル２５は、各種情報の表示および各種指示の入力に使用される。印刷部２６は、電子写真式プロセス等の周知の作像プロセスを用いて、ビットマップ画像データに基づく画像を用紙等の記録媒体に印刷する。後処理部２７は、印刷部２６により印刷が実行された用紙に対して、ステープル処理、穴開け処理、折り処理等の後処理を実行する。
【００６１】
ＲＡＭ２３およびハードディスク２４等の記憶部には、印刷ジョブを記憶するための印刷ジョブ記憶部が割り当てられる。また、ハードディスク２４は、ネットワーク通信部および制御部に対応するプログラムを格納するためのそれぞれの領域を有する。
【００６２】
ネットワーク通信部は、ＰＣ１０からの要求に応じて、プリンタ２０Ａに関する情報（たとえば、機器情報）を提供する。このため、ネットワーク通信部には、ＭＩＢが設けられている。また、ネットワーク通信部は、ネットワーク５０上のＰＣから印刷ジョブを受信する。
【００６３】
制御部は、印刷部２６への印刷ジョブの提供を制御する。制御部は、印刷部２６が印刷処理中でなければ印刷ジョブ記憶部から印刷ジョブを読み出して印刷部２６に送信する一方で、印刷処理中であれば印刷ジョブを印刷ジョブ記憶部に記憶させる。ネットワーク通信部および制御部の機能は、対応するプログラムをＣＰＵ２１が実行することにより発揮される。上述したとおり、たとえば、これらの機能の不具合を修正する場合、対応するプログラムを含むファームウエアが更新される。また、パスワード印刷機能、ドラフト印刷機能、用紙にウォーターマークを印刷するウォーターマーク機能、ユーザへの課金を目的とするユーザ認証機能等の機能が追加または仕様変更される場合にも、ファームウエアが更新される。また、新たな後処理機能がプリンタに追加される場合にも、ファームウエアが更新される。
【００６４】
なお、ＰＣ１０およびプリンタ２０Ａ〜２０Ｅは、上記構成要素以外の構成要素を含んでいてもよく、あるいは、上記構成要素のうちの一部が含まれていなくてもよい。
【００６５】
次に、図６〜図９を参照して、ＰＣ１０にインストールされているプリンタドライバ１００を更新する処理について説明する。
【００６６】
図６は、図１に示されるＰＣにおいて実行されるプリンタドライバ更新処理の手順を示すフローチャートである。なお、図６のフローチャートにより示されるアルゴリズムは、ＰＣ１０のハードディスク１４にプログラムとして記憶されており、ＣＰＵ１１によって実行される。
【００６７】
プリンタドライバ更新処理では、まず、更新ツール２００が起動される（ステップＳ１０１）。たとえば、ユーザのマウス操作により、更新ツール２００のアイコンが押下（クリック）される場合、更新ツール２００が起動される。あるいは、本実施形態とは異なり、更新ツール２００がＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）やＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）等の記録媒体により提供される場合、記録媒体がＰＣ１０に挿入されたときに更新ツール２００が自動的に起動され得る。
【００６８】
続いて、更新対象が検索される（ステップＳ１０２）。本実施形態では、ＰＣ１０の内部に更新対象となるプリンタドライバが存在するか否かが探索される。具体的には、まず、プリンタドライバが格納されるべきＰＣ１０内部のフォルダにプリンタドライバが存在することが確認される。そして、存在が確認されたプリンタドライバのバージョン番号に基づいて、当該プリンタドライバが更新対象のプリンタドライバであるか否かが判断される。本実施形態では、プリンタドライバのバージョン番号に基づいて、更新ツール２００よりも時間的に先に製造されたプリンタドライバが更新対象のプリンタドライバであると判断される。なお、プリンタドライバ１００のバージョン番号を示すバージョン情報は、当該バージョン情報が容易に認識されるように、たとえば、プリンタドライバ１００に含まれる専用のファイルに格納されている。
【００６９】
続いて、更新対象が発見されたか否かが判断される（ステップＳ１０３）。本実施形態では、ステップＳ１０２に示す処理で、更新対象であるプリンタドライバ１００が発見されたか否かが判断される。
【００７０】
更新対象が発見されないと判断される場合（ステップＳ１０３：ＮＯ）、ステップＳ１０５の処理に移行する。一方、更新対象が発見されたと判断される場合（ステップＳ１０３：ＹＥＳ）、更新処理が実行される（ステップＳ１０４）。本実施形態では、プリンタドライバに含まれる複数のチャイルドドライバについて、チャイルドドライバ毎に上書処理および追加処理のうちいずれか一方の処理が選択され、選択結果にしたがったプリンタドライバの更新が行われる。ステップＳ１０４に示される更新処理の詳細については後述する。
【００７１】
そして、更新結果が表示され（ステップＳ１０５）、処理が終了される。本実施形態では、更新対象のプリンタドライバが存在しない旨、または、チャイルドドライバが上書された旨もしくはチャイルドドライバが追加された旨がディスプレイ１５に表示される。なお、エラーが発生した場合にも、その旨がディスプレイ１５に表示される。
【００７２】
図７は、図６のステップＳ１０４に示される更新処理の手順を示すフローチャートである。
【００７３】
更新処理では、まず、１つのチャイルドドライバが選択される（ステップＳ２０１）。本実施形態では、プリンタドライバ１００に含まれる複数のチャイルドドライバの中から、処理対象の１つのチャイルドドライバが選択される。具体的には、プリンタドライバ１００に含まれる複数のチャイルドドライバの中から、更新ツール２００に格納されている新バージョンの１つのチャイルドドライバと同一のモデル名を有する旧バージョンの１つのチャイルドドライバが、処理対象のチャイルドドライバとして選択される。
【００７４】
続いて、更新方法が上書きであるか否かが判断される（ステップＳ２０２）。本実施形態では、ステップＳ２０１に示す処理で選択されたチャイルドドライバに対応する新バージョンのチャイルドドライバのバージョン番号に基づいて、旧バージョンのチャイルドドライバが新バージョンのチャイルドドライバにより上書きされるか否かが判断される。本実施形態では、チャイルドドライバのバージョン番号とチャイルドドライバの更新方法とを関連付けた情報テーブルを参照することにより、新バージョンのチャイルドドライバのバージョン番号から、更新方法が上書きであるか否かが判断される。なお、チャイルドドライバのバージョン番号を示すバージョン情報は、たとえば、チャイルドドライバに含まれる専用のファイルに格納されている。
【００７５】
更新方法が上書きであると判断される場合（ステップＳ２０２：ＹＥＳ）、チャイルドドライバが上書きされる（ステップＳ２０３）。本実施形態では、ステップＳ２０１に示す処理で選択された旧バージョンのチャイルドドライバが、更新ツール２００により提供される新バージョンのチャイルドドライバにより上書きされる。上述したとおり、チャイルドドライバは、ＤＬＬ等のプログラムファイルであり、旧バージョンのプログラムファイルが新バージョンのプログラムファイルにより上書きされる。なお、本実施形態では、新バージョンのチャイルドドライバにより旧バージョンのチャイルドドライバが上書きされる前に、旧バージョンのチャイルドドライバは、ファイル名を変更された上でハードディスク２４の空き領域にコピーされる。このような構成によれば、旧バージョンのチャイルドドライバが新バージョンのチャイルドドライバにより上書きされる場合であっても、旧バージョンのチャイルドドライバのコピーが存在するため、上書処理の実行中に処理を中止して元の状態に戻すことが可能になる。また、旧バージョンのチャイルドドライバのコピーをそのまま保存しておけば、上書処理の完了後であっても、必要に応じて、プリンタドライバ１００を簡単に元の状態に復旧することが可能になる。
【００７６】
図８は、旧バージョンのチャイルドドライバが新バージョンのチャイルドドライバにより上書きされたプリンタドライバを説明するための図である。図８（Ａ）は、更新前のプリンタドライバのチャイルドドライバ一覧画面３１０ａを示す図であり、図８（Ｂ）は、更新後のプリンタドライバのチャイルドドライバ一覧画面３１０ｂを示す図である。チャイルドドライバ一覧画面３１０ａ，３１０ｂは、たとえば、チャイルドドライバ格納部１７０に格納されている構成情報に基づいて生成される。構成情報は、プリンタドライバ１００に含まれるチャイルドドライバの情報を含み、プリンタドライバ１００の更新時に更新ツール２００の機能により変更される。
【００７７】
上書処理では、旧バージョンのチャイルドドライバが、新バージョンのチャイルドドライバにより上書きされる。図８では、モデル名「プリンタ  Ｃ６５２Ｓｅｒｉｅｓ」の旧バージョンのチャイルドドライバが、新バージョンのチャイルドドライバ「プリンタ  Ｃ６５２Ｓｅｒｉｅｓ（Ｖｅｒｓｉｏｎ  ２．０．０．０）」により上書きされる。
【００７８】
一方、ステップＳ２０２に示す処理で、更新方法が上書きでないと判断される場合（ステップＳ２０２：ＮＯ）、更新方法が追加であるか否かが判断される（ステップＳ２０４）。本実施形態では、ステップＳ２０１に示す処理で選択されたチャイルドドライバに対応する新バージョンのチャイルドドライバのバージョン番号に基づいて、新バージョンのチャイルドドライバが、旧バージョンのチャイルドドライバとは別にプリンタドライバ１００に追加されるか否かが判断される。本実施形態では、チャイルドドライバのバージョン番号とチャイルドドライバの更新方法とを関連付けた情報テーブルを参照することにより、新バージョンのチャイルドドライバのバージョン番号から、更新方法が追加であるか否かが判断される。
【００７９】
更新方法が追加でないと判断される場合（ステップＳ２０４：ＮＯ）、ステップＳ２０６の処理に移行する。一方、更新方法が追加であると判断される場合（ステップＳ２０４：ＹＥＳ）、チャイルドドライバが追加される（ステップＳ２０５）。本実施形態では、ステップＳ２０１に示す処理で選択された旧バージョンのチャイルドドライバとは別に、更新ツール２００により提供される新バージョンのチャイルドドライバがプリンタドライバ１００に追加される。
【００８０】
図９は、旧バージョンのチャイルドドライバとは別に新バージョンのチャイルドドライバが追加されたプリンタドライバを説明するための図である。図９（Ａ）は、更新前のプリンタドライバのチャイルドドライバ一覧画面３２０ａを示す図であり、図９（Ｂ）は、更新後のプリンタドライバのチャイルドドライバ一覧画面３２０ｂを示す図である。追加処理では、旧バージョンのチャイルドドライバと、新バージョンのチャイルドドライバとがプリンタドライバ１００の内部に並存するようになる。図９では、モデル名「プリンタ  Ｃ６５２Ｓｅｒｉｅｓ」の旧バージョンのチャイルドドライバが削除されることなく、旧バージョンのチャイルドドライバ「プリンタ  Ｃ６５２Ｓｅｒｉｅｓ（Ｖｅｒｓｉｏｎ  １．２．３．４」と新バージョンのチャイルドドライバ「プリンタ  Ｃ６５２Ｓｅｒｉｅｓ（Ｖｅｒｓｉｏｎ  １．２．４．０）」とが並存している。
【００８１】
図９（Ｂ）に示されるとおり、本実施形態では、更新後のプリンタドライバ１００により提供されるチャイルドドライバ一覧画面３２０ｂ上には、旧バージョンのチャイルドドライバと新バージョンのチャイルドドライバの両方のバージョン番号がそれぞれ表示される。このような構成によれば、ユーザは、バージョンの異なる同一機種用の２つのチャイルドドライバを認識することができる。
【００８２】
なお、図９（Ｂ）では、新バージョンのチャイルドドライバが追加されたチャイルドドライバのみバージョン番号が表示されている。しかしながら、チャイルドドライバ一覧画面３２０ｂには、すべてのチャイルドドライバのバージョン番号が表示されてもよい。また、上記の追加処理は、チャイルドドライバが下位互換性を有さない場合にとりわけ有効である。
【００８３】
続いて、更新結果が記憶される（ステップＳ２０６）。本実施形態では、図６のステップＳ１０５に示す処理において更新結果をユーザに通知するために、たとえば、ＲＡＭ１３に更新結果が記憶される。
【００８４】
続いて、すべてのチャイルドドライバが選択されたか否かが判断される（ステップＳ２０７）。本実施形態では、プリンタドライバ１００に含まれる処理対象のすべてのチャイルドドライバが選択されたか否かが判断される。
【００８５】
すべてのチャイルドドライバが選択されていないと判断される場合（ステップＳ２０７：ＮＯ）、すべてのチャイルドドライバが選択されるまで、ステップＳ２０１以下の処理が繰り返される。一方、すべてのチャイルドドライバが選択されたと判断される場合（ステップＳ２０７：ＹＥＳ）、処理が終了される。
【００８６】
以上のとおり、図７に示されるフローチャートの処理によれば、チャイルドドライバ毎に、上書処理を行うか追加処理を行うかが選択され、選択結果に基づいて、プリンタドライバの更新が実行される。具体的には、上書処理が選択される場合には、新バージョンのチャイルドドライバにより旧バージョンのチャイルドドライバが上書きされる。一方、追加処理が選択される場合には、新バージョンのチャイルドドライバが、旧バージョンのチャイルドドライバとは別にプリンタドライバ１００に追加される。
【００８７】
このような構成によれば、たとえば、チャイルドドライバ自体の都合によるプリンタドライバの更新の場合には、上書処理を選択して旧バージョンのチャイルドドライバを使用不能にし、プリンタ都合による更新の場合には、追加処理を選択して新バージョンと旧バージョンの両方のチャイルドドライバを使用可能にすることができる。すなわち、必要のない旧バージョンのチャイルドドライバをユーザが使用可能な状態にすることなく、バージョンが異なる同一機種のプリンタに１つのプリンタドライバで対応することが可能になる。また、上書処理が選択されることにより、メモリ資源が節約される。
【００８８】
以上のとおり、本実施形態によれば、複数機種のプリンタを制御可能なプリンタドライバを更新する際、新バージョンのチャイルドドライバの上書処理と追加処理とを使い分けることが可能になる。したがって、更新理由に応じたプリンタドライバの適切な更新が可能になり、ユーザの利便性が向上する。
【００８９】
なお、上述した実施形態では、更新方法選択基準記憶部２３０に格納されている、各チャイルドドライバのバージョン番号と更新方法とを関連付けた情報テーブルを参照することにより、チャイルドドライバ毎に、上書処理および追加処理のうちいずれか一方の処理が選択された。
【００９０】
しかしながら、チャイルドドライバの更新方法を選択する方法は、上記実施形態に限定されるものではない。たとえば、プリンタドライバ１００のバージョン番号とプリンタドライバ１００に含まれる各チャイルドドライバの更新方法とを関連付けて情報テーブルとして予め格納しておき、プリンタドライバ１００のバージョン番号から、チャイルドドライバの更新方法が選択されてもよい。
【００９１】
あるいは、旧バージョンのチャイルドドライバのバージョン番号と新バージョンのチャイルドドライバのバージョン番号とが比較されることにより、チャイルドドライバの更新方法が選択されてもよい。たとえば、上書処理の場合、最上位の桁が繰り上がるように、新バージョンのチャイルドドライバにバージョン番号が付与され、追加処理の場合、３桁目が繰り上がるように、新バージョンのチャイルドドライバにバージョン番号が付与される。このような構成によれば、たとえば、旧バージョンのチャイルドドライバのバージョン番号が「Ｖｅｒｓｉｏｎ  １．２．３．４」であり、新バージョンのチャイルドドライバのバージョン番号が「Ｖｅｒｓｉｏｎ  ２．０．０．０」である場合、チャイルドドライバの上書処理が選択される。一方、旧バージョンのチャイルドドライバのバージョン番号が「Ｖｅｒｓｉｏｎ  １．２．３．４」であり、新バージョンのチャイルドドライバのバージョン番号が「Ｖｅｒｓｉｏｎ  １．２．４．０」である場合、チャイルドドライバの追加処理が選択される。したがって、情報テーブルを参照することなく、チャイルドドライバの更新方法を選択することが可能になる。
【００９２】
あるいは、プリンタから取得されるＦＷバージョン情報に基づいて、チャイルドドライバの更新方法が選択されてもよい。この場合、たとえば、ファームウエアのバージョンより特定される当該ファームウエアの製造時点が特定の時点よりも先の場合には、プリンタドライバ自体の都合による更新と判断され、上書処理が選択される。一方、製造時点が特定の時点よりも後の場合には、プリンタ都合による更新と判断され、追加処理が選択される。このような構成によれば、ネットワーク５０上に存在するプリンタに対応するチャイルドドライバのみが上書きまたは追加されるため、ユーザにとって不要なチャイルドドライバの上書きまたは追加が省略される。加えて、プリンタドライバ１００の更新処理に要する時間が短縮される。
【００９３】
あるいは、更新ツール２００により提供される所定の選択画面に対するユーザの操作に基づいて、上書処理および追加処理のうちいずれか一方の処理が選択されてもよい。
【００９４】
最後に、プリンタドライバに付与されるバージョン番号について説明する。
【００９５】
上述した実施形態では、チャイルドドライバ単位でプリンタドライバが更新されるため、バージョンＡのプリンタドライバを更新した更新結果と、バージョンＢのプリンタドライバを更新した更新結果とが異なる場合がある。
【００９６】
そのため、更新ツール２００に、更新対象のプリンタドライバのバージョン番号と、それぞれのバージョンを更新した後のバージョン番号を予め格納しておき、更新処理の実行時に、更新内容に応じて、プリンタドライバ１００のバージョン番号を示すバージョン情報を適切に変更する。
【００９７】
具体的には、図１０のバージョン情報表示画面４１０，４２０に示されるとおり、たとえば、旧バージョンが「１．２．１．０」であるプリンタドライバのバージョン番号は、「１．３．０．０」に変更され、旧バージョンが「１．１０．１．０」であるプリンタドライバのバージョン番号は、「１．１１．１．０」に変更される。このような構成によれば、プリンタドライバに含まれるチャイルドドライバをバージョン番号から認識することが可能になる。
【００９８】
本発明は、上記実施形態のみに限定されるものではなく、特許請求の範囲内において、種々改変することができる。
【００９９】
たとえば、上記実施形態では、プリンタドライバがインストールされているＰＣ上で更新ツールが起動され、プリンタドライバの更新が行われた。しかしながら、更新ツールは、たとえば、プリンタドライバがインストールされているＰＣとネットワークを介して接続される他のＰＣ上で起動されてもよい。
【０１００】
また、上記実施形態では、チャイルドドライバ毎に上書処理および追加処理のうちいずれか一方の処理が選択され、プリンタドライバの更新が行われた。しかしながら、すべてのチャイルドドライバに対して同一の処理が一括して選択され、プリンタドライバの更新が行われてもよい。
【０１０１】
また、上記実施形態では、チャイルドドライバの上書処理または追加処理が実行された。しかしながら、チャイルドドライバ以外のモジュールについても、上書処理および追加処理のうちいずれか一方の処理が選択され、選択された処理が実行されてもよい。
【０１０２】
本実施形態にかかる印刷指示装置における各種処理を行う手段および方法は、専用のハードウエア回路、またはプログラムされたコンピュータのいずれによっても実現することが可能である。上記プリンタドライバ更新プログラムは、たとえば、フレキシブルディスクおよびＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピュータ読み取り可能な記録媒体に記録されたプログラムは、通常、ハードディスク等の記憶部に転送され記憶される。また、上記更新プログラムは、単独のアプリケーションソフトとして提供されてもよいし、印刷指示装置の一機能としてその装置のソフトウエアに組み込まれてもよい。
【符号の説明】
【０１０３】
１０  ＰＣ、
１１，２１  ＣＰＵ、
１２，２２  ＲＯＭ、
１３，２３  ＲＡＭ、
１４，２４  ハードディスク、
１５  ディスプレイ、
１６  入力装置、
１７，２８  通信インタフェース、
１８，２９  バス、
２０Ａ〜２０Ｅ  プリンタ、
２５  操作パネル、
２６  印刷部、
２７  後処理部、
５０  ネットワーク、
１００  プリンタドライバ、
２００  更新ツール、
３１０，３２０  チャイルドドライバ一覧画面、
４１０，４２０  バージョン情報表示画面。
【図１】
0005605076.tif 000002
【図２】
0005605076.tif 000003
【図３】
0005605076.tif 000004
【図４】
0005605076.tif 000005
【図５】
0005605076.tif 000006
【図６】
0005605076.tif 000007
【図７】
0005605076.tif 000008
【図８】
0005605076.tif 000009
【図９】
0005605076.tif 000010
【図１０】
0005605076.tif 000011