(57)【要約】【課題】特定のアーキテクチャのデバイスドライバしか動作しないＯＳに更新した場合であっても、更新後のＯＳで動作可能なデバイスドライバを、ユーザが意識することなくインストールすることが可能となる情報処理装置を提供する。【解決手段】ホストコンピュータ１０００は、第１ＯＳへの更新前に、更新前の第２ＯＳ上で利用されていた第１ＯＳで動作しないアーキテクチャのプリンタドライバ２０１の機器ＩＤ及びドライバ名の少なくともいずれかを含むドライバ情報を、更新前ドライバ情報として保持し、第１ＯＳへの更新が行われた後に、保持されたドライバ情報に対応する特定のアーキテクチャのデバイスドライバ２０１のインストールを行う。【選択図】図３
2018173998.tif 000002
【特許請求の範囲】
【請求項１】
特定のアーキテクチャのデバイスドライバしか動作しない第１ＯＳに更新することが可能な情報処理装置であって、
前記第１ＯＳへの更新前に、更新前の第２ＯＳ上で利用されていた前記第１ＯＳで動作しないアーキテクチャのデバイスドライバのハードウェアＩＤ及び機種情報の少なくともいずれかを含むドライバ情報を、特定の領域で保持する保持手段と、
前記第１ＯＳへの更新が行われた後に、前記保持されたドライバ情報に対応する特定のアーキテクチャのデバイスドライバのインストールを行うドライバ管理手段と、を有する
ことを特徴とする情報処理装置。
【請求項２】
前記保持手段は、前記第２ＯＳの機能として実現されることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記保持手段は、前記第２ＯＳ上で動作するデバイスドライバを管理するアプリケーションの機能として実現されることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記アプリケーションは、前記デバイスドライバと同じベンダから提供されることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記アプリケーションの機能としての前記保持手段は、さらに前記ドライバ情報とともにＯＳの情報も保持し、
前記アプリケーションの機能として、起動時に、現在のＯＳの情報と前記保持されたＯＳの情報とにより、前記第１ＯＳへの更新を検知する検知手段を更に有する
ことを特徴とする請求項３または４に記載の情報処理装置。
【請求項６】
前記保持手段は、さらに、プリンタ名、ポート情報、及び印刷設定情報を保持し、
前記ドライバ管理手段は、前記デバイスドライバのインストールを行った後に、前記保持されたプリンタ名、ポート情報、及び印刷設定情報に基づき該デバイスドライバに関連付けるプリンタキューの設定を行う
ことを特徴とする請求項１ないし５のいずれか１項に記載の情報処理装置。
【請求項７】
前記ハードウェアＩＤには、モデル識別情報、及び互換識別情報が含まれることを特徴とする請求項１ないし５のいずれか１項に記載の情報処理装置。
【請求項８】
前記インストールされるデバイスドライバは、前記モデル識別情報、前記互換識別情報、または前記機種情報で検索されたデバイスドライバであることを特徴とする請求項７に記載の情報処理装置。
【請求項９】
更新前の第２ＯＳ上で利用されていたデバイスドライバのうち、前記第１ＯＳへの更新が行われたことに伴い削除されたデバイスドライバがあるか否か、を判断する判断手段をさらに備え、
前記ドライバ管理手段は、前記判断手段が削除されたと判断したデバイスドライバのドライバ情報に対応する特定のアーキテクチャのデバイスドライバのインストールを行う
ことを特徴とする請求項１ないし８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記ドライバ管理手段は、前記保持されたドライバ情報に対応する特定のアーキテクチャのデバイスドライバが存在しない場合に、前記第１ＯＳへの更新が行われた後に、動作しないデバイスドライバが存在することをユーザに通知する
ことを特徴とする請求項１ないし９のいずれか１項に記載の情報処理装置。
【請求項１１】
特定のアーキテクチャのデバイスドライバしか動作しない第１ＯＳに更新することが可能な情報処理装置の制御方法であって、
前記第１ＯＳへの更新前に、更新前の第２ＯＳ上で利用されていた前記第１ＯＳで動作しないアーキテクチャのデバイスドライバのハードウェアＩＤ及び機種情報の少なくともいずれかを含むドライバ情報を、特定の領域で保持する工程と、
前記第１ＯＳへの更新が行われた後に、前記保持されたドライバ情報に対応する特定のアーキテクチャのデバイスドライバのインストールを行う工程と、を有する
ことを特徴とする制御方法。
【請求項１２】
請求項１乃至１０のいずれか１項に記載の情報処理装置が備える各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、制御方法、及びプログラムに関する。
【背景技術】
【０００２】
装置を制御するためのドライバソフト（制御コマンド生成プログラム）は、その時々のＯＳが対応している仕組み（アーキテクチャ）に沿って作られている。例えば、画像形成装置を制御するためのプリンタドライバは、動作可能なＯＳのシステムの種類（６４ビットか３２ビットか）や、構成されるファイル、対応するＡＰＩ等のアーキテクチャによって分類される。また、それぞれ動作可能なＯＳも異なっている。
【０００３】
ＯＳによってはそれらプリンタドライバのうち複数の種類が動作可能で、インストール可能なものが存在する。特許文献１に記載の技術では、プリンタドライバをバージョンアップする際に、自ＯＳ用のプリンタドライバと同時に異なるＯＳ用のプリンタドライバ(代替ドライバ)も同時に更新することができる。この技術により、複数種類のプリンタドライバがコンピュータにインストールされている場合に、それらを一度にバージョンアップすることが可能である。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５５３１８５８号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、複数種類のプリンタドライバがコンピュータにインストールされていたとしても、それらインストール済みのプリンタドライバがＯＳの更新後に必ず使用できるわけではない。そのため、更新後のＯＳで対応するシステムの種類やアーキテクチャが変更された場合には、ユーザは印刷できなくなることがある。またその場合に、ユーザ自らが更新後のＯＳに対応するプリンタドライバを画像形成装置ベンダのホームページから取得し、再度プリンタドライバのインストールを行う手間がかかってしまう。
【０００６】
本発明は、特定のアーキテクチャのデバイスドライバしか動作しないＯＳに更新した場合であっても、更新後のＯＳで動作可能なデバイスドライバを、ユーザが意識することなくインストールすることが可能となる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一実施形態の情報処理装置は、特定のアーキテクチャのデバイスドライバしか動作しない第１ＯＳに更新することが可能な情報処理装置であって、前記第１ＯＳへの更新前に、更新前の第２ＯＳ上で利用されていた前記第１ＯＳで動作しないアーキテクチャのデバイスドライバのハードウェアＩＤ及び機種情報の少なくともいずれかを含むドライバ情報を、特定の領域で保持する保持手段と、前記第１ＯＳへの更新が行われた後に、前記保持されたドライバ情報に対応する特定のアーキテクチャのデバイスドライバのインストールを行うドライバ管理手段と、を有する。
【発明の効果】
【０００８】
本発明の情報処理装置によれば、特定のアーキテクチャのデバイスドライバしか動作しないＯＳに更新した場合であっても、更新後のＯＳで動作可能なデバイスドライバを、ユーザが意識することなく提供することが可能となる。
【図面の簡単な説明】
【０００９】
【図１】本発明の一実施形態におけるプリントシステムの全体構成を示す図である。
【図２】ホストコンピュータ及びプリンタのハードウェア構成を示す図である。
【図３】ホストコンピュータのソフトウェア構成例を示す図である。
【図４】サーバコンピュータのソフトウェア構成例を示す図である。
【図５】機器ＩＤの構成及びその例を示す図である。
【図６】ドライバ情報を保持する処理を説明するフローチャートである。
【図７】プリンタドライバをインストールする処理を示すフローチャートである。
【図８】プリンタドライバをインストールする処理を示すフローチャートである。
【図９】ドライバ情報を保持する処理を説明するフローチャートである。
【図１０】プリンタドライバをインストールする処理を示すフローチャートである。
【図１１】プリンタドライバをインストールする処理を示すフローチャートである。
【図１２】通知メッセージの一例を示す図である。
【図１３】ドライバ検索処理を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について図面などを参照して説明する。
（第１実施形態）
図１は、本実施形態におけるプリントシステムの全体構成の一例を示す図である。
プリントシステムは、少なくともホストコンピュータ１０００、サーバコンピュータ１５００、及びプリンタ２０００を備える。ホストコンピュータ１０００、サーバコンピュータ１５００、及びプリンタ２０００は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワーク３０００を介して通信可能に接続されている。なお、本発明の機能が実行されるのであれば、ホストコンピュータ１０００、サーバコンピュータ１５００、及びプリンタ２０００の接続形態は、これに限定されるものではなく、ローカル接続であってもよい。また、ホストコンピュータ１０００、サーバコンピュータ１５００、及びプリンタ２０００は、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであってもよい。
【００１１】
図２は、ホストコンピュータ及びプリンタのハードウェア構成の一例を示す図である。
図２において、ホストコンピュータ１０００は、ＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１に記憶された文書処理プログラム等に基づいて文書や画像の処理を行うＣＰＵ１を備える。また、システムバス４に接続される各プリンタ２０００をＣＰＵ１が総括的に制御する。
【００１２】
また、ＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１には、ＣＰＵ１の制御プログラムであるＯＳ（オペレーティングシステム）等が記憶される。また、ＲＯＭ３のフォント用ＲＯＭあるいは外部メモリ１１には、文書の処理の際に使用するフォントデータ等が記憶される。ＲＯＭ３のデータ用ＲＯＭあるいは外部メモリ１１には、文書や画像の処理等を行う際に使用する各種データが記憶される。ＲＡＭ２は、ＣＰＵ１の主メモリ、ワークエリア等として機能する。
【００１３】
キーボードコントローラ（ＫＢＣ）５は、キーボード９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）６は、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。ディスクコントローラ（ＤＫＣ）７は、ブートプログラム、各種のアプリケーション、フォントデータ、プリンタドライバ等を記憶するハードディスク（ＨＤＤ）等の外部メモリ１１とのアクセスを制御する。プリンタコントローラ（ＰＲＴＣ）８は、双方向性インターフェース３０を介してプリンタ２０００に接続され、プリンタ２０００との通信制御処理を実行する。
【００１４】
なお、ＣＰＵ１は、例えば、ＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ１は、ＣＲＴ１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは、印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。
【００１５】
なお、サーバコンピュータ１５００も図２で説明したホストコンピュータ１０００と同様のハードウェア構成を持つ単独のサーバ装置あるいはクラスターサーバ装置として構成される。
【００１６】
プリンタ２０００は、ＣＰＵ１２により制御される。ＣＰＵ１２は、ＲＯＭ１３のプログラム用ＲＯＭあるいは外部メモリ１４に記憶された制御プログラム等に基づいて動作する。ＣＰＵ１２は、印刷部Ｉ／Ｆ１６を介してシステムバス１５に接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、ＲＯＭ１３のプログラムＲＯＭには、ＣＰＵ１２の制御プログラム等が記憶される。ＲＯＭ１３のフォント用ＲＯＭには、前述した出力情報を生成する際に使用するフォントデータ等が記憶される。プリンタ２０００がハードディスク等の外部メモリ１４がないプリンタである場合、ＲＯＭ１３のデータ用ＲＯＭには、ホストコンピュータ１０００で利用される情報等が記憶される。
【００１７】
ＣＰＵ１２は、入力部１８を介してホストコンピュータ１０００との通信処理が可能となっており、プリンタ２０００内の情報等をホストコンピュータ１０００に通知できる。入力部１８は、操作パネル２１をユーザが操作するためのスイッチ及びＬＥＤ表示器等を有する。ＲＡＭ１９は、ＣＰＵ１２の主メモリや、ワークエリア等として機能する。また、ＲＡＭ１９は、前述した出力情報の展開領域や、環境データの格納領域等としても用いられる。
【００１８】
外部メモリ１４は、オプションとしてプリンタ２０００に接続される。外部メモリ１４は、フォントデータ、エミュレーションプログラム、フォームデータ、言語系の異なるプリンタ制御言語を解釈するプログラム、操作パネル２１から入力されたプリンタモード設定情報等を記憶する。また、外部メモリ１４は、メモリコントローラ（ＭＣ）２０によりアクセスを制御される。外部メモリ１４は、１個に限らず、複数個備えられていてもよい。
【００１９】
図３は、ホストコンピュータのソフトウェア構成の一例を示す図である。
プラグアンドプレイ検出部１００は、ユニバーサルシリアルバス（ＵＳＢ）やＷｅｂ  Ｓｅｒｖｉｃｅ  ｏｎ  Ｄｅｖｉｃｅｓ（ＷＳＤ）等のインターフェースを介して接続されたプリンタ２０００の検知を行う。機器ＩＤ取得部１０１は、プラグアンドプレイで検出されたプリンタ２０００に機器ＩＤ取得要求を送り、機器ＩＤを取得する。機器ＩＤについては後述する。
【００２０】
ドライバ検索部１０２は、取得した機器ＩＤに対応したデバイス制御アプリ２００やプリンタドライバ２０１の検索を行う。なお、ドライバ検索部１０２の検索範囲は、ホストコンピュータ１０００内に留まらず、予め決められたサーバコンピュータ１５００に対しても行われるものとする。ドライバインストール処理部１０３は、ドライバ検索部１０２が見つけたデバイス制御アプリ２００やプリンタドライバ２０１のインストール処理を行う。
【００２１】
ドライバ分類判別部１０４は、ホストコンピュータ１０００にインストールされたデバイス制御アプリ２００やプリンタドライバ２０１についての各種情報を取得する。例えば、ドライバ分類判別部１０４は、プリンタドライバ２０１が対応する機器ＩＤ、プリンタドライバの名称（機種情報）、関連付けられたプリンタキューの情報（ポート情報、プリンタキューの名前、印刷設定情報など）を取得する。また、ドライバ分類判別部１０４は、インストールされたデバイス制御アプリ２００やプリンタドライバ２０１が動作する、構成されるファイルや対応するＡＰＩ等のアーキテクチャの情報も取得し、現在動作中のＯＳ上で動作可能か否かの判断を行う。ドライバ情報保持部１０５は、ドライバ分類判別部１０４が取得したデバイス制御アプリ２００やプリンタドライバ２０１についての各種情報をＲＯＭ３のデータ用ＲＯＭあるいは外部メモリ１１への保持を行う。
【００２２】
デバイス制御アプリ２００は、プリンタ２０００の各々のモデルに対応したアプリケーションであり、プリンタ２０００やプリンタドライバ２０１の管理機能、プリンタ２０００に対する印刷やファックスやスキャンの機能を有したアプリケーションである。デバイス制御アプリ２００は、管理機能としてプリンタドライバ２０１がインストールされているか否かや、プリンタドライバ２０１の処理状況の監視等を行う。また、デバイス制御アプリ２００は、プリンタ２０００の処理状況や、用紙やインク・トナー等の消耗品の残量状況の監視等を行う。デバイス制御アプリ２００は、機器ＩＤを利用するプラグアンドプレイシステムでは後述するモデル識別情報（ＭＤＬ）及び互換識別情報（ＣＩＤ）の両方、もしくはどちらか片方に対応する。
【００２３】
プリンタドライバ２０１は、プリンタ２０００の各々のモデルに対応したプリンタドライバであり、機器ＩＤを利用するプラグアンドプレイシステムではモデル識別情報（ＭＤＬ）及び互換識別情報（ＣＩＤ）の両方、もしくはどちらか片方に対応する。その機能や能力についてはプリンタドライバ毎に異なっており、動作するＯＳのシステムの種類、構成されるファイルや対応するＡＰＩ等のアーキテクチャによって分類され、それぞれ動作可能なＯＳも異なる。
【００２４】
なお、デバイス制御アプリ２００やプリンタドライバ２０１が「機器ＩＤに対応する」とは、上述のようにモデル識別情報（ＭＤＬ）と互換識別情報（ＣＩＤ）の両方、もしくはどちらか片方に対応することを示す。また、デバイス制御アプリ２００及びプリンタドライバ２０１は、同じベンダにより提供される。また、ホストコンピュータ１０００には、ＯＳと一緒にバンドルされていたり、後から導入されたりしたプリンタドライバ２０１を保持できるものとする。
【００２５】
図４はサーバコンピュータのソフトウェア構成の一例を示す図である。
サーバコンピュータ１５００は、ホストコンピュータ１０００のドライバ検索部１０２に応答するためのドライバ管理部１５０を備える。ドライバ管理部１５０を介して、サーバコンピュータ１５００は、ホストコンピュータ１０００にデバイス制御アプリ２００やプリンタドライバ２０１を提供する。サーバコンピュータ１５００の外部メモリ１１には、ホストコンピュータ１０００上で動作する複数種類のＯＳに対応するデバイス制御アプリ２００やプリンタドライバ２０１が格納される。
【００２６】
ドライバ管理部１５０は、ドライバ検索部１０２の問い合わせに対して、格納しているデバイス制御アプリ２００やプリンタドライバ２０１の中から最適なものを提供する。最適か否かの判断は、問い合わせの際の機器ＩＤや名称が合致している、動作するＯＳの種類が合致している、等の条件を満たしているか否かで行う。
なお、サーバコンピュータ１５００は、各プリンタベンダが提供する最新のデバイス制御アプリやプリンタドライバを保持しておくことで、最新のデバイス制御アプリやプリンタドライバをホストコンピュータ１０００に提供することが可能になる。
【００２７】
図５は、機器ＩＤ（ハードウェアＩＤ）の構成、及びその例を示す図である。
図５に示すように、機器ＩＤは、主な要素として次に示す要素で構成され、文字列情報の形で表現される。機器の製造者情報を示す“ＭＡＮＵＦＡＣＴＵＲＥＲ”（以下ＭＦＧ）。機器が対応しているコマンドセットを示す“ＣＯＭＭＡＮＤ  ＳＥＴ”（以下ＣＭＤ）。機器のモデル識別情報を示す“ＭＯＤＥＬ”（以下ＭＤＬ）。機器のクラス情報を示す“ＣＬＡＳＳ”（以下ＣＬＳ）。機器の属するファミリーやクラスの互換識別情報を示す“ＣＯＭＰＡＴＩＢＬＥ  ＩＤ”（以下ＣＩＤ）。なお、ＩＥＥＥ１２８４の規定では、ＭＦＧ、ＭＤＬ、ＣＭＤの提供は必須とされているが、ＣＬＳ、ＣＩＤの提供は任意となっている。
【００２８】
図５（Ｂ）は、機器ＩＤの一例を示している。この例に示す機器は、製造者が“ＡＢＣ”であり、コマンドセットとして”ＰＣＬ”をサポートしており、モデル名称が“Ｍ１２３”である。また、この例に示す機器は、クラスが“ＰＲＩＮＴＥＲ”であり、互換識別情報としては“Ｃｌａｓｓ１”という名称が与えられていることを示している。
【００２９】
図６は、ＯＳの更新前に、ＯＳがインストール済みプリンタドライバのドライバ情報を保持する処理を説明するためのフローチャートである。
ステップＳ６０１にて、ＯＳのドライバ分類判別部１０４は、ホストコンピュータ１０００にインストールされているプリンタドライバの有無を確認する。インストールされているプリンタドライバが存在する場合にはステップＳ６０２へ進み、存在しない場合は処理を終了する。
ステップＳ６０２にて、ドライバ分類判別部１０４は、ステップＳ６０１で確認したプリンタドライバが対応する機器ＩＤ、及びドライバ名の情報を取得する。
【００３０】
ステップＳ６０３にて、ドライバ分類判別部１０４は、ステップＳ６０１で確認したプリンタドライバに関連付けられたプリンタキューの情報（ポート情報、プリンタキューの名前、印刷設定情報）を取得する。
ステップＳ６０４にて、ドライバ情報保持部１０５は、ステップＳ６０２〜Ｓ６０３で取得した情報を更新前ドライバ情報として特定の領域、例えばＲＯＭ３のデータ用ＲＯＭあるいは外部メモリ１１に保持する。なお、更新前ドライバ情報は、Ｓ６０２〜Ｓ６０３で取得した情報を全て含んでいる必要はなく、例えば、機器ＩＤまたはドライバ名の少なくともいずれかを含んでいればよい。
【００３１】
表Ａは、更新前ドライバ情報の一例を示す表である。
【表１】
2018173998.tif 000003
【００３２】
図７及び図８は、ＯＳの更新後に、更新後のＯＳの環境に最適なプリンタドライバをインストールする処理を説明するためのフローチャートである。
この処理は、図６を用いて説明した、あらかじめ保持したドライバ情報を参照して行われる。また、この処理は、ＯＳ更新直後にＯＳによって実行される。
【００３３】
ステップＳ７０１にて、ドライバ分類判別部１０４は、ホストコンピュータ１０００にインストールされているプリンタドライバ２０１をリストする。
ステップＳ７０２にて、ドライバ分類判別部１０４は、ステップＳ７０１でリストされたプリンタドライバ２０１それぞれに対して、現在動作中のＯＳ上で動作可能か否かの判断を行う。具体的には、プリンタドライバ２０１が動作するＯＳのシステムの種類や、構成されるファイル、対応するＡＰＩ（アプリケーションプログラミングインターフェース）等のアーキテクチャの情報と、現在動作中のＯＳのバージョンから判断を行う。プリンタドライバ２０１があるバージョンのＯＳで動作するか否かは、ＯＳの仕様により予めわかっており、その比較において判断を行う。
【００３４】
ステップＳ７０３にて、ドライバ分類判別部１０４は、ステップＳ７０２で現在動作中のＯＳ上で動作不可能なプリンタドライバ２０１が存在するか否かを判断する。動作不可能なプリンタドライバ２０１が存在しないと判断した場合にはステップＳ７０６へ進み、存在すると判断した場合にはステップＳ７０４へと進む。
ステップＳ７０４にて、ドライバ分類判別部１０４は、ステップＳ７０２で現在動作中のＯＳ上で動作不可能であると判断されたプリンタドライバ２０１に対応する機器ＩＤとドライバ名を取得する。
ステップＳ７０５にて、ドライバ分類判別部１０４は、ステップＳ７０４で取得した機器ＩＤとドライバ名をインストールドライバ候補リストへ追加する。
【００３５】
表Ｂは、インストールドライバ候補リストの一例を示す表である。
【表２】
2018173998.tif 000004
【００３６】
ステップＳ７０６にて、ドライバ分類判別部１０４は、ステップＳ７０１でリストしたインストールされているプリンタドライバ２０１と、図６に示した処理のステップＳ６０４にて保持された更新前ドライバ情報（表Ａ）との比較を行う。
ステップＳ７０７にて、ドライバ分類判別部１０４は、ステップＳ７０６で比較した結果、ＯＳ更新により削除されたプリンタドライバ２０１があるか否かを判断する。具体的には、ドライバ分類判別部１０４は、更新前ドライバ情報に挙げられたプリンタドライバ２０１が、ステップＳ７０１でリストしたプリンタドライバ２０１の中に存在するか否かを判断する。そして、ドライバ分類判別部１０４は、存在しなかったプリンタドライバ２０１が削除されたと判断する。ステップＳ７０７で削除されたプリンタドライバがあると判断された場合には、ステップＳ７０８に進む。一方、更新前ドライバ情報に保持されたすべてのプリンタドライバ２０１が、ステップＳ７０１でリストしたプリンタドライバ２０１の中に存在する場合、すなわち削除されたプリンタドライバがないと判断された場合には、ステップＳ７１０に進む。
【００３７】
ステップＳ７０８にて、ドライバ分類判別部１０４は、ステップＳ７０７で削除されたと判断したプリンタドライバ２０１に対応する機器ＩＤとドライバ名を、更新前ドライバ情報から取得する。
ステップＳ７０９にて、ドライバ分類判別部１０４は、ステップＳ７０８で取得した機器ＩＤとドライバ名をインストールドライバ候補リストへ追加する。
【００３８】
ステップＳ７１０にて、ドライバ分類判別部１０４は、インストールドライバ候補リストに１つ以上のプリンタドライバ２０１が登録されているか否かの確認を行い、登録されていた場合はステップＳ７１１に進む。登録されていなかった場合は処理を終了する。
ステップＳ７１１にて、ドライバ検索部１０２は、インストールドライバ候補リストに保持されている機器ＩＤまたはドライバ名に対応するプリンタドライバ２０１の検索を実行する。検索処理は、ドライバ検索部１０２が、サーバコンピュータ１５００のドライバ管理部１５０に問い合わせることによって行われる。検索処理の詳細については後述する。また、ドライバ検索部１０２は、検索したプリンタドライバ２０１をホストコンピュータ１０００へダウンロードする。
【００３９】
ステップＳ７１２にて、ドライバインストール処理部１０３は、ステップＳ７１１でホストコンピュータ１０００にダウンロードしたプリンタドライバ２０１のインストール処理を行う。
ステップＳ７１３にて、ドライバインストール処理部１０３は、ステップＳ７１２でインストールしたプリンタドライバ２０１に関連付けるプリンタキューの設定を行う。具体的には、ドライバインストール処理部１０３は、ステップＳ７１２でインストールしたプリンタドライバ２０１を検索する際に使用した機器ＩＤとドライバ名から、設定を行うプリンタキューを特定する。また、プリンタキューの特定には、前述した更新前ドライバ情報を参照する。
【００４０】
例えば、ステップＳ７１１において検索に使用した機器ＩＤが、「ＭＤＬ：Ｍ１２３」「ＣＩＤ：なし」であり、ドライバ名が「ＰＤ１２３  Ｖ３」であったとする。また、参照する更新前ドライバ情報が表Ａに記載の情報だったとする。この場合、設定を行うプリンタキューは、キュー名（プリンタ名）が「Ｍ１２３（Ｆｌｏｏｒ１）」及び「Ｍ１２３（Ｆｌｏｏｒ２）」の２つである。
【００４１】
特定したキュー名のプリンタキューがホストコンピュータ１０００上にすでに存在する場合は、そのプリンタキューに対して、表Ａに記載の更新前ドライバ情報にあるポートや印刷設定を設定する。そして、プリンタキューにインストールしたプリンタドライバ２０１の関連付けを行う。特定したキュー名のプリンタキューがホストコンピュータ１０００上に存在しない場合は、更新前ドライバ情報のキュー名、ポート、及び印刷設定を用いてプリンタキューを新規に作成する。そして、作成したプリンタキューにインストールしたプリンタドライバ２０１の関連付けを行う。
【００４２】
ステップＳ７１４にて、ドライバインストール処理部１０３は、ステップＳ７１１で検索できなかったプリンタドライバ２０１があるか否か、すなわちサーバコンピュータ１５００に該当するプリンタドライバ２０１が存在したか否かを確認する。検索できなかったプリンタドライバ２０１が存在した場合は、ステップＳ７１５に進み、検索できなかったプリンタドライバ２０１が存在しなかった場合は処理を終了する。
【００４３】
ステップＳ７１５にて、ドライバインストール処理部１０３は、ＯＳの更新前では使用できていたプリンタドライバ２０１のうち、ＯＳの更新後に使用できなくなったプリンタドライバ２０１が存在することをユーザに通知する。図１２は、通知するメッセージの一例である。なお、このようなメッセージを表示するタイミングは、ＯＳの更新直後であってもよいし、ＯＳの更新後に初めてプリンタの管理フォルダを開いたタイミングであってもよい。また、メッセージの表示ではなく、同じ内容をログファイルとして保存しておく等、ユーザに通知できる手段であればよい。
【００４４】
図６〜図８に示したフローチャートの処理を行うことにより、ＯＳの更新が行われ、インストール済みのプリンタドライバが更新後のＯＳにおいて動作しなくなった場合であっても、更新後のＯＳで動作するプリンタドライバを自動的に提供することができる。
【００４５】
図１３は、Ｓ７１１にてドライバ検索部が行った問い合わせに対して、サーバコンピュータのドライバ管理部が行うドライバ検索処理を説明するためのフローチャートである。
ドライバ検索部１０２は、ドライバ管理部１５０への問い合わせに際して、ホストコンピュータ１０００のＯＳのバージョン、検索を行うプリンタドライバ２０１に対応する機器ＩＤ、及びドライバ名を通知する。機器ＩＤとドライバ名は、インストールドライバ候補リスト（表Ｂ）に挙げられたものである。ドライバ管理部１５０は、通知されたホストコンピュータ１０００のＯＳのバージョン、機器ＩＤ、及びドライバ名をもとにプリンタドライバ２０１の検索処理を行う。
【００４６】
ステップＳ１１０１、及びステップＳ１１０２にて、ドライバ管理部１５０は、ドライバ検索部１０２から通知されたホストコンピュータ１０００のＯＳのバージョン、機器ＩＤ、及びドライバ名を取得する。
ステップＳ１１０３にて、ドライバ管理部１５０は、通知されたＯＳのバージョン、及びモデル識別情報（ＭＤＬ）に対応するプリンタドライバ２０１がサーバコンピュータ１５００に存在するか否かを確認する。具体的には、ドライバ管理部１５０が、サーバコンピュータ１５００の外部メモリ１１に該当するプリンタドライバ２０１が存在するか否かを確認（検索）することにより実現する。
【００４７】
ステップＳ１１０４にて、ドライバ管理部１５０は、Ｓ１１０３で検索したプリンタドライバ２０１が存在するか否か、すなわち通知されたＯＳのバージョン及びＭＤＬに対応するプリンタドライバ２０１が存在するか否かを判断する。対応するプリンタドライバ２０１が存在していた場合はステップＳ１１０９へ進み、存在していない場合はステップＳ１１０５へ進む。
ステップＳ１１０５にて、ドライバ管理部１５０は、通知されたＯＳのバージョン、及び互換識別情報（ＣＩＤ）に対応するプリンタドライバ２０１がサーバコンピュータ１５００に存在するか否かを確認する。
【００４８】
ステップＳ１１０６にて、ドライバ管理部１５０は、Ｓ１１０５で検索したプリンタドライバ２０１が存在するか否かを判断する。すなわち通知されたＯＳのバージョン及びＣＩＤに対応するプリンタドライバ２０１が存在するか否かを判断する。対応するプリンタドライバ２０１が存在していた場合はステップＳ１１０９へ進み、存在していない場合はステップＳ１１０７へ進む。
【００４９】
ステップＳ１１０７にて、ドライバ管理部１５０は、通知されたＯＳのバージョン、及びドライバ名に対応するプリンタドライバ２０１がサーバコンピュータ１５００に存在するか否かを確認する。
ステップＳ１１０８にて、ドライバ管理部１５０は、Ｓ１１０７で検索したプリンタドライバ２０１が存在するか否かを判断する。すなわち通知されたＯＳのバージョン及びドライバ名と対応するプリンタドライバ２０１が存在するか否かを判断する。合致するプリンタドライバ２０１が存在していた場合はステップＳ１１０９へ進み、存在していない場合はステップＳ１１１０へ進む。
【００５０】
ステップＳ１１０９にて、ドライバ管理部１５０は、サーバコンピュータ１５００内に存在したプリンタドライバ２０１の格納場所をドライバ検索部１０２に通知し、処理を終了する。
一方、Ｓ１１１０にて、ドライバ管理部１５０は、ドライバ検索部１０２の問い合わせに該当するプリンタドライバ２０１がサーバコンピュータ１５００内に存在しない場合は、該当するプリンタドライバが存在しないことをドライバ検索部１０２に通知する。これは、ホストコンピュータ１０００で動作可能であり、かつモデル識別情報（ＭＤＬ）または互換識別情報（ＣＩＤ）またはドライバ名に対応するプリンタドライバ２０１が見つからなかったことを意味する。
【００５１】
以上のように、本実施形態によれば、特定のアーキテクチャのデバイスドライバしか動作しないＯＳに更新した場合であっても、更新後のＯＳで動作可能なデバイスドライバを、ユーザが意識することなくインストールすることが可能となる。
【００５２】
（第２実施形態）
次に、本発明の第２実施形態に係る情報処理装置について説明する。
本実施形態におけるプリントシステムの全体構成、ホストコンピュータ及びプリンタのハードウェア構成、ホストコンピュータのソフトウェア構成、サーバコンピュータのソフトウェア構成、及び機器ＩＤの構成は、第１実施形態で示した構成と同様とする。具体的には、プリントシステムの全体構成は図１、ホストコンピュータ及びプリンタのハードウェア構成は図２、ホストコンピュータのソフトウェア構成は図３、サーバコンピュータのソフトウェア構成は図４、機器ＩＤの構成は図５で示した構成と同一とする。
【００５３】
図９は、ＯＳの更新前に、デバイス制御アプリが、インストール済みプリンタドライバのドライバ情報を保持する処理を説明するためのフローチャートである。
ステップＳ８０１にて、デバイス制御アプリ２００は、動作しているＯＳのバージョン情報を保持する。ＯＳのバージョン情報は、ＯＳが用意しているバージョン情報取得のためのＡＰＩを用いて取得することが可能である。
【００５４】
ステップＳ８０２にて、デバイス制御アプリ２００は、ホストコンピュータ１０００にインストールされているプリンタドライバの有無を確認する。インストールされているプリンタドライバが存在する場合にはステップＳ８０３へ進み、存在しない場合は処理を終了する。
ステップＳ８０３にて、デバイス制御アプリ２００は、ステップＳ８０２で確認したプリンタドライバが対応する機器ＩＤ、及びドライバ名の情報を取得する。
【００５５】
ステップＳ８０４にて、デバイス制御アプリ２００は、ステップＳ８０２で確認したプリンタドライバに関連付けられたプリンタキューの情報（ポート情報、プリンタキューの名前、印刷設定情報）を取得する。
ステップＳ８０５にて、デバイス制御アプリ２００は、ステップＳ８０３〜Ｓ８０４で取得した情報を更新前ドライバ情報として保持する（表Ａ）。
【００５６】
なお、デバイス制御アプリ２００が未インストール状態の場合は、ＯＳ更新前にデバイス制御アプリ２００を強制的にインストールする。デバイス制御アプリのインストールは、ドライバインストール処理部１０３が行う。デバイス制御アプリ２００のインストールの概要を以下に記載する。
ドライバインストール処理部１０３は、ホストコンピュータ１０００にインストールされているプリンタドライバ２０１の有無を確認する。プリンタドライバ２０１が存在する場合、そのプリンタドライバ２０１に対応する機器ＩＤの情報を取得する。ドライバ検索部１０２は、取得した機器ＩＤに対応するデバイス制御アプリ２００の検索をサーバコンピュータ１５００に対して行う。ドライバインストール処理部１０３は、ドライバ検索部１０２が検索したデバイス制御アプリ２００のインストール処理を行う。
【００５７】
図１０及び図１１は、ＯＳの更新後に、更新後のＯＳの環境に最適なプリンタドライバをインストールする処理を説明するためのフローチャートである。
この処理は、図９を用いて説明した、あらかじめ保持したドライバ情報を参照して行われる。また、この処理は、ＯＳ更新後に初めてデバイス制御アプリ２００が起動した際にデバイス制御アプリ２００によって実行される。
【００５８】
ステップＳ９０１にて、デバイス制御アプリ２００は、ＯＳの更新後に初めて起動されたか否かを確認する。具体的には、デバイス制御アプリ２００は、図９に示した処理のステップＳ８０１にて保持したＯＳのバージョンと現在のＯＳのバージョンとを比較し、ＯＳのバージョンが異なっていた場合はＯＳの更新後に初めて起動されたと判断し、ステップＳ９０２に進む。一方、比較したＯＳのバージョンが同一だった場合は処理を終了する。すなわち、デバイス制御アプリ２００は、起動時に、現在のＯＳの情報と図９の処理にて保持されたＯＳの情報とにより、ＯＳの更新が行われたか否かを検知することができる。
ステップＳ９０２にて、デバイス制御アプリ２００は、ホストコンピュータ１０００にインストールされているプリンタドライバ２０１をリストする。
【００５９】
ステップＳ９０３にて、デバイス制御アプリ２００は、ステップＳ９０２でリストされたプリンタドライバ２０１それぞれに対して、現在動作中のＯＳ上で動作可能か否かの判断を行う。具体的には、ＯＳのドライバ分類判別部１０４に対して問い合わせを行うことにより判断する。ドライバ分類判別部１０４は、プリンタドライバ２０１が動作するＯＳのシステムの種類や、構成されるファイル、対応するＡＰＩ等のアーキテクチャの情報と、現在動作中のＯＳのバージョンから判断を行う。プリンタドライバ２０１があるバージョンのＯＳで動作するか否かは、ＯＳの仕様により予めわかっており、その比較において判断を行う。
【００６０】
ステップＳ９０４にて、デバイス制御アプリ２００は、ステップＳ９０３で現在動作中のＯＳ上で動作不可能なプリンタドライバ２０１が存在するか否かを判断する。動作不可能なプリンタドライバ２０１が存在しないと判断した場合にはステップＳ９０７へ進み、存在すると判断した場合にはステップＳ９０５へと進む。
ステップＳ９０５にて、デバイス制御アプリ２００は、ステップＳ９０３で現在動作中のＯＳ上で動作不可能であると判断されたプリンタドライバ２０１に対応する機器ＩＤとドライバ名を取得する。
【００６１】
ステップＳ９０６にて、デバイス制御アプリ２００は、ステップＳ９０５で取得した機器ＩＤとドライバ名をインストールドライバ候補リストへ追加する（表Ｂ）。
ステップＳ９０７にて、デバイス制御アプリ２００は、ステップＳ９０２でリストしたインストールされているプリンタドライバ２０１と、図９に示した処理のステップＳ８０５にて保持された更新前ドライバ情報（表Ａ）との比較を行う。
【００６２】
ステップＳ９０８にて、デバイス制御アプリ２００は、ステップＳ９０７で比較した結果、ＯＳ更新により削除されたプリンタドライバ２０１があるか否かを判断する。具体的には、デバイス制御アプリ２００は、更新前ドライバ情報に挙げられたプリンタドライバ２０１が、ステップＳ９０２でリストしたプリンタドライバ２０１の中に存在するか否かを判断する。そして、デバイス制御アプリ２００は、存在しなかったプリンタドライバ２０１が削除されたと判断する。ステップ９０８で削除されたプリンタドライバがあると判断された場合には、ステップＳ９０９に進む。一方、更新前ドライバ情報に保持されたすべてのプリンタドライバ２０１が、ステップＳ９０２でリストしたプリンタドライバ２０１の中に存在する場合、すなわち削除されたプリンタドライバがないと判断された場合には、ステップＳ９１１に進む。
【００６３】
ステップＳ９０９にて、デバイス制御アプリ２００は、ステップＳ９０８で削除されたと判断したプリンタドライバ２０１に対応する機器ＩＤとドライバ名を、更新前ドライバ情報から取得する。
ステップＳ９１０にて、デバイス制御アプリ２００は、ステップＳ９０９で取得した機器ＩＤとドライバ名をインストールドライバ候補リストへ追加する。
【００６４】
ステップＳ９１１にて、デバイス制御アプリ２００は、インストールドライバ候補リストに１つ以上のプリンタドライバ２０１が登録されているか否かの確認を行い、登録されていた場合はステップＳ９１２に進む。登録されていなかった場合は処理を終了する。
ステップＳ９１２にて、デバイス制御アプリ２００は、インストールドライバ候補リストに保持されている機器ＩＤまたはドライバ名に対応するプリンタドライバ２０１の検索を実行する。検索処理は、デバイス制御アプリ２００がドライバ検索部１０２に問い合わせることにより行われる。処理の詳細は、前述した図１３の処理と同様であるため、その説明は省略する。
【００６５】
検索処理において、サーバコンピュータ１５００のドライバ管理部１５０は、ドライバ検索部１０２の問い合わせに該当するプリンタドライバ２０１の格納場所をドライバ検索部１０２に通知する。ドライバ検索部１０２は、通知されたサーバコンピュータ１５００上の格納場所から該当するプリンタドライバ２０１をホストコンピュータ１０００にダウンロードする。また、ドライバ検索部１０２の問い合わせに該当するプリンタドライバ２０１がサーバコンピュータ１５００内に存在しない場合は、ドライバ管理部１５０は、該当するプリンタドライバ２０１が存在しないことをドライバ検索部１０２に通知する。これは、ホストコンピュータ１０００で動作可能であり、かつモデル識別情報（ＭＤＬ）または互換識別情報（ＣＩＤ）またはドライバ名に対応するプリンタドライバ２０１が見つからなかったことを意味する。上述したような検索処理の結果をドライバ検索部１０２は、デバイス制御アプリ２００の問い合わせに対して回答する。
【００６６】
ステップＳ９１３にて、デバイス制御アプリ２００は、ステップＳ９１２でホストコンピュータ１０００にダウンロードしたプリンタドライバ２０１のインストール処理を行う。インストール処理は、デバイス制御アプリ２００が、ドライバインストール処理部１０３に問い合わせることにより行う。
【００６７】
ステップＳ９１４にて、デバイス制御アプリ２００は、ステップＳ９１３でインストールしたプリンタドライバ２０１に関連付けるプリンタキューの設定を行う。具体的には、デバイス制御アプリ２００は、ステップＳ９１３でインストールしたプリンタドライバ２０１を検索する際に使用した機器ＩＤとドライバ名から、設定を行うプリンタキューを特定する。また、プリンタキューの特定には、前述した更新前ドライバ情報を参照する。
【００６８】
例えば、ステップＳ９１２において検索に使用した機器ＩＤが、「ＭＤＬ：Ｍ１２３」「ＣＩＤ：なし」であり、ドライバ名が「ＰＤ１２３  Ｖ３」であったとする。また、参照する更新前ドライバ情報が表Ａに記載の情報だったとする。この場合、設定を行うプリンタキューは、キュー名が「Ｍ１２３（Ｆｌｏｏｒ１）」及び「Ｍ１２３（Ｆｌｏｏｒ２）」の２つである。
【００６９】
特定したキュー名のプリンタキューがホストコンピュータ１０００上にすでに存在する場合は、そのプリンタキューに対して、表Ａに記載の更新前ドライバ情報にあるポートや印刷設定を設定する。そして、プリンタキューにインストールしたプリンタドライバ２０１の関連付けを行う。特定したキュー名のプリンタキューがホストコンピュータ１０００上に存在しない場合は、更新前ドライバ情報のキュー名、ポート名、及び印刷設定を用いてプリンタキューを新規に作成する。そして、作成したプリンタキューにインストールしたプリンタドライバ２０１の関連付けを行う。
【００７０】
ステップＳ９１５にて、デバイス制御アプリ２００は、ステップＳ９１２で検索できなかったプリンタドライバ２０１があるか否か、すなわちサーバコンピュータ１５００に該当するプリンタドライバ２０１が存在したか否かを確認する。検索できなかったプリンタドライバ２０１が存在した場合は、ステップＳ９１６に進み、検索できなかったプリンタドライバ２０１が存在しなかった場合は処理を終了する。
ステップＳ９１６にて、デバイス制御アプリ２００は、ＯＳの更新前では使用できていたプリンタドライバ２０１のうち、ＯＳの更新後に使用できなくなったプリンタドライバ２０１が存在することをユーザに通知する。図１２は、通知するメッセージの一例である。
【００７１】
このように、図９〜図１１に示した処理を行うことにより、ＯＳの更新が行われ、インストール済みのプリンタドライバが更新後のＯＳにおいて動作しなくなった場合であっても、更新後のＯＳで動作するプリンタドライバを自動的に提供できる。
【００７２】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００７３】
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形及び変更が可能である。
【図１】
2018173998.tif 000005
【図２】
2018173998.tif 000006
【図３】
2018173998.tif 000007
【図４】
2018173998.tif 000008
【図５】
2018173998.tif 000009
【図６】
2018173998.tif 000010
【図７】
2018173998.tif 000011
【図８】
2018173998.tif 000012
【図９】
2018173998.tif 000013
【図１０】
2018173998.tif 000014
【図１１】
2018173998.tif 000015
【図１２】
2018173998.tif 000016
【図１３】
2018173998.tif 000017
【手続補正書】
【提出日】平成30年8月21日(2018.8.21)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ＯＳ（オペレーティングシステム）が動作する情報処理装置であって、
第１のアーキテクチャのデバイスドライバの動作をサポートせず、且つ、前記第１のアーキテクチャとは異なる第２のアーキテクチャのデバイスドライバの動作をサポートする新バージョンのＯＳへのアップデートを行う前に、アップデート前のＯＳ上で利用されていた前記第１のアーキテクチャのデバイスドライバのハードウェアＩＤ又は機種情報の少なくともいずれかを含むドライバ情報を、特定の領域に保持する保持手段と、
前記ＯＳが前記新バージョンへアップデートされた後に、前記保持されたドライバ情報に基づき、前記第２のアーキテクチャのデバイスドライバを介してデバイスを使用できるようセットアップする制御手段と、を有することを特徴とする情報処理装置。
【請求項２】
前記保持手段は、前記アップデート前のＯＳの機能として実現されることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記保持手段は、前記アップデート前のＯＳ上で動作するデバイスドライバを管理するアプリケーションの機能として実現されることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記アプリケーションは、前記デバイスドライバと同じベンダから提供されることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記アプリケーションの機能としての前記保持手段は、さらに前記ドライバ情報とともに前記情報処理装置にインストールされているＯＳのバージョン情報を保持し、
前記アプリケーションは、起動時に、現在のＯＳのバージョン情報と前記保持されているＯＳのバージョン情報とを比較し、前記第１のアーキテクチャのデバイスドライバの動作をサポートせず、且つ、前記第２のアーキテクチャのデバイスドライバの動作をサポートするバージョンのＯＳへアップデートが行われたことを検知する検知手段を更に有する
ことを特徴とする請求項３または４に記載の情報処理装置。
【請求項６】
前記デバイスドライバは、プリンタドライバであり、
前記保持手段は、さらに、プリンタ名、ポート情報、及び印刷設定情報を保持し、
前記制御手段は、前記プリンタドライバのインストールを行った後に、前記保持されたプリンタ名、ポート情報、及び印刷設定情報に基づき該デバイスドライバに関連付くプリンタキューの設定を行う
ことを特徴とする請求項１ないし５のいずれか１項に記載の情報処理装置。
【請求項７】
前記ハードウェアＩＤには、モデル識別情報、及び互換識別情報が含まれることを特徴とする請求項１ないし５のいずれか１項に記載の情報処理装置。
【請求項８】
前記インストールされるデバイスドライバは、前記モデル識別情報、前記互換識別情報、または前記機種情報に基づき検索された前記第２のアーキテクチャのデバイスドライバであることを特徴とする請求項７に記載の情報処理装置。
【請求項９】
前記アップデート前のＯＳ上で利用されていたデバイスドライバのうち、前記アップデートに伴い、削除された前記第１のアーキテクチャのデバイスドライバがあるか否か、を判断する判断手段をさらに備え、
前記制御手段は、前記判断手段によって削除されたと判断したデバイスドライバのドライバ情報に対応する、前記第２のアーキテクチャのデバイスドライバをインストールする
ことを特徴とする請求項１ないし８のいずれか１項に記載の情報処理装置。
【請求項１０】
前記制御手段は、前記保持されたドライバ情報に対応する第２のアーキテクチャのデバイスドライバが存在しない場合に、前記アップデートが行われた後に、動作しないデバイスドライバが存在することをユーザに通知する
ことを特徴とする請求項１ないし９のいずれか１項に記載の情報処理装置。
【請求項１１】
ＯＳ（オペレーティングシステム）が動作する情報処理装置の制御方法であって、
第１のアーキテクチャのデバイスドライバの動作をサポートせず、且つ、前記第１のアーキテクチャとは異なる第２のアーキテクチャのデバイスドライバの動作をサポートする新バージョンのＯＳへのアップデートを行う前に、アップデート前のＯＳ上で利用されていた前記第１のアーキテクチャのデバイスドライバのハードウェアＩＤ又は機種情報の少なくともいずれかを含むドライバ情報を、特定の領域に保持する工程と、
前記ＯＳが前記新バージョンへアップデートされた後に、前記保持されたドライバ情報に基づき、前記第２のアーキテクチャのデバイスドライバを介してデバイスを使用できるようセットアップする工程と、を有する
ことを特徴とする制御方法。
【請求項１２】
ＯＳ（オペレーティングシステム）が動作する情報処理装置にインストールされるアプリケーションプログラムであって、
前記アプリケーションプログラムは、情報処理装置のコンピュータに、
ＯＳのアップデートに伴い、第１のアーキテクチャのデバイスドライバの動作をサポートせず、且つ、前記第１のアーキテクチャとは異なる第２のアーキテクチャのデバイスドライバの動作をサポートする新バージョンのＯＳへのアップデートを行う前に、アップデート前のＯＳ上で利用されていた前記第１のアーキテクチャのデバイスドライバのハードウェアＩＤ又は機種情報の少なくともいずれかを含むドライバ情報を、前記アプリケーションプログラムがアクセス可能な特定の領域に保持する保持工程と、
前記ＯＳが前記新バージョンへアップデートされた後に、前記特定の領域に保持されたドライバ情報に前記取得された情報に基づいて、前記第２のアーキテクチャのデバイスドライバを介してデバイスを使用するためのセットアップを行うよう、前記新バージョンのＯＳに依頼する制御工程と、
を実行させることを特徴とするアプリケーションプログラム。
【請求項１３】
請求項１乃至１０のいずれか１項に記載の情報処理装置が備える各手段としてコンピュータを機能させるためのプログラム。
【請求項１４】
ＯＳ（オペレーティングシステム）が動作する情報処理装置であって、
第１のアーキテクチャのデバイスドライバの動作をサポートせず、且つ、前記第１のアーキテクチャとは異なる第２のアーキテクチャのデバイスドライバの動作をサポートするバージョンのＯＳへのアップデートが行われた後に、前記アップデート後のＯＳで動作をサポートしないデバイスドライバがあれば、当該動作をサポートしないデバイスドライバに関する情報を取得する取得手段と、
前記取得された情報に基づき、前記第２のアーキテクチャのデバイスドライバを介してデバイスを使用できるようセットアップする制御手段と、を有することを特徴とする情報処理装置。
【請求項１５】
前記デバイスドライバは、プリンタドライバであり、
前記取得手段は、さらに、前記動作していないプリンタドライバのポート情報及び印刷設定情報を取得し、
前記制御手段は、前記第２のアーキテクチャのプリンタドライバのセットアップを行った後に、前記取得されたポート情報及び印刷設定情報に基づき該プリンタドライバに関連付くプリンタキューの設定を行う
ことを特徴とする請求項１４に記載の情報処理装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
本発明は、新しいアーキテクチャのデバイスドライバしか動作しないＯＳにアップデートした場合であっても、ユーザが意識することなく更新後のＯＳでデバイスを利用できるようセットアップすることが可能となる情報処理装置を提供することを目的とする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明の一実施形態の情報処理装置は、ＯＳ（オペレーティングシステム）が動作する情報処理装置であって、第１のアーキテクチャのデバイスドライバの動作をサポートせず、且つ、前記第１のアーキテクチャとは異なる第２のアーキテクチャのデバイスドライバの動作をサポートする新バージョンのＯＳへのアップデートを行う前に、アップデート前のＯＳ上で利用されていた前記第１のアーキテクチャのデバイスドライバのハードウェアＩＤ又は機種情報の少なくともいずれかを含むドライバ情報を、特定の領域に保持する保持手段と、前記ＯＳが前記新バージョンへアップデートされた後に、前記保持されたドライバ情報に基づき、前記第２のアーキテクチャのデバイスドライバを介してデバイスを使用できるようセットアップする制御手段と、を有する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
図５は、機器ＩＤ（ハードウェアＩＤ）の構成、及びその例を示す図である。
図５（Ａ）に示すように、機器ＩＤは、主な要素として次に示す要素で構成され、文字列情報の形で表現される。機器の製造者情報を示す“ＭＡＮＵＦＡＣＴＵＲＥＲ”（以下ＭＦＧ）。機器が対応しているコマンドセットを示す“ＣＯＭＭＡＮＤ  ＳＥＴ”（以下ＣＭＤ）。機器のモデル識別情報を示す“ＭＯＤＥＬ”（以下ＭＤＬ）。機器のクラス情報を示す“ＣＬＡＳＳ”（以下ＣＬＳ）。機器の属するファミリーやクラスの互換識別情報を示す“ＣＯＭＰＡＴＩＢＬＥ  ＩＤ”（以下ＣＩＤ）。なお、ＩＥＥＥ１２８４の規定では、ＭＦＧ、ＭＤＬ、ＣＭＤの提供は必須とされているが、ＣＬＳ、ＣＩＤの提供は任意となっている。