JP2011187009A - 情報処理装置、プリンタドライバのアンインストール方法、プログラム、及び、記録媒体 - Google Patents

情報処理装置、プリンタドライバのアンインストール方法、プログラム、及び、記録媒体 Download PDF

Info

Publication number
JP2011187009A
JP2011187009A JP2010054454A JP2010054454A JP2011187009A JP 2011187009 A JP2011187009 A JP 2011187009A JP 2010054454 A JP2010054454 A JP 2010054454A JP 2010054454 A JP2010054454 A JP 2010054454A JP 2011187009 A JP2011187009 A JP 2011187009A
Authority
JP
Japan
Prior art keywords
preset
print
printer driver
printer
uninstalled
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2010054454A
Other languages
English (en)
Other versions
JP5479166B2 (ja
Inventor
Takuya Natori
琢也 名取
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2010054454A priority Critical patent/JP5479166B2/ja
Priority to US13/044,936 priority patent/US8792107B2/en
Publication of JP2011187009A publication Critical patent/JP2011187009A/ja
Application granted granted Critical
Publication of JP5479166B2 publication Critical patent/JP5479166B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1205Improving or facilitating administration, e.g. print management resulting in increased flexibility in print job configuration, e.g. job settings, print requirements, job tickets
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1225Software update, e.g. print driver, modules, plug-ins, fonts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1237Print job management
    • G06F3/1253Configuration of print job parameters, e.g. using UI at the client
    • G06F3/1257Configuration of print job parameters, e.g. using UI at the client by using pre-stored settings, e.g. job templates, presets, print styles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/62Uninstallation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1208Improving or facilitating administration, e.g. print management resulting in improved quality of the output result, e.g. print layout, colours, workflows, print preview
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/121Facilitating exception or error detection and recovery, e.g. fault, media or consumables depleted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1227Printer definition files

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】プリンタドライバに対して横断的な印刷設定とプリセットをOSが保持するシステムにて、プリンタドライバをアンインストールする際、アンインストールしたプリンタドライバに関する設定が保存されたプリセットが、実用上意味をなさないプリセットとしてアンインストール後もシステムに残り続けることを防止すること。
【解決手段】アンインストーラは、アンインストールするプリンタドライバにのみ含まれる印刷設定を抽出し、該抽出した印刷設定の情報をOS802に登録さる全てのプリセット(プリセット記述ファイル811)から削除し、アンインストールするドライバに対応するプリントキュー以外の全てのプリントキューに対して、それらの印刷設定項目のデフォルト値を抽出し、該抽出したデフォルト値と印刷設定に差がないプリセットの情報をプリセット記述ファイル811から削除し、プリンタドライバをアンインストールする。
【選択図】図8

Description

本発明は、プリンタドライバのアンインストール時の制御に関するものである。
従来、クライアントコンピュータに複数のプリンタドライバがインストールされている環境において、プリンタドライバのアンインストールを行った際の各種の設定に関して、いくつかの方法、あるいは発明が提案されている。
アンインストールの際に、オペレーティングシステム(OS)の動作上の不具合が発生するおそれがあると判断された場合、ソフトウェアに関する各種の設定内容を変更する操作手順をユーザに通知し、設定内容を変更する手段が特許文献1で提案されている。
また一方で、動作上の不具合だけでなく、アンインストール後のユーザの使い勝手を考慮した提案もされている。アンインストール対象のプリンタドライバが通常使うプリンタドライバに設定されているときに、アンインストール対象のプリンタドライバと異なるプリンタドライバを通常使うプリンタドライバに設定することをユーザに促す制御が特許文献2で提案されている。
特開2001−92642号公報 特開2004−287764号公報
本発明が解決しようとする課題は、プリンタドライバに対して横断的な印刷設定をOSが保持するシステム環境に関するものである。例えば、Mac OS X以降、Linux(登録商標)等の各種UNIX(登録商標)ベースのOS等で動作するシステム環境がこれに相当する。
このようなシステム環境においては、プリンタドライバのプリセットの情報も、プリンタドライバに対して横断的にOSが保持している。そのため、従来のプリンタドライバのアンインストーラは、インストールしたプリンタドライバを制御するモジュール群や、プリンタの情報が記載された設定ファイルを削除していた。
しかしながら、このようなアンインストーラは、プリセットに関しては特別の処理を行わない。そのため、アンインストールしたプリンタドライバに関する設定が保存されたプリセットが、ユーザの実用上意味をなさないプリセットとしてアンインストール後もシステムに残り続けてしまうことがあった。このようなプリセットがシステムに残り続けてしまう現象は、動作上の不具合とはならないが、ユーザの使い勝手を考慮すると好ましくはない。
本発明は、上記の問題点を解決するためになされたもので、本発明の目的は、プリンタドライバにより登録されたプリントキューの印刷設定をプリセットとしてプリンタドライバに対して横断的にオペレーティングシステムに登録する情報処理装置からプリンタドライバをアンインストールした後に、アンインストールしたプリンタドライバに関する設定が保存されたプリセットが、ユーザの実用上意味をなさないプリセットとして情報処理装置に残り続けてしまうことを防ぐ仕組みを提供することである。
本発明は、プリンタドライバにより登録されたプリントキューの印刷設定をプリセットとして複数のプリンタドライバに対して横断的にオペレーティングシステムに登録し、該登録されたプリセットをいずれかのプリンタドライバのプリントキューの印刷設定として呼び出して印刷実行可能な情報処理装置であって、前記印刷設定のうちアンインストールするプリンタドライバにのみ含まれる印刷設定を抽出する抽出手段と、前記オペレーティングシステムに登録されているプリセットの印刷設定を取得する取得手段と、前記プリセットの印刷設定に前記アンインストールするプリンタドライバにのみ含まれる印刷設定が含まれているか判定する第1判定手段と、前記第1判定手段により、前記プリセットの印刷設定に前記アンインストールするプリンタドライバにのみ含まれる印刷設定が含まれていると判定された場合、前記プリセットから前記アンインストールするプリンタドライバにのみ含まれる印刷設定の情報を削除する第1削除手段と、前記プリセットの印刷設定と前記プリントキューの印刷設定のデフォルト値を比較する比較手段と、前記比較手段により前記プリセットの印刷設定と前記プリントキューの印刷設定のデフォルト値とに差がないと判定された場合、前記プリセットを削除する第2削除手段と、前記アンインストールするプリンタドライバをアンインストールするアンインストール手段とを備えることを特徴とする。
本発明によれば、プリンタドライバにより登録されたプリントキューの印刷設定をプリセットとしてプリンタドライバに対して横断的にオペレーティングシステムに登録する情報処理装置からプリンタドライバをアンインストールした後に、アンインストールしたプリンタドライバに関する設定が保存されたプリセットが、ユーザの実用上意味をなさないプリセットとして情報処理装置に残り続けてしまうことを防ぐことができる。
本発明が適用されるシステムの一例を示す図である。 コンピュータ101のハードウェア構成を示すブロック図である。 プリンタドライバの構成を示すブロック図である。 プリンタドライバのインストール手順を示したフローチャートである。 プリントキューを登録する手順を示すフローチャートである。 プリントキューリストダイアログを示した図である。 プリントキュー追加ダイアログを示した図である。 コンピュータ101に既にプリントキューが登録された状態を示すシステムブロック図である。 登録するプリントキューの情報が記述されたたファイルを示す図である。 プリンタ仕様記述ファイルの一例を示した図である。 プリンタ仕様記述ファイルの格納場所とそのファイル名を示した図である。 登録したプリントキューの印刷設ダイアログを開いたときのユーザI/F(印刷ダイアログ)を示す図である。 プリセットの設定内容を保存するプリセット記述ファイルの一例を示す図である。 本発明の実施例1におけるアンインストール手順の一例を示すフローチャートである。 アンインストール時におけるプリセット設定の更新例を説明するための図である。 本発明の実施例2におけるアンインストール手順の一部を示すフローチャートである。 本発明の実施例2におけるプリセット設定変更通知ダイアログの一例を示す図である。 本発明の実施例3におけるアンインストール手順の一例を示すフローチャートである。 本発明の実施例3におけるプリセット設定変更通知ダイアログの一例を示す図である。
以下、本発明を実施するための形態について図面を用いて説明する。
[システム構成]
図1は、本発明が適用されるシステムの一例を示す図である。
図1において、104はコンピュータネットワークである。このネットワーク104には、情報処理装置としてのクライアントコンピュータ101(以下、コンピュータ101)とネットワークプリンタ(以下、プリンタ)102及び103が接続される。
コンピュータ101には、オペレーティングシステム(OS(印刷システムを含む))、アプリケーション、及び、プリンタドライバ等がインストールされている。このシステムにより、ユーザは、コンピュータ101からユーザデータをプリンタ102或いは103に送信し、印刷することができる。
なお、コンピュータ101は、プリンタドライバに対して横断的な印刷設定を保持するOSで動作するコンピュータとする。例えば、Mac OS X以降のOSで動作するコンピュータがこれに該当する。なお、Mac OS X以降のOSでは、標準の印刷システムとしてCUPSが採用されている。しかし、本発明は、Mac OS X以降のOSで動作するコンピュータに限定されるものではない。プリンタドライバにより登録されたプリントキューの印刷設定をプリセットとして複数のプリンタドライバに対して横断的にオペレーティングシステムに登録し、該登録されたプリセットをいずれかのプリンタドライバのプリントキューの印刷設定として呼び出して印刷実行可能なコンピュータであれば、どのようなコンピュータにも適用可能である。また、印刷システムもCUPSに限定されるものではない。
なお、CUPSとは、Common Unix(登録商標) Printing System(コモン・ユニックス・プリンティング・システム)を示す。CUPSは、Mac OS X以降で標準の印刷システムとして採用されているものであり、Mac OS X以降のOS上で動作する(通常、デーモンとして動作する)。なお、本実施例では、CUPSがOSのパッケージに含まれるものとして説明する。よって、OSが行う動作として説明する箇所であってもCUPSが行う動作が含まれる場合がある。なお、CPUSが、OSとは別にインストールされる構成であってもよい。また、CUPSは、印刷ジョブとキューの管理に、IPP(Internet Printing Protocol)を使用する。さらに、CUPSは、プリンタで利用可能な機能の記述にPPD(PostScript Printer Description)を用いる。
図2は、コンピュータ101のハードウェア構成を示すブロック図である。
図2において、203は中央演算装置としてのプロセッサ(CPU)である。204は揮発性メモリであるRAMである。205は不揮発性メモリであるROMである。
206はキーボードコントローラである。キーボードコントローラ206には、ユーザがコンピュータを操作するためのキーボード212が接続されている。キーボードコントローラ206は、キーボード212からの入力を制御する。207はマウスコントローラである。マウスコントローラ207には、ユーザがコンピュータを操作するためのマウス等のポインティングデバイス(以下、マウスとして説明する)213が接続されている。マウスコントローラ207は、マウス213からの入力を制御する。
208はビデオコントローラである。ビデオコントローラ208には、表示装置214が接続されている。ビデオコントローラ208は、表示装置214への出力を制御する。
209は外部記憶装置コントローラである。外部記憶装置コントローラ209には、アプリケーションプログラムや大容量のデータを保存するための不揮発性の外部記憶装置215(例えば、ハードディスク)が接続されている。外部記憶装置コントローラ209は、外部記憶装置215に対するデータの読み書きを制御する。
210は外部メディア装置コントローラである。外部メディア装置コントローラ210には、外部メディア制御装置216が接続されている。外部メディア装置コントローラ210は、外部メディア制御装置216にセットされた外部メディア(CD−ROMやDVD−ROM等のプログラムやデータを記録したコンピュータ読み取り可能な記録媒体)の読み取りや書き込み等を制御する。例えば、アプリケーションやドライバソフトウェア等が外部メディアなどで提供されているとき、ユーザは外部メディア制御装置216にCD−ROMなどのメディアをセットし、コンピュータ101にプログラムを読み込ませることができる。
211はネットワークI/Fコントローラである。ネットワークI/Fコントローラ211は、ネットワーク104への接続を制御する。コンピュータ101は、ネットワークI/Fコントローラ211を用いて、コンピュータネットワーク104に接続された他の機器(102,103)との通信が可能である。
通常、コンピュータ101を起動するための初期プログラムやコンピュータ101の各モジュールを制御するための基本的なプログラムは、ROM205に保存されている。またOS(印刷システムを含む)、アプリケーション、及びプリンタドライバ等は、外部記憶装置215に保存されている。コンピュータ101の電源が投入されると、まずCPU203によりROM205に保存されているコンピュータを起動するためのプログラムが実行される。そして、そのプログラムが(そのプログラムを実行することによりCPU203が)、外部記憶装置215に保存されているOSをRAM204にロードし、その後、制御権をOSに渡す。なお、OSを実行することによりCPU203が行う動作を、以降、OSが行う等と表現する。
OSは、必要なモジュールやドライバをさらに外部記憶装置215からRAM204に読み込む。さらに、OSは、ユーザの指示により、必要なアプリケーションを外部記憶装置215からRAM204に読み込み、実行する。
なお、本実施例で説明する、プリンタドライバ、プリンタドライバのインストーラ、及びプリンタドライバのアンインストーラは、CD−ROM等の外部メディアで供給されるものとする。ユーザは、この外部メディアを外部メディア制御装置216にセットする。そして、CPU203が必要に応じてプリンタドライバやインストーラ、アンインストーラをこの外部メディアからRAM204に読み込んだり、外部記憶装置215に保存したりする。
[プリンタドライバのインストールおよびプリントキュー登録]
次に、プリンタドライバについて説明する。
図3は、プリンタドライバの構成を示すブロック図である。
プリンタドライバは、図3に示すようなモジュール群で構成されている。
図3に示すように、プリンタドライバ301は、グラフィックレンダリングモジュール302、UI制御モジュール303、プリンタ仕様記述ファイル304、色処理モジュール305、入出力制御モジュール306等のモジュール群で構成される。なお、プリンタドライバの機能によっては、この他のモジュールから構成されることもある。
グラフィックレンダリングモジュール302は、OSの印刷システムから受け取った印刷データをプリンタデバイスが理解できる印刷データ(ページ記述言語;PDL)にレンダリングする。UI制御モジュール303は、プリンタで利用可能な機能(プリンタ仕様情報)を記述したプリンタ仕様記述ファイル304に基づいてプリンタで利用可能な機能を表示したり、ユーザからの設定を受け付ける。色処理モジュール305は、ICCプロファイルに基づく色処理を行う。入出力制御モジュール306は、印刷データをプリンタへ送信する。
次に、このような構成のプリンタドライバをコンピュータ101へインストールする手順を説明する。
図4は、プリンタドライバのインストール手順を示したフローチャートである。なお、このフローチャートの処理は、CPU203がプリンタドライバインストーラ(以下、インストーラ)をOS上で実行することにより実現されるものである。ユーザは、プリンタドライバが格納されたCD−ROMを準備するか、ネットワーク経由でインストーラを入手しているものとする。
まず、ユーザがインストーラを起動する操作を行うと、OSは、この操作を検知し、インストーラを起動する(S401)。なお、CPU203がOSを実行することにより実行される動作を、OSを主語として、OSが行う等と表現する。また、CPU203がOS上でインストーラを実行することにより実行される動作を、インストーラを主語として、インストーラが行う等と表現する。
起動されたインストーラは、CD−ROM等からプリンタドライバモジュールを読み出して、外部記憶装置215の所定の場所に格納する(S402)。なお、プリンタドライバモジュールの格納先は、印刷システムによって異なるが、一例として、CUPSでは、"/Library/Printers/"ディレクトリ以下にベンダー毎にプリンタドライバモジュールを格納することになっている。なお、ベンダー毎のディレクトリの下にさらにプリンタドライバの種類に分けて格納することも可能である。例えば、"ABC"というベンダーの"PDL1"と" PDL2"という異なるプリンタドライバがあるとき、以下のように行う。まず、"PDL1"用に"/Library/Printers/ABC/ PDL1/"というディレクトリを作成する。また、"PDL2"用に"/Library/Printers/ABC/PDL2/"というディレクトリを作成する。そして、"PDL1"のプリンタドライバと"PDL2"のプリンタドライバを、対応するディレクトリ下に格納する。
以上により、プリンタドライバのインストールを完了するが、実際にプリンタへの出力を可能にするためには、ユーザはプリンタドライバを使用してプリンタを印刷システムに登録する必要がある。
以下、システムに登録されるプリンタを今後、プリントキュー、或いは、単に、キューと呼ぶ。
図5は、プリントキューを登録する手順を示すフローチャートである。この手順に沿って、必要な図を用いながら流れを説明する。なお、このフローチャートの処理は、CPU203がOSを実行することにより実現されるものである。また、CPU203がOSを実行することにより実行される動作を、プリンタドライバを主語として、プリンタドライバが行う等と表現する。
ユーザがプリンタ登録リストダイアログ(以下、プリントキューリストダイアログ)601(図6)を開く操作を行うと、OSは、この操作を検知して、プリントキューリストダイアログを開く。このステップにおいて、OSは、プリントキュー登録のためのプログラムコードを外部記憶装置215からRAM204に読み出して実行する。
図6は、OSが表示するプリントキューリストダイアログを示した図である。
このプリントキューリストダイアログ601には、現在登録されているプリントキューを表示する登録プリントキューリスト602、登録プリントキューリスト602で選択されているプリントキューの詳細情報を表示するプリントキュー詳細表示領域603がある。
また、604はプリントキューを新たに追加するためのボタンである。605は、現在、登録プリントキューリスト602で選択されているプリントキューを削除するためのボタンである。なお、606はこのダイアログを閉じるためのボタンである。
以下、図5のフローチャートの説明に戻る。
次に、ユーザがプリントキューリストダイアログ601のプリントキュー追加ボタン604のクリックすると、OSは、この操作を検知して(S502)、プリントキュー追加ダイアログ701(図7)を表示する(S503)。ここで表示されたプリントキュー追加ダイアログ701(図7)に対して、ユーザが、後述する必要な情報を入力、プリンタの選択、及びプリンタの追加の操作を行うと、OSは、この操作を検知して(S504)、ステップS505に処理を進める。
図7は、プリントキュー追加ダイアログを示した図である。
プリントキュー追加ダイアログ701において、702は接続されているプリンタのネットワークアドレス(この例ではIPアドレス)を指定するコントロールである。703はプリントキューを識別するためのプリンタの名前を入力するコントロールである。704はプリンタが設置されている場所を入力するコントロールである。プリンタの名前入力コントロール703及びプリンタの場所入力コントロール704に入力される文字列は、図6に示した登録プリントキューリスト602及びプリントキュー詳細表示領域603に表示する際に使用される文字列となる。
705はプリントキューを登録する際に使用するプリンタドライバを指定するコントロールである。このコントロール705でリストされるプリンタドライバは、先に説明したOSのプリンタドライバ格納ディレクトリ("Library/Printers")の下に格納されているプリンタドライバがOSによりリストされる。
図7の例では、アドレスが"192.168.1.10"、名前が"PrinterC"、場所が"2F"、またプリンタドライバとして"ABC PDL1"を選択している状態である。この状態で、ユーザが追加ボタン706をクリックすると、OSはこの操作を検知し、プリントキューの追加処理を行う(図5のS505)。なお、追加を行わないでこのダイアログを閉じるときは、ユーザはダイアログクローズボタン707をクリックする。
以下、図5のフローチャートの説明に戻る。
ステップS505では、OSは、ユーザが上記プリントキュー追加ダイアログ701で指定したプリントキューとそのプリンタ仕様記述ファイルの印刷システムへの登録を行い、処理を終了する。なお、上記ステップS505について、図8〜図11を使用して詳細な説明を行う。
図8は、コンピュータ101に既にプリントキューが登録された状態を示すシステムブロック図である。
図8に示す、グラフィックレンダリングモジュール803は、前述した手順によりOSの所定のディレクトリ("/Library/Printers/")の下に格納されたプリンタドライバのグラフィックレンダリングモジュール302に対応する。
同様に、UI制御モジュール805は、インストールされたプリンタドライバのUI制御モジュール303に対応する。色処理モジュール804は、インストールされたプリンタドライバの色処理モジュール305に対応する。入出力制御モジュール808は、インストールされたプリンタドライバの入出力制御モジュール306に対応する。また、プリンタ仕様記述ファイル806は、インストールされたプリンタドライバのプリンタ仕様記述ファイル304に対応する。
なお、バックエンドモジュール807は、OS802が提供するものであり、グラフィックレンダリングモジュール803が生成した印刷データを、入出力制御モジュール808へ受け渡しするためのモジュールである。なお、バックエンドモジュール807から印刷データを受け取った入出力制御モジュール808は、そのデータをプリンタへ送信する。また、登録プリントキュー情報809、プリンタ仕様記述ファイル810は、図5のプリンタ登録の過程でOS802が生成するものであり、以下その詳細を説明する。
図5のステップS505において、OS802は、プリントキュー追加ダイアログ701の情報を集め、印刷システムへのプリントキューの登録作業を行う。この登録作業は、以下のように実行される。
図9は、登録するプリントキューの情報が記述されたファイルを示す図である。なお、このファイルはマークアップ言語で記述されている。
図9において、901はプリントキューの識別子であり、プリンタ名とアンダースコアで続けてプリンタのアドレスを記述している。902はプリンタ名を記述している。903はプリンタの設置場所を記述している。904は実際のプリントキューの記述を行っており、この例ではlpdプロトコルによりアドレス"192.168.1.10"に送信することとなる。905は、このプリンタが使用するプリンタドライバ名(ここでは"ABC PDL1")を記述している。906は、このプリンタの記述が終了することを示している。
図5のステップS505において、OS802は、図9の記述を作成し、このプリンタの登録情報として外部記憶装置215の所定のファイルに追記する。所定のファイルとは、例えばCUPSでは、"/etc/cups/"のディレクトリに格納されている"printers.conf"ファイルとなる。この追記により、登録するプリンタキューがOS802の印刷システムに登録されることとなる。これが登録プリントキュー情報809となる。なお、複数のプリントキューが登録されている場合、"printers.conf"には、そのプリントキュー分、それぞれ対応するプリンタに対する図9の記述が繰り返されることになる。
またS505において、OS802は、プリンタ仕様記述ファイルをシステムに登録する。この登録作業は、以下のように実行される。
図8において、OS802は、プリンタドライバのUI制御モジュール805から、登録するプリントキューのプリンタ仕様記述ファイル806を取得し、システムの所定の箇所(プリンタ仕様記述ファイル810)に登録する。なお、プリンタ仕様記述ファイル810の登録の方法を説明する前に、プリンタ仕様記述ファイルそのものの説明を行う。
図10は、プリンタ仕様記述ファイルの一例を示した図である。なお、このプリンタ仕様記述ファイルは、プリンタの仕様記述フォーマットに沿って記述される。以下、フォーマットも踏まえながら説明する。
図10において、1001はコメントを記述している。コメントは行頭が"*%"となっている。1002はベンダー名を記述している。1003はこのプリンタ仕様記述ファイルが対応するプリンタ名を記述している。1004はこのプリンタ仕様記述ファイルが対応しているページ記述言語を記述している。1005はプリンタドライバのバージョンを記述している。この後、このプリンタの機能仕様が記述されている。
機能仕様は、"*OpenUI"の行から"*CloseUI"の行までがひとつの機能となっている。"*OpenUI"の後には"*"を先頭に付加した機能名、機能名の後には":"で区切り、その機能の選択する際の種類を示す。この種類には、"PickOne"と"Boolean"があり、"PickOne"は選択肢の中からひとつを選択する機能であることを表している。また、"Boolean"はこの機能がOn/Offで制御されることを表している。
1006では、"*PageSize"という機能があり、この機能は選択肢のなかからひとつを選択するものであることを表している。1006の次の行にはこの機能のデフォルト値を記述する。この行は"*Default"で始まり、この後につづけて前の行で定義した機能名を付加する。この行では、"PageSize"という機能のデフォルトが"A4"であることを示している。次の行から1010の"*CloseUI"のところまではこの機能の選択肢を1行に1選択肢記述する。例えば、1008では、"PageSize"の選択肢のひとつとして"A3"があることを表している。また、1009では、"PageSize"の選択肢のひとつとして"A4"があることを表している。なお、これはページサイズを選択する機能を記述しており、ページサイズは選択肢が多いため途中を省略している。この機能の最後の記述は1010であり、"*CloseUI"の後に"*OpenUI"で記述した機能名を記述する。これで一つの機能が表現されている。
次の1011〜1016は、もう一つの機能の記述である。重複する説明は省略するが、このブロックでは、"Duplex"という機能があり、どれかひとつの選択肢を選択するものであり、選択肢は"None"、"Simplex"、"Duplex"から選択することを表している。実際には"*Duplex"は両面印刷指定の機能を表現したものであり、"None"は指定しないためプリンタのデフォルト設定に従い、"Simplex"は片面、"Duplex"は両面印刷を意味する。
次に、このプリンタ仕様記述ファイルの登録方法について説明する。OS802は、登録するプリンタに対応するこのプリンタ仕様記述ファイル806をUI制御モジュール805から取得し、図11に示すような、システムの所定の場所に格納する。
図11は、プリンタ仕様記述ファイルの格納場所とそのファイル名を示した図である。
図11に示すように、プリンタ仕様記述ファイルの格納場所は、外部記憶装置215の"/etc/cups/ppd/"ディレクトリ1101以下である。また、上記格納場所に格納するプリンタ仕様記述ファイルは、1102〜1104に示すように、ファイル名として登録するプリンタの名前とその後、アンダースコアに続いて登録するプリンタのアドレスを付加したファイル名としている。即ち、登録するプリントキューのプリンタ仕様記述ファイルは、登録するプリントキューの識別子(図9の901)をファイル名とした拡張子"ppd"のファイルとする。ここで追加したプリンタ仕様記述ファイル810は、1104に示す"PrinterC_192.168.1.10_.ppd"となっている。
このように、登録するプリントキューのプリンタ仕様記述ファイルを図11に示すような、システムの所定の場所に格納することにより、登録するプリントキューのプリンタ仕様記述ファイルが印刷システムに登録されることとなる。これがプリンタ仕様記述ファイル810となる。以上のステップにより、プリントキューの登録が完了する。
[プリントキューおよびプリセット設定]
続いて、プリントキュー及びプリセットの設定について説明する。
図12は、登録したプリントキューの印刷設ダイアログを開いたときのユーザI/F(印刷ダイアログ)を示す図である。このユーザI/F(印刷ダイアログ)は、アプリケーションのファイルメニューなどに「プリント」というメニューがあり、その「プリント」を選択したときに表示されるダイアログである。
図12において、1201は印刷ダイアログである。1202〜1205はシステムが共通で提供するコントロールである。1202ではプリントキューの選択、1203では後述するプリセットの選択、1204では基本機能である部数の設定、1205では用紙サイズの指定が可能となっている。
プリンタ固有の機能は、それ以外の部分で設定が可能となっている。このプリンタの機能が数多くある場合、全ての機能を一度に表示せずに、1206のコントロールで機能のグループを切り替える方法がある。
ここでは、「仕上げ」に関連する機能を表示している状態を示したものである。仕上げ関連の機能としては、1207の片面/両面指定、1208のステイプル指定、1209の製本印刷指定がある。他にもさまざまな機能があり、それは他のグループを1206のコントロールで指定することにより表示切り替えが可能となっている。
このダイアログにおいて、ユーザが出力先のプリンタを切り替えたい場合、プリントキュー選択コントロール1202により変更を行う。印刷ダイアログ1201では、現在プリントキュー"PrinterA"が選択されているが、このコントロールをクリックし、例えば"PrinterB"を選択すると、"PrinterB"のプリントキューが選択された状態となる。その結果、"PrinterB"に印刷出力されることになる。
次に、プリセット設定に関して説明する。
プリセットとは、ユーザが頻繁に使用する印刷設定に特定の名称をつけて保存しておくものである。例えば、あるプリントキューのデフォルト設定は、片面、1−up印刷、であるが、ユーザが両面、2−up印刷をよく使用する場合、以下のようにしてプリセットとして名称をつけて保存しておく。まず、印刷ダイアログ1201を開き、両面、2−upに設定した後に、プリセット選択コントロール1203で「別名で保存」を選び、保存するプリセットの名前を入力することにより、その設定をプリセットとして名称をつけて保存することができる。なお、プリセットは、図8のプリセット記述ファイル811に保存される。ユーザはこの設定を使用したい場合に、プリセット選択コントロール1203で保存したプリセットを選択するのみで、この設定を再現することができる。以下に、このプリセットの設定保存に関して説明する。
図13は、プリセットの設定内容を保存するプリセット記述ファイル811(図8)の一例を示す図である。
図13に示すように、1301及び1310に記述されているように<CustomPresetList>というタグ内に、複数のプリセットの設定内容を記述する。
1つのプリセットは、1302及び1303に記述されているように<PresetSettings>というタグ内に記述する。なお、<PresetSettings>のパラメータとして、そのプリセット名を記述することとする。
1302及び1303で示されるプリセットは、プリセット名が"Standard"、このプリセットの設定内容はNULLであることを記述している。
図13のプリセット記述ファイルには、もう一組のプリセットが記述されており、1304から1309に記述されている"Preset1"という名称のプリセットである。このプリセットの設定内容は、1305から1308に記述されている。1305はColorModeが"Color"、1306はDuplexが"Simplex"、1307はResolutionが"600"、1308はLastQueueが"NULL"であることを示している。
なお、各項目の前に"ABC."という識別子が付いている。これは、プリセットをOS802が管理しており、ベンダ共通で使用されるため、設定項目をベンダ毎に区別するために付けていることによる。以上、説明したように、このプリセット記述ファイルにより、プリセットの種類及び各プリセットの設定内容が分かる。
[アンインストール時におけるプリセット設定の更新手順]
続いて、プリンタドライバのアンインストールを行う際の流れを説明する。
図14は、本発明の実施例1におけるアンインストール手順の一例を示すフローチャートである。なお、このフローチャートの処理は、CPU203がプリンタドライバアンインストーラ(以下、アンインストーラ)をOS上で実行することにより実現されるものである。なお、アンインストーラは、プリンタドライバのインストール時に外部記憶装置215に保存されているものとする。
ユーザは外部記憶装置215に保存されている、プリンタドライバのアンインストーラを起動するように操作する。この操作を検知して、CPU203は、アンインストーラプログラムを外部記憶装置215からRAM204にロードし、そのプログラムをOS上で実行する。即ち、OS802は、アンインストーラを起動する(S1401)。なお、CPU203がOS上でアンインストーラを実行することにより実行される動作を、アンインストーラを主語として、アンインストーラが行う等と表現する。
アンインストーラは、まず、図13のプリセット記述ファイルを参照し、「標準」以外のプリセットが存在するか判定する(S1402)。なお、ここでいう「標準」とは、特定のプリセットを指すのではなく、プリセットを何も指定しないことを意味している。
「標準」以外のプリセットが存在しないと判定した場合(S1402で「存在しない」)、アンインストーラは、そのままドライバのアンインストールを実行し(S1412)、処理を終了する。
一方、「標準」以外のプリセットが存在すると判定した場合(S1402で「存在する」)、アンインストーラは、S1403に処理を進める。
S1403では、アンインストーラは、図10のプリンタ記述ファイルを参照し、全ての印刷設定項目の中で、今アンインストールするプリンタドライバにのみ含まれる印刷設定項目があるか判定する。その結果、アンインストールするプリンタドライバにのみ含まれる印刷設定項目が「ない」と判定された場合(S1403で「ない」)、アンインストーラは、そのままドライバのアンインストールを実行し(S1412)、処理を終了する。
一方、S1403でアンインストールするプリンタドライバにのみ含まれる印刷設定項目が「ある」と判定された場合(S1403で「ある」)、アンインストーラは、「標準」以外の全てのプリセットに対して、以下の処理(S1405〜S1410に相当)を実行するように制御する(S1404、S1411)。
まず、アンインストーラは、対象のプリセットに関して、その印刷設定項目を抽出する(S1405)。そして、アンインストーラは、上記S1405で抽出された印刷設定項目の中に、アンインストールするドライバにのみ含まれる印刷設定項目が存在するか判定する(S1406)(第1判定処理)。ここで、アンインストールするドライバにのみ含まれる印刷設定項目が存在しないと判定された場合(S1406で「存在しない」)、アンインストーラは、そのプリセットの処理を終了し、次のプリセットに処理を移す。
一方、S1406で、アンインストールするドライバにのみ含まれる印刷設定項目が存在すると判定された場合(S1406で「存在する」)、アンインストーラは、S1407に処理を進める。
S1407では、アンインストーラは、図13に示したプリセット記述ファイルにおいて、アンインストールするドライバにのみ含まれる印刷設定項目の情報を、このプリセットから削除する(第1削除処理)。
さらに、アンインストーラは、アンインストールするドライバに対応しているプリントキュー以外の全てのプリントキューに対して、図10のプリンタ記述ファイルを参照し、それらの印刷設定項目のデフォルト値を抽出する(S1408)。詳細には図10のプリンタ記述ファイル内から"*Default"で始まる行が示す値を抽出する。
そして、アンインストーラは、プリセットの印刷設定項目の値と上記S1408で抽出されたデフォルト値とを比較し、差があるか判定する(S1409)。その結果、プリセットの印刷設定項目の値とデフォルト値とに差がある場合(S1409で「差がある」)、アンインストーラは、そのプリセットの処理を終了し、次のプリセットに処理を移す。
一方、処理中のプリセットの印刷設定項目の値と上記S1408で抽出されたデフォルト値とに差が無い場合(S1409で「差が無い」)、そのプリセットの情報を図13のプリセット記述ファイルから削除する(S1410)(第2削除処理)。
このS1405〜S1410までの一連の処理を「標準」以外の全てのプリセットに対して実行した後、アンインストーラは、ドライバのアンインストールを実行し(S1412)、処理を終了する。
このアンインストール処理により、アンインストーラは、インストール時に、図4のS402で外部記憶装置の所定の場所に格納したプリンタドライバモジュールを削除する。
[アンインストール時におけるプリセット設定の更新例]
ここでは、具体的なプリンタドライバとプリセットの例を用いて、前記更新手順を説明する。その際プリンタドライバとプリセットに関する前提条件を、それぞれ図15(a)、図15(b)に示す。
図15は、アンインストール時におけるプリセット設定の更新例を説明するための図である。
ここで示す例では、図15(a)に示すように、プリンタドライバとして、"Driver A"、"Driver B"、"Driver C"、及び"Driver D"がインストールされているものとする。また、それぞれのプリンタドライバの設定可能な印刷設定項目は、図15(a)に示すように、例えば、"Driver A"は、"ColorMode"及び"Copies"の印刷設定項目を設定可能とする。また、"Driver B"は、"ColorMode"、"Duplex"、及び"Copies"の印刷設定項目を設定可能とする。また、"Driver C"は、"ColorMode"、"Staple"、及び"Copies"の印刷設定項目を設定可能とする。また、"Driver D"は、"Punch"、及び"Copies"の印刷設定項目を設定可能とする。なお、図15(a)に記載している印刷設定項目は、プリンタの機能の一部の例であり、プリセット設定の更新はこれらの機能に限定されるものではない。
一方、プリセットに関する設定は、図15(b)に示すように、"Preset P"、"Preset Q"、"Preset R"、及び"Preset S"が登録されているものとする。図15(b)に示すように、例えば、"Preset P"は、"Punch"及び"Copies"の印刷設定項目に関する情報を持つとする。また、"Preset Q"は"ColorMode"、"Duplex"、及び"Copies"の印刷設定項目に関する情報を持つとする。また、"Preset R"は"ColorMode"、"Punch"、及び"Copies"の印刷設定項目に関する情報を持つとする。また、"Preset S"は"ColorMode"、"Duplex"、"Punch"、及び"Copies"の印刷設定項目に関する情報を持つとする。
この前提において、ユーザがアンインストーラにより"Driver D"のプリンタドライバをアンインストールする場合を考える。このときのプリセット設定の更新の手順を図14に沿って説明する。
まず、ユーザが外部記憶装置215に保存されている、プリンタドライバ"Driver D"のアンインストーラを起動するように操作すると、この操作を検知して、OSは、"Driver D"のアンインストーラを起動する(S1401)。なお、"Driver D"のアンインストーラを、以下、「アンインストーラ」と呼ぶ。
次に、S1402で、アンインストーラは、「標準」以外のプリセットが存在するか判定する。このとき、プリセットとして"Preset P"、"Preset Q"、"Preset R"、及び"Preset S"が登録されているため、続けてアンインストーラは、アンインストールするプリンタドライバ"Driver D"にのみ含まれる印刷設定項目があるか判定する(S1403)。
図15(a)に示すとおり、"Driver D"にのみ含まれる印刷設定項目として、"Punch"があるため、S1403の判定結果は「ある」となる。よって、アンインストーラは、「標準」以外の全てのプリセット"Preset P"、"Preset Q"、"Preset R"、及び"Preset S"に対して、以下の処理を行うように制御する(S1404、S1410)。
まず、アンインストーラは、"Preset P"の印刷設定項目を抽出する(S1405)。そして、その中に"Punch"の印刷設定項目があるか判定する(S1406)。図15(b)に示すとおり、"Preset P"は"Punch"の印刷設定項目に関する情報を持っているため、アンインストーラは、"Preset P"から"Punch"の印刷設定項目を削除する(S1407)。
その後、アンインストーラは、"Driver D"以外の"Driver A"、"Driver B"、及び"Driver C"に対応しているプリントキューのプリンタ記述ファイルを参照し、それらの印刷設定項目のデフォルト値を抽出する(S1408)。
そして、"Preset P"の印刷設定項目の値と抽出されたデフォルト値を比較し、差があるか判定する(S1409)。この時点で"Preset P"は"Copies"の印刷設定項目のみ持っているので、その値と抽出されたデフォルト値を比較する。ここで抽出されたデフォルト値と"Preset P"の値に差が無かった場合、プリセット記述ファイルから、"Preset P"の情報を全て削除する(S1410)。逆に、抽出されたデフォルト値と"Preset P"の値に差があった場合、"Preset P"は"Copies"の印刷設定項目に関する情報を持ったままプリセット記述ファイルに残ることとなる。
同様に、"Preset Q"、"Preset R"、及び"Preset S"についても処理を行う。"Preset R"と"Preset S"には"Punch"印刷設定項目があるため、それらの項目をプリセット記述ファイルから削除する(S1407)。その結果残った印刷設定項目の値と抽出されたデフォルト値を比較し(S1408、S1409)、差が無かった場合、プリセット記述ファイルから、それぞれの情報を全て削除する(S1410)。逆に、抽出されたデフォルト値と"Preset R"や"Preset S"の値に差があった場合、"Preset R"や"Preset S"はプリセット記述ファイルに残ることとなる。
仮に、"Preset P"と"Preset R"の印刷設定項目の値がデフォルト値と差が無く、"Preset Q"と"Preset S"の印刷設定項目の値がデフォルト値と差が有ったとする。この場合、この一連の処理の後のプリセット記述ファイルは、図15(c)に示すような状態になる。
以下、本発明の実施例2について図16、図17を用いて説明する。
図16は、本発明の実施例2におけるアンインストール手順の一部を示すフローチャートである。なお、このフローチャートは実施例1のフローチャート図14のS1404〜S1411までの部分に相当し、その前後のステップは上記実施例1と同じ処理であるため省略している。
図17は、本発明の実施例2におけるプリセット設定変更通知ダイアログの一例を示す図である。
本実施例では、プリセット記述ファイルから印刷設定項目の情報を削除する際、及び、プリセットの情報を削除する際に、ユーザに確認を求める構成を有する。
図14のS1403の判定結果が「ある」の場合、図16の処理に進み、まず、アンインストーラは、「標準」以外の全てのプリセットに対して、以下の処理(S1602〜S1611に相当)を実行するように制御する(S1601、S1612)。
まず、アンインストーラは、対象のプリセットに関して、その印刷設定項目を抽出する(S1602)。そして、アンインストーラは、上記S1602で抽出された印刷設定項目の中に、アンインストールするドライバにのみ含まれる印刷設定項目が存在するか判定する(S1603)。ここで、存在しないと判定された場合(S1603で「存在しない」)、アンインストーラは、そのプリセットの処理を終了し、次のプリセットに処理を移す。
一方、S1603で、存在すると判定された場合、アンインストーラは、図17(a)に示すプリセット設定変更通知ダイアログを表示し、特定の印刷設定項目の情報を削除する旨をユーザに通知し、許可を求める(S1604)(第1確認処理)。
ユーザが印刷設置項目の情報の削除の是非の指示(判断)を図17(a)に示すプリセット設定変更通知ダイアログから入力すると、アンインストーラは、ユーザによる印刷設置項目の情報の削除の是非の指示(判断)を判定する(S1605)。
そして、削除しない(削除を禁止する)と判定された場合(S1605が「禁止」)、アンインストーラは、そのプリセットの処理を終了し、次のプリセットに処理を移す。
一方、削除する(削除を許可する)と判定された場合(S1605が「許可」)、アンインストーラは、図13のプリセット記述ファイルにおいて、アンインストールするドライバにのみ含まれる印刷設定項目の情報を、このプリセットから削除する(S1606)。
さらに、アンインストーラは、アンインストールするドライバに対応しているプリントキュー以外の全てのプリントキューに対して、図10のプリンタ記述ファイルを参照し、それらの印刷設定項目のデフォルト値を抽出する(S1607)。
そして、アンインストーラは、プリセットの印刷設定項目の値と上記S1607で抽出されたデフォルト値とを比較し、差があるか判定する(S1608)。その結果、差がある場合(S1608で「差がある」)、アンインストーラは、そのプリセットの処理を終了し、次のプリセットに処理を移す。
一方、処理中のプリセットの印刷設定項目の値と上記S1607で抽出されたデフォルト値とに差が無い場合(S1608で「差が無い」)、アンインストーラは、S1609に処理を進める。S1609では、アンインストーラは、図17(b)に示すプリセット設定変更通知ダイアログを表示し、特定のプリセットの情報を削除する旨をユーザに通知し、許可を求める(第2確認処理)。
ユーザがプリセットの情報の削除の是非の指示(判断)を図17(b)に示すプリセット設定変更通知ダイアログから入力すると、アンインストーラは、ユーザによるプリセットの情報の削除の是非の指示(判断)を判定する(S1610)。
そして、削除しない(削除を禁止する)と判定された場合(S1610が「禁止」)、アンインストーラは、そのプリセットの処理を終了し、次のプリセットに処理を移す。
一方、削除する(削除を許可する)と判定された場合(S1610が「許可」)、アンインストーラは、そのプリセットの情報を図13のプリセット記述ファイルから削除する(S1611)。
このS1602〜S1611までの一連の処理を「標準」以外の全てのプリセットに対して実行した後、アンインストーラは、図14のS1412に処理を進める。
以下、本発明の実施例3について図18、図19を用いて説明する。
図18は、本発明の実施例3におけるアンインストール手順の一例を示すフローチャートである。なお、図18のS1805の「ループ内処理」は、実施例1のフローチャート図14のS1404〜S1411までの部分に相当する。
図19は、本発明の実施例3におけるプリセット設定変更通知ダイアログの一例を示す図である。
本実施例では、更新した全てのプリセットと同一内容のプリセットが存在する場合に、同一内容のプリセットに関する情報をユーザに提示する構成を有する。
ユーザは外部記憶装置215に保存されている、プリンタドライバのアンインストーラを起動するように操作する。この操作を検知して、OS802は、アンインストーラを起動する(S1801)。
アンインストーラは、まず、図13のプリセット記述ファイルを参照し、「標準」以外のプリセットが存在するか判定する(S1802)。
「標準」以外のプリセットが存在しないと判定した場合(S1802で「存在しない」)、アンインストーラは、そのままドライバのアンインストールを実行し(S1809)、処理を終了する。
一方、「標準」以外のプリセットが存在すると判定した場合(S1802で「存在する」)、アンインストーラは、S1803に処理を進める。
S1803では、アンインストーラは、図10のプリンタ記述ファイルを参照し、全ての印刷設定項目の中で、今アンインストールするプリンタドライバにのみ含まれる印刷設定項目があるか判定する。その結果「ない」と判定された場合(S1803で「ない」)、アンインストーラは、そのままドライバのアンインストールを実行し(S1809)、処理を終了する。
一方、S1803で「ある」と判定された場合、アンインストーラは、「標準」以外の全てのプリセットに対して、ループ内の処理(S1805;図14のS1405〜S1410に相当)を実行するように制御する(S1804、S1806)。
このS1805のループ内の処理を「標準」以外の全てのプリセットに対して実行した後、アンインストーラは、S1807に処理を進める。
S1807では、アンインストーラは、上記S1806までの一連の処理を行った結果、今回更新した全てのプリセットに関して、そのプリセットと同一内容のプリセットが存在するか判定する(第2判定処理)。そして、同一内容のプリセットが存在すると判定された場合(S1807で「存在する」)、アンインストーラは、図19(a)に示すプリセット設定変更通知ダイアログを表示し、ユーザに同一内容のプリセットに関する情報を通知する(S1808)。
次に、アンインストーラは、ドライバのアンインストールを実行し(S1809)、処理を終了する。
一方、アンインストーラは、上記S1806までの一連の処理を行った結果、今回更新した全てのプリセットに関して、そのプリセットと同一内容のプリセットが存在しないと判定された場合(S1807で「存在しない」)、アンインストーラは、そのままドライバのアンインストールを実行し(S1809)、処理を終了する。
なお、上記S1808において、ユーザに同一内容のプリセットに関する情報をユーザに通知する際に、図19(b)に示すような操作パネルを表示することで、その場で同一内容のプリセットの情報を削除する旨をユーザに通知し、許可を求める(第3確認処理)ように構成してもよい。なお、同一内容のプリセットの削除を許可する場合は、削除するプリセットの選択も行うように構成する。
この場合、ユーザが同一内容のプリセットの情報の削除の是非の指示(判断)を図19(b)に示すプリセット設定変更通知ダイアログから入力すると、アンインストーラは、ユーザによるプリセットの情報の削除の是非の指示(判断)を判定する。そして、削除しない(削除を禁止する)と判定した場合、アンインストーラは、そのままドライバのアンインストールを実行し(S1809)、処理を終了する。
一方、削除する(削除を許可する)と判定した場合、アンインストーラは、図19(b)に示すプリセット設定変更通知ダイアログで削除するように選択されたプリセットの情報を図13のプリセット記述ファイルから削除する(S1410)(第3削除処理)。そして、アンインストーラは、ドライバのアンインストールを実行し(S1809)、処理を終了する。
なお、上記の説明では、図18のS1805の「ループ内処理」を、実施例1のフローチャート図14のS1404〜S1411までの部分とした。しかし、図18のS1805の「ループ内処理」を、実施例2のフローチャート図16のS1602〜S1611までの部分とするように構成してもよい。
以上、3つの実施例について説明したが、本発明は、上記実施例に限定されるものではなく、種々の態様を採ることが可能である。
以上示したように、本発明によれば、プリンタドライバに対して横断的な印刷設定やプリセットをOSが保持するシステムにおいて、プリンタドライバをアンインストールした後に、アンインストールしたプリンタドライバに関する設定が保存されたプリセットが、ユーザの実用上意味をなさないプリセットとしてシステムに残り続けてしまうことを防ぐことを可能とする。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
(他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施例の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
101 コンピュータ
102,103 プリンタ
104 ネットワーク
801 オペレーティングシステム(OS)
809 登録プリントキュー
810 プリンタ仕様記述ファイル
811 プリセット記述ファイル

Claims (8)

  1. プリンタドライバにより登録されたプリントキューの印刷設定をプリセットとして複数のプリンタドライバに対して横断的にオペレーティングシステムに登録し、該登録されたプリセットをいずれかのプリンタドライバのプリントキューの印刷設定として呼び出して印刷実行可能な情報処理装置であって、
    前記印刷設定のうちアンインストールするプリンタドライバにのみ含まれる印刷設定を抽出する抽出手段と、
    前記オペレーティングシステムに登録されているプリセットの印刷設定を取得する取得手段と、
    前記プリセットの印刷設定に前記アンインストールするプリンタドライバにのみ含まれる印刷設定が含まれているか判定する第1判定手段と、
    前記第1判定手段により、前記プリセットの印刷設定に前記アンインストールするプリンタドライバにのみ含まれる印刷設定が含まれていると判定された場合、前記プリセットから前記アンインストールするプリンタドライバにのみ含まれる印刷設定の情報を削除する第1削除手段と、
    前記プリセットの印刷設定と前記プリントキューの印刷設定のデフォルト値を比較する比較手段と、
    前記比較手段により前記プリセットの印刷設定と前記プリントキューの印刷設定のデフォルト値とに差がないと判定された場合、前記プリセットを削除する第2削除手段と、
    前記アンインストールするプリンタドライバをアンインストールするアンインストール手段と、
    を備えることを特徴とする情報処理装置。
  2. 前記プリセットから前記アンインストールするプリンタドライバにのみ含まれる印刷設定の情報を削除する際に、ユーザに削除の是非を確認する第1確認手段を備えることを特徴とする請求項1に記載の情報処理装置。
  3. 前記プリセットを削除する際に、ユーザに削除の是非を確認する第2確認手段を備えることを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記プリセットの中に同一内容のプリセットが存在するか判定する第2判定手段と、
    前記第2判定手段により前記プリセットの中に同一内容のプリセットが存在すると判定された場合、前記同一内容のプリセットを削除する第3削除手段と、
    を備えることを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記同一内容のプリセットを削除する際に、ユーザに削除の是非を確認する第3確認手段を備えることを特徴とする請求項4に記載の情報処理装置。
  6. プリンタドライバにより登録されたプリントキューの印刷設定をプリセットとして複数のプリンタドライバに対して横断的にオペレーティングシステムに登録し、該登録されたプリセットをいずれかのプリンタドライバのプリントキューの印刷設定として呼び出して印刷実行可能な情報処理装置におけるプリンタドライバのアンインストール方法であって、
    抽出手段が、前記印刷設定のうちアンインストールするプリンタドライバにのみ含まれる印刷設定を抽出する抽出ステップと、
    取得手段が、前記オペレーティングシステムに登録されているプリセットの印刷設定を取得する取得ステップと、
    判定手段が、前記プリセットの印刷設定に前記アンインストールするプリンタドライバにのみ含まれる印刷設定が含まれているか判定する判定ステップと、
    第1削除手段が、前記判定ステップで前記プリセットの印刷設定に前記アンインストールするプリンタドライバにのみ含まれる印刷設定が含まれていると判定された場合、前記プリセットから前記アンインストールするプリンタドライバにのみ含まれる印刷設定の情報を削除する第1削除ステップと、
    比較手段が、前記プリセットの印刷設定と前記プリントキューの印刷設定のデフォルト値を比較する比較ステップと、
    第2削除手段が、前記比較手段により前記プリセットの印刷設定と前記プリントキューの印刷設定のデフォルト値とに差がないと判定された場合、前記プリセットを削除する第2削除ステップと、
    アンインストール手段が、前記アンインストールするプリンタドライバをアンインストールするアンインストールステップと、
    を備えることを特徴とするプリンタドライバのアンインストール方法。
  7. 情報処理装置に備えられたプロセッサを、請求項1乃至5のいずれか1項に記載された情報処理装置の手段として機能させるためのプログラム。
  8. 情報処理装置に備えられたプロセッサを、請求項1乃至5のいずれか1項に記載された情報処理装置の手段として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2010054454A 2010-03-11 2010-03-11 情報処理装置、プリンタドライバのアンインストール方法、プログラム、及び、記録媒体 Expired - Fee Related JP5479166B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010054454A JP5479166B2 (ja) 2010-03-11 2010-03-11 情報処理装置、プリンタドライバのアンインストール方法、プログラム、及び、記録媒体
US13/044,936 US8792107B2 (en) 2010-03-11 2011-03-10 Information processing apparatus, method for uninstalling printer driver, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010054454A JP5479166B2 (ja) 2010-03-11 2010-03-11 情報処理装置、プリンタドライバのアンインストール方法、プログラム、及び、記録媒体

Publications (2)

Publication Number Publication Date
JP2011187009A true JP2011187009A (ja) 2011-09-22
JP5479166B2 JP5479166B2 (ja) 2014-04-23

Family

ID=44559709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010054454A Expired - Fee Related JP5479166B2 (ja) 2010-03-11 2010-03-11 情報処理装置、プリンタドライバのアンインストール方法、プログラム、及び、記録媒体

Country Status (2)

Country Link
US (1) US8792107B2 (ja)
JP (1) JP5479166B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019175031A (ja) * 2018-03-28 2019-10-10 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びプログラム

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6089558B2 (ja) * 2012-03-07 2017-03-08 ブラザー工業株式会社 ドライバ管理プログラム、アンインストールプログラム、及び、情報処理装置
US9113053B2 (en) * 2012-08-10 2015-08-18 Lg Electronics Inc. Input apparatus and method for acquiring a scan image
WO2015157717A2 (en) * 2014-04-11 2015-10-15 Lutron Electronics Co., Inc. Digital messages in a load control system
JP7255209B2 (ja) * 2019-01-31 2023-04-11 ブラザー工業株式会社 サポートプログラム、情報処理装置、および印刷方法
JP2022138929A (ja) * 2021-03-11 2022-09-26 シャープ株式会社 インストールプログラム及びインストール方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001236298A (ja) * 2000-02-22 2001-08-31 Minolta Co Ltd データ処理装置,印刷システム及びそれらのドライバソフト設定制御方法
JP2004287764A (ja) * 2003-03-20 2004-10-14 Konica Minolta Business Technologies Inc プリンタドライバのアンインストール方法、プログラム、およびアンインストーラ
JP2005275664A (ja) * 2004-03-24 2005-10-06 Fuji Xerox Co Ltd アンインストールシステム
JP2011180681A (ja) * 2010-02-26 2011-09-15 Sharp Corp インストーラ及びプリンタドライバのインストール方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001092642A (ja) 1999-09-27 2001-04-06 Fujitsu Ltd 情報処理装置および記録媒体
JP4324060B2 (ja) * 2004-09-03 2009-09-02 キヤノン株式会社 文書管理システム及びその方法と文書管理装置及び当該装置の制御方法
JP4865299B2 (ja) * 2005-11-02 2012-02-01 キヤノン株式会社 情報処理装置及び情報処理方法及びそのプログラム
US8363234B2 (en) * 2007-05-17 2013-01-29 Canon Kabushiki Kaisha Information processing apparatus, method, and program product with operation for editing template designating printer functions
JP5278047B2 (ja) * 2009-03-04 2013-09-04 株式会社リコー 情報処理装置とプログラムとコンピュータ読み取り可能な記録媒体

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001236298A (ja) * 2000-02-22 2001-08-31 Minolta Co Ltd データ処理装置,印刷システム及びそれらのドライバソフト設定制御方法
JP2004287764A (ja) * 2003-03-20 2004-10-14 Konica Minolta Business Technologies Inc プリンタドライバのアンインストール方法、プログラム、およびアンインストーラ
JP2005275664A (ja) * 2004-03-24 2005-10-06 Fuji Xerox Co Ltd アンインストールシステム
JP2011180681A (ja) * 2010-02-26 2011-09-15 Sharp Corp インストーラ及びプリンタドライバのインストール方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019175031A (ja) * 2018-03-28 2019-10-10 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びプログラム
JP7071189B2 (ja) 2018-03-28 2022-05-18 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びプログラム

Also Published As

Publication number Publication date
US20110222096A1 (en) 2011-09-15
US8792107B2 (en) 2014-07-29
JP5479166B2 (ja) 2014-04-23

Similar Documents

Publication Publication Date Title
JP7086754B2 (ja) 情報処理装置、情報処理装置の制御方法及びコンピュータプログラム
JP5537240B2 (ja) 情報処理装置及びその制御方法
US9218150B2 (en) Image forming apparatus and method thereof
US8482775B2 (en) Handover technique of set values of printer drivers
JP7182934B2 (ja) 画像形成装置、システム、それらの制御方法、及びプログラム
JP5783679B2 (ja) 印刷装置、印刷システム、制御方法、及び、プログラム
JP5479166B2 (ja) 情報処理装置、プリンタドライバのアンインストール方法、プログラム、及び、記録媒体
US9135528B2 (en) Information processing apparatus, job processing method in information processing apparatus, and storage medium
JP4579799B2 (ja) 画像形成装置及びその制御方法、プログラム、画像形成システム
US20140300914A1 (en) Information processing apparatus, method for controlling the same, and recording medium
JP5317817B2 (ja) 情報処理装置、プリンタドライのバインストール方法、及び、プログラム
JP4546356B2 (ja) 画像形成装置及びその制御方法、プログラム、画像形成システム
JP2014203268A (ja) 情報処理装置及び制御方法
JP4981936B2 (ja) インストーラ及びプリンタドライバのインストール方法
JP2007069359A (ja) 画像形成装置及びその制御方法、プログラム、画像形成システム
JP2011060150A (ja) 制御方法、情報処理装置、及びプログラム
US20150355871A1 (en) Information processing apparatus, method for controlling information processing apparatus, and storage medium
JP6326795B2 (ja) 情報処理システム、情報処理装置、情報処理方法及びプログラム
JP4565647B2 (ja) 画像形成装置及びその制御方法、プログラム、画像形成システム
JP2011164713A (ja) 情報処理装置、制御方法、及びプログラム
US20230333786A1 (en) Information processing apparatus, control method therefor, and non-transitory computer-readable storage medium
US20170185358A1 (en) Information processing apparatus and installation control method
US9270853B2 (en) Exporting and importing for display on an image forming apparatus environment setting information of an application
JP2008059484A (ja) 情報処理装置、ドライバ処理方法、記憶媒体、プログラム
JP5791467B2 (ja) 管理装置、管理装置の制御方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130307

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131226

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140114

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140212

LAPS Cancellation because of no payment of annual fees