(57)【要約】      （修正有）【課題】２種類以上のプリンタードライバーが存在しており、かつそれらのプリンタードライバー間で共通モジュールが存在しているケースにおいて、そのうちのひとつのプリンタードライバーをアンインストールする場合のエラーメッセージ表示を見やすくする。【解決手段】共通モジュールを使用している多数インストールされているプリンタードライバーの情報を取得し、その情報に応じて複数のプリンタードライバーをまとめた表現で、メッセージ表示する。【選択図】図１５
2018112817.tif 000002
【特許請求の範囲】
【請求項１】
あるプリンタードライバーＡをひとつのドライバーパッケージとして扱い、ＯＳにインストールするシステムにおいて、他のプリンタードライバーＢのドライバーパッケージとドライバー構成ファイルの一部を共有している状態でプリンタードライバーＡをアンインストールする場合、前記プリンタードライバーＢと共有するドライバー構成ファイルの一部が存在するため、プリンタードライバーＡを削除することができない旨のメッセージを表示する、プリンタードライバーアンインストーラーにおいて、
前記他のプリンタードライバーＢとドライバー構成ファイルの一部を共有するドライバー名称を前記メッセージに列挙する際、共有に該当するプリンタードライバーの一部の情報を収集する収集手段と、前記収集手段で収集された情報から前記プリンタードライバーがサポートするページ記述言語ごとにプリンタードライバーをまとめる手段と有することで、前記ＰＤＬごとに表示するプリンタードライバーをまとめてメッセージに表示することを特徴とするプリンタードライバーアンインストーラー。
【請求項２】
請求項１に記載のプリンタードライバーアンインストーラーにおいて、
前記共有に該当するプリンタードライバーのバージョンの情報を収集する第２の収集手段を有することで、
前記ＰＤＬごと、およびバージョンごとに表示するプリンタードライバーをまとめてメッセージに表示することを特徴とするプリンタードライバーアンインストーラー。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はホストコンピューターなどにインストールされ、前記ホストコンピューターと接続された印刷装置に対し、印刷データを作成し、送信するプリンタードライバーを削除（以降、アンインストールと呼ぶ）する情報処理方法、情報処理システム、情報処理装置、およびそれらの設定方法、プログラム、記憶媒体に関するものである。
【背景技術】
【０００２】
ホストコンピューターなどにインストールされ、前記ホストコンピューターと接続された印刷装置に対し、印刷データを作成し、送信するプリンタードライバーを前記ホストコンピューターからアンインストールするプリンタードライバーアンインストーラーにおいて、同じプリンターベンダーや同じバージョンで複数種のプリンター分のプリンタードライバーを削除（アンインストール）対象としている場合、それらのプリンタードライバー同士で共通のドライバーモジュールがインストールされていると、その対象のプリンタードライバーが全てアンインストールされない限り、前記共通モジュールをアンインストールしないなどの処理を行っていた。
【０００３】
ホストコンピューターとの初回の接続時に当該ホストコンピューターにインストールされる、複数のプリンターに共通の共通プリンタードライバーと、上記ホストコンピューターとの初回および２回目以降の接続時にインストールされ、上記ホストコンピューターとの接続解除時にアンインストールされる内容が下記の文献１で提供されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−１１３９６８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
各プリンターベンダーが提供しているプリンタードライバーはプリンター言語分、あるいはバージョンごと、そして機種数分など相当数のプリンタードライバーがあるが、それらは共通モジュールを有していることが多い。
【０００６】
前記ホストコンピューターにインストールされている基本ソフト（オペレーティングシステム＝以下ＯＳと呼ぶ）の一部の仕組みに対応した少なくとも２種類以上のプリンタードライバーが存在しており、かつそれらのプリンタードライバー間で共通モジュールが存在しているケースにおいて、そのうちのひとつのプリンタードライバーをアンインストールする場合、アンインストールが完了しないか、エラーメッセージを表示して終了する。
【０００７】
ユーザが共通モジュールも含めて全モジュールをアンインストールするには、この  共通モジュールを使用している他のドライバーが何かを知る必要がある。そのため、上記エラーメッセージに共通モジュールを共有する全プリンタードライバー名称を表示する必要があるが、多数インストールされた場合にはその名称を覚えるのが難しく、名称をコピーなどして記録する手間が必要という問題がある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明において、前記多数インストールされているプリンタードライバーの情報を取得し、その情報に応じて複数のプリンタードライバーをまとめた表現で、前記メッセージ表示する。
【発明の効果】
【０００９】
本発明によって、全ドライバー名称を記録する手間を省いたアンインストールを提供できるという効果がある。
【図面の簡単な説明】
【００１０】
【図１】システムの全体図
【図２】ホストコンピューターのブロック図
【図３】プリンタードライバーのモジュール構成図
【図４】プリンタードライバーのインストール方法フローチャート
【図５】プリンタードライバーのプリントキュー登録方法フローチャート
【図６】プリントキュー登録ユーザＩ／Ｆ
【図７】プリントキュー追加ユーザＩ／Ｆ
【図８】プリンタードライバーのシステム構成図
【図９】登録キューファイル
【図１０】登録キューファイルプリンター仕様記述ファイル
【図１１】プリンター仕様記述ファイルのＯＳでの保存例
【図１２】インストール指示書の記載例
【図１３】共通モジュールが存在する場合のメッセージ表示を表すフローチャート
【図１４】エラーメッセージの表示例
【図１５】本発明を表すドライバインストーラのフローチャート
【図１６】本発明を表すエラーメッセージの表示例１
【図１７】プリンタードライバー用ｄｌｌで持つドライバー情報例
【図１８】本発明を表すエラーメッセージの表示例２
【発明を実施するための形態】
【００１１】
［実施例１］
図１〜図１４は本発明による実施例を示すものである。
［システム構成］
本実施例は、ホストコンピューター（１０１）上のオペレーティングシステムにインストールされているプリンタードライバーアンインストーラーが、ＲＡＭ（２０２）にロードされたプログラムをＣＰＵ（２０１）で実施することによって実現されるものとする。
【００１２】
図１は、本発明を表すシステムの全体図であり、ホストコンピューター（１０１）、印刷装置（１０２、１０３）はそれぞれネットワーク（１００）に接続されているものとする。図２は、ホストコンピューター（１０１）の装置内部構成を示すブロック図である。ホストコンピュータ（１０１）において、ＣＰＵ（２０１）は、ＲＡＭ（２０２）に記憶されているプログラムに従って、システムバス（２０４）に接続される各デバイスを総括的に制御している。このＲＡＭ（２０２）は、ＣＰＵ（２０１）の主メモリ、ワークエリア等としても機能している。
【００１３】
ＲＯＭ（２０３）は、システムの基本的な各種プログラム及びデータを格納している。表示操作部Ｉ／Ｆ（２０５）は、表示操作部（２０６）への情報の表示制御を行う。また、表示操作部（２０６）は表示機能を持つと同時にタッチパネルとなっておりユーザからの入力を制御する。ネットワークＩ／Ｆ（２０７）はネットワークモジュール（２０８）の制御を行い、ネットワーク通信を実現する。外部メモリＩ／Ｆ（２０９）は、例えばフラッシュメモリー、Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｉｓｋ等の外部メモリ（２１１）とのアクセスを制御する。
【００１４】
外部メモリ（２１１）は、該オペレーティングシステムプログラム（以下、ＯＳ）（２１２）をはじめ該プリンタードライバーアンインストーラーを含む各種アプリケーション（２１６）を記憶し、ホストコンピューター（１０１）が保存または、読み取り可能な記憶媒体として機能する。なお、ＯＳ（２１２）はアプリケーションを動作させるためのアプリケーションフレームワーク（２１３）、ＯＳ（２１２）が提供する各種システムプログラム（２１４）、及び各種ユーティリティ関数などを格納したライブラリ（２１５）を備えている。
【００１５】
またシステムプログラム（２１４）による各種設定はユーザ設定情報システム保存領域（２２０）に格納される。またアプリケーション（２１６）はアプリケーション実行コードを備えている。さらにアプリケーション（２１６）は、ユーザＩ／Ｆの制御部（２１７）、オペレーティングシステム（２１２）のシステムプログラム（２１４）により設定された値を取得する、システム設定取得部（２１８）を有する。また、ユーザがアプリケーション（２１６）で設定したユーザ設定情報の保存領域（２１９）を備えている。
【００１６】
［プリンタードライバーインストール基本フローおよびプリントキュー登録］
次に該プリンタードライバーアンインストーラーのアンインストール対象となるプリンタードライバーのインストールについて説明する。
【００１７】
インストールする際に用意されるプリンタードライバーは図３に示すようなモジュール群で構成されている。３０１のプリンタードライバーは、３０２のグラフィックレンダリングモジュール、３０３のＵＩ制御モジュール、３０４のプリンター仕様記述ファイル、３０５の色処理モジュール、３０６の入出力制御モジュールから構成される。なお、プリンタードライバーの機能によってはこの他のモジュールから構成されることもある。このプリンタードライバーはいくつかの作成の仕方がある。
【００１８】
たとえばひとつのプリンタードライバーで複数のプリンターを対応するために、グラフィックレンダリングモジュール（３０２）およびＵＩ制御モジュール（３０３）を複数のプリンターに対応できるように作成しておく。また、プリンタ仕様記述ファイル（３０４）に関しては、対応しているプリンター分、プリンタードライバーに同梱しておく、という方法である。このような方法では、ＵＩ制御モジュール（３０３）はプリンタ仕様記述ファイル（３０４）に合わせてＵＩを表示、制御する。またグラフィックレンダリングモジュール（３０２）は各プリンターに合わせたページ記述言語およびプリンター制御コマンドを発行するような構成となる。
【００１９】
次に、このような構成のプリンタードライバーをホストコンピュータ（１０１）へインストールする基本手順を説明する。図４はプリンタードライバーのインストール手順を示したものである。ユーザはプリンタードライバーが格納されたＣＤ−ＲＯＭを準備するか、ネットワーク経由でプリンタードライバーインストーラーを入手しているものとする。ステップ４０１（図４では“Ｓ４０１”と表示。以降同様）において、ユーザは入手したプリンタードライバーインストーラーを起動する。
【００２０】
この動作をきっかけとしてステップ４０２において、プリンタードライバーインストーラーはプリンタードライバーモジュールを外部メモリ（２１１）の所定の場所に格納する。格納場所は印刷システムによって異なるが、一例として、ＣＵＰＳ（Ｃｏｍｍｏｎ  Ｕｎｉｘ  Ｐｒｉｎｔｉｎｇ  Ｓｙｓｔｅｍ）では、
／Ｌｉｂｒａｒｙ／Ｐｒｉｎｔｅｒｓ／
ディレクトリ以下にプリンターベンダー毎にプリンタードライバーモジュールを格納することになっている。
【００２１】
さらにプリンターベンダー毎のディレクトリの下にさらにプリンタードライバーの種類に分けて格納することも可能である。たとえば、ＡＢＣというプリンターベンダーのＰＤＬ１とＰＤＬ２という異なるプリンタードライバーがあるとき、それぞれ
／Ｌｉｂｒａｒｙ／Ｐｒｉｎｔｅｒｓ／ＡＢＣ／ＰＤＬ１／
／Ｌｉｂｒａｒｙ／Ｐｒｉｎｔｅｒｓ／ＡＢＣ／ＰＤＬ２／
というディレクトリを作成して、そのディレクトリ下にプリンタードライバーを格納することが可能となっている。
【００２２】
次に、ステップ４０２ではプリンタードライバーモジュールを外部メモリ（２１１）の上記ディレクトリに格納する動作となる。
【００２３】
これでプリンタードライバーのインストールは完了するが、実際にプリンターに出力するには、ユーザはプリンタードライバーを使用してプリントキューを登録する必要がある。
図５はプリントキューを登録する手順を示したものである。この手順に沿って、同図を用いながら流れを説明する。
【００２４】
ステップ５０１において、ユーザはプリントキュー登録のダイアログを開く。このステップにおいて、ＯＳ（２１２）はプリントキュー登録のためのプログラムコードを外部メモリ（２１１）からＲＡＭ（２０２）に読みだして実行する。図６はＯＳ（２１２）が表示するプリントキュー登録ユーザＩ／Ｆ（６０１）を示したものである。このダイアログには、現在登録されているプリントキュー（図では“プリンター”と表現する）の一覧を表示するための登録プリントキューリスト（６０２）、そして前記登録プリントキューリスト（６０２）で選択されているプリントキューの詳細情報を表示するプリントキュー詳細表示領域（６０３）がある。
【００２５】
また、６０４はプリントキューを登録するためのボタン、６０５は現在登録プリントキューリスト（６０２）で選択されているプリントキューを削除するためのボタンである。なお、６０６はこのダイアログを閉じるためのボタンである。
【００２６】
次にステップ５０２において、ユーザはプリントキュー登録ダイアログ（６０１）のプリントキュー追加ボタン（６０４）をクリックする。このユーザ操作によりステップ５０３においてＯＳはプリントキュー登録ダイアログを表示する。ここで表示されたダイアログに対して、ユーザはステップ５０４おいて、必要な情報を入力、プリントキューの追加を行う。
【００２７】
図７はＯＳ（２１２）が表示するプリントキュー登録ダイアログを示したものである。プリントキュー登録ダイアログ（６０１）において、７０２は接続されているプリンターのネットワークアドレス（この例ではＩＰアドレス）を指定するコントロールである。その他、７０３はプリントキューを識別するためのプリンターの名前を入力するコントロール、７０４はプリンターが設置されている場所を入力するコントロールである。プリンターの名前（７０３）およびプリンターの場所（７０４）は、登録プリントキューリスト（６０２）およびプリンター詳細（６０３）に表示する際に使用される文字列となる。
【００２８】
７０５はプリントキューを登録する際に使用するプリンタードライバーを指定するコントロールである。ここでリストされるプリンタードライバーは、先に説明したＯＳ（２１２）のプリンタードライバー格納ディレクトリ（／Ｌｉｂｒａｒｙ／Ｐｒｉｎｔｅｒｓ）に格納されているプリンタードライバーをＯＳ（２１２）がリストする。図７の例では、アドレスが１９２．１６８．１．１０、プリントキューの名前が”ＰｒｉｎｔｅｒＣ”、場所が”２Ｆ”、またプリンタードライバーとして”ＡＢＣ  ＰＤＬ１”を選択している状態である。この状態で７０６の追加ボタンをクリックすると、ＯＳ（２１２）はプリントキュー追加を行う。なお、追加を行わないでこのダイアログを閉じるときはダイアログクローズボタン（７０７）をクリックする。
【００２９】
次にステップ５０５において、ＯＳ（２１２）はユーザが指定したプリントキューをシステムに登録する。このステップについて、図８〜図６（ｃ）を使用して詳細な説明を行う。
【００３０】
図８はすでにプリンタードライバーがインストールされ、さらにプリントキューが登録された状態を示すシステムブロック図である。図８において、グラフィックレンダリングモジュール（８０３）は前述した手順によりＯＳ（２１２）の所定のディレクトリ（／Ｌｉｂｒａｒｙ／Ｐｒｉｎｔｅｒｓ／）にインストールされたプリンタードライバーのグラフィックレンダリングモジュール（３０２）である。
【００３１】
同様に、ＵＩ制御モジュール（８０５）は、インストールされたプリンタードライバーのＵＩ制御モジュール（３０３）である。色処理モジュール（８０４）は、インストールされたプリンタードライバーの色処理制御モジュール（３０５）である。入出力制御モジュール（８０８）は、インストールされたプリンタードライバーの入出力制御モジュール（３０６）である。また、プリンター仕様記述ファイル（８０６）は、インストールされたプリンタードライバーのプリンター仕様記述ファイル（３０４）である。
【００３２】
なお８０７のバックエンドモジュールはＯＳ（２１２）が提供するものであり、グラフィックレンダリングモジュール（８０３）が生成した印刷データをプリンターへ送信するための入出力制御モジュール（８０８）へ受け渡しするためのモジュールである。また、８０９のプリントキュー登録情報、８１０のプリンター仕様記述ファイル、８１１のプリントキュー設定ファイルは、図５のプリントキュー登録の過程でＯＳ（２１２）が生成するものであり、以下その詳細を説明する。
【００３３】
ステップ５０５において、ＯＳ（２１２）はプリンター追加ダイアログの情報をあつめ、プリンターの登録作業を行う。この登録は以下のように実行される。図９は登録するプリントキューの情報が記述されたファイルであり、マークアップ言語で記述している。９０１はプリントキューの識別子であり、プリンター名とアンダースコアで続けてプリンターのアドレスを記述している。９０２はプリンターの名前を記述している。９０３は場所を記述している。９０４は実際のプリントキューの記述を行っており、この例ではｌｐｄプロトコルにより１９２．１６８．１．１０のアドレスに送信することとなる。
【００３４】
９０５はこのプリンターが使用するプリンタードライバー名（ここではＡＢＣ  ＰＤＬ１）を記述している。９０６はこのプリンターの記述が終了することを示している。ＯＳ（２１２）はステップ５０５においてこの記述を作成し、このプリンターの登録情報を外部メモリ（２１１）の所定のファイルに追記する。所定のファイルとは、たとえばＣＵＰＳシステムでは、／ｅｔｃ／ｃｕｐｓ／ディレクトリに格納されているｐｒｉｎｔｅｒｓ．ｃｏｎｆファイルに記録を行うこととなる。これがプリントキュー登録情報（８０９）となる。なお、複数のプリントキューが登録されている場合、ｐｒｉｎｔｅｒｓ．ｃｏｎｆにはそのプリントキュー分、それぞれの対応するプリンターに対して図９の記述が繰り返されることになる。
【００３５】
続いてステップ５０５においてＯＳ（２１２）はプリンタ仕様記述ファイル（８０６）をシステムに登録する。図５においてＯＳ（２１２）はプリンタドライバのＵＩ制御モジュール（８０５）から登録するプリンターのプリンタ仕様記述ファイル（８０６）を取得し、プリントキューごとに用意されたシステム所定の箇所８１０に登録する。
【００３６】
プリンタ仕様記述ファイル（８０６）の登録の方法を説明する前に、プリンタ仕様記述ファイル（８０６）そのものの説明を行う。図１０はプリンタ仕様記述ファイル（８０６）の一例を示したものである。このファイルはプリンターの仕様記述フォーマットに沿って記述される。
【００３７】
以下、フォーマットも踏まえながら説明する。１００１はコメントを記述している。コメントは行頭が“＊％“となっている。１００２はプリンターベンダー名を記述している。１００３はこのプリンタ仕様記述ファイル（８０６）が対応するプリンター名を記述している。１００４はこのプリンタ仕様記述ファイル（８０６）が対応しているページ記述言語を記述している。１００５はプリンタードライバーのバージョンを記述している。このあと、このプリンターの機能仕様が記述されている。機能仕様は、＊ＯｐｅｎＵＩ（例：１００６）の行から＊ＣｌｏｓｅＵＩ（例：１０１０）の行までがひとつの機能となっている。
【００３８】
＊ＯｐｅｎＵＩのあとには“＊“を先頭に付加した機能名、機能名の後には“：“で区切り、その機能の選択する際の種類を示す。この種類には、“ＰｉｃｋＯｎｅ“と“Ｂｏｏｌｅａｎ“があり、“ＰｉｃｋＯｎｅ“は選択肢の中からひとつを選択する機能であることを表している。また、“Ｂｏｏｌｅａｎ“はこの機能がＯｎ／Ｏｆｆで制御されることを表している。１００６では、＊ＰａｇｅＳｉｚｅという機能があり、この機能は選択肢のなかからひとつを選択するものであることを表している。１００６の次の行にはこの機能のデフォルト値を記述する。この行は“＊Ｄｅｆａｕｌｔ“で始まり、この後につづけて前の行で定義した機能名を付加する。
【００３９】
この行では、ＰａｇｅＳｉｚｅという機能のデフォルトがＡ４であることを示している。次の行から１０１０の＊ＣｌｏｓｅＵＩのところまではこの機能の選択肢を１行に１選択肢記述する。たとえば１００８では、ＰａｇｅＳｉｚｅの選択肢のひとつとしてＡ３があることを表している。なお、これはページサイズを選択する機能を記述しており、ページサイズは選択肢が多いため途中を省略している。この機能の最後の記述は１０１０であり、＊ＣｌｏｓｅＵＩの後に＊ＯｐｅｎＵＩで記述した機能名を記述する。これでひとつの機能が表現されている。つぎの１０１１から１０１６まではもうひとつの機能の記述である。
【００４０】
重複する説明は省略するが、このブロックでは、Ｄｕｐｌｅｘという機能があり、どれかひとつの選択肢を選択するものであり、選択肢はＮｏｎｅ、Ｓｉｍｐｌｅｘ、Ｄｕｐｌｅｘから選択することを表している。実際にはこれは両面印刷指定の機能を表現したものであり、Ｎｏｎｅは指定しないためプリンターのデフォルト設定に従い、Ｓｉｍｐｌｅｘは片面、Ｄｕｐｌｅｘは両面印刷を意味する。
【００４１】
次に、ＯＳ（２１２）がこのプリンタ仕様記述ファイル（８０６）を登録する方法について説明する。ＯＳ（２１２）はプリンターに対応するこのプリンタ仕様記述ファイル（２１６）をＵＩ制御モジュール（８０５）から取得し、システムの所定の場所に格納する。図１１は格納場所とそのファイルを示したものである。格納場所は外部メモリ（２１１）の／ｅｔｃ／ｃｕｐｓ／ｐｐｄ／ディレクトリ、格納するファイルはファイル名としてプリンターの名前とそのあと、アンダースコアに続いてプリンターのアドレスを付加したファイル名としている。ここで追加したプリンタ仕様記述ファイル（８１０）は１００４の“ＰｒｉｎｔｅｒＣ＿１９２．１６８．１．１０＿．ｐｐｄ“となっている。図５において、ＯＳ（２１２）はプリンタ仕様記述ファイル（８０６）を８１０のプリンタ仕様記述ファイルに格納していることを示している。
【００４２】
以上のステップにより、プリントキューの登録が完了する。
［インストールされたプリンタードライバーのファイル構成］
次に、上記で説明されたプリンタードライバーのファイルがどのように、ＯＳ（２１２）で管理されているかを説明する。
【００４３】
まず、本発明に関わるプリンタードライバーは、図１２に示すようなインストール指示書（１２００）に従って、各関連ファイルを図４〜７で示す方法などで、プリンタードライバーインストーラーやＯＳ（２１２）の機能によってインストールされる。そして各関連ファイルのうち、プリンターごとに必要とする固有ファイル（１２０２〜１２１０）の他に、本プリンタードライバー、および同じプリンターベンダーが提供している他のプリンタードライバーセットと共通して使用されるファイルであることをＯＳ（２１２）に対して宣言する共通ファイル（１２０１）がある。同じプリンターベンダーの他のプリンタードライバーセットの例としては、図６の６０３にある「種類」や７０５の「ドライバー」、１００４、１００５などにある「ＰＤＬ１」の他の、例えば「ＰＤＬ２」用のプリンタードライバーセットのことである。
【００４４】
ＰＤＬとはページ記述言語（Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅ：以降ＰＤＬ）を表し、ＰｏｓｔＳｃｒｉｐｔやＰＣＬ（どちらも登録商標）に代表される、印刷する際のプリンターが解釈する印刷データのことである。一般的に各プリンターベンダーは複数のＰＤＬが解釈できるプリンターを提供し、それぞれのＰＤＬごとのプリンタードライバーも提供している。このようなケースにおいて、各ＰＤＬ用のプリンタードライバーで共通に使用できるモジュールを用意し、開発効率を上げていることが多い。
【００４５】
一方、一部のＯＳ（２１２）の中には、前記共通モジュールが存在し、かつその共通モジュールを複数のプリンタードライバーで使用している場合、先にインストールしたプリンタードライバーの共通モジュールを、後からインストールしたプリンタードライバーが依存性を持った形でインストールされる。このようなケースにおいて、依存性を持たれている、前者の（先にインストールされた）プリンタードライバーをアンインストールする際、その共通モジュールをアンインストールできない仕組みになっている。
【００４６】
前記一部のＯＳ（２１２）とは、プリントサーバー（図示せず）にインストールされたプリンタードライバーをクライアント側のホストコンピューターにひとつのパッケージとしてインストールすることで、従来のＯＳでは困難だった、ドライバーファイルの信頼性の確認が容易に行える、共通モジュールの管理がシンプルになり、バージョン違いなどによる互換性も考慮不要になるなどのメリットがある。
【００４７】
［本発明を表す実施例］
上記のようなＯＳ（２１２）にインストールされた複数のプリンタードライバーのひとつをアンインストールする場合の動作フローを図１３に示す。なお、本実施例で説明するプリンタードライバーは前記のように、他のプリンタードライバーセットと共通して使用されるファイルがあることをＯＳ（２１２）に対して宣言する設定となっていることが前提となる。
【００４８】
ここでは便宜的に「パッケージ管理ドライバー」と呼ぶことにする。該プリンタードライバーアンインストーラーが起動されると、ステップ１３０１（図では“Ｓ１３０１”と表す。以下同様）で、該プリンタードライバーアンインストーラーのアンインストール対象のプリンタードライバーが前記パッケージ管理ドライバーであるかどうかを確認する。次に、ステップ１３０２ではアンインストールの対象のプリンタードライバーの共通モジュールが、他のプリンタードライバーに依存されているかどうかを確認する。ステップ１３０１、およびステップ１３０２で該当しない場合は、アンインストール対象のプリンタードライバーファイルをアンインストールする。
【００４９】
一方、ステップ１３０２でアンインストールの対象のプリンタードライバーの共通モジュールが、他のプリンタードライバーに依存されている場合は、その旨のメッセージ（１４００）を表示し、対象ファイルを削除しないで、アンインストールを終了する。
【００５０】
次に本実施例の特徴を表すステップ１３０３の詳細動作フローを図１５に示す。ステップ１５０１でアンインストール対象のプリンタードライバーに依存している他のプリンタードライバーの情報を取得しリストする。前記他のプリンタードライバーの情報は、前記ステップ５０５でシステムに登録された情報などを参照することで取得できる。
【００５１】
ステップ１５０２ではステップ１５０１で取得された情報のうち、ＰＤＬ名称を基準にメッセージ（１４００）に表示するプリンタードライバーをまとめる。まとめる対象の情報として、インストールされたプリンタ記述仕様ファイルの１００４や１００５などから取得する。そしてステップ１５０３ではメッセージにはステップ１５０２でまとめられたプリンタードライバーを表示する。図１６はＰＤＬ名称ごとにプリンタードライバーをまとめた表示の例である。
【００５２】
なお、Ｗｉｎｄｏｗｓ（登録商標）において、まとめるＰＤＬ情報としては、図１７に示すようなプリンタードライバーｄｌｌ（ダイナミックリンクライブラリ）の製品名称（１７０１）などでも良い。
【００５３】
また、メッセージに表示するプリンタードライバーを名称だけでなく、バージョンごとに分けても良い。図１８がその表示例である。
【符号の説明】
【００５４】
１０１  ホストコンピューター
２０１  ＣＰＵ
２０２  ＲＡＭ
【図１】
2018112817.tif 000003
【図２】
2018112817.tif 000004
【図３】
2018112817.tif 000005
【図４】
2018112817.tif 000006
【図５】
2018112817.tif 000007
【図６】
2018112817.tif 000008
【図７】
2018112817.tif 000009
【図８】
2018112817.tif 000010
【図９】
2018112817.tif 000011
【図１０】
2018112817.tif 000012
【図１１】
2018112817.tif 000013
【図１２】
2018112817.tif 000014
【図１３】
2018112817.tif 000015
【図１４】
2018112817.tif 000016
【図１５】
2018112817.tif 000017
【図１６】
2018112817.tif 000018
【図１７】
2018112817.tif 000019
【図１８】
2018112817.tif 000020