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

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

Info

Publication number
JP5317817B2
JP5317817B2 JP2009112192A JP2009112192A JP5317817B2 JP 5317817 B2 JP5317817 B2 JP 5317817B2 JP 2009112192 A JP2009112192 A JP 2009112192A JP 2009112192 A JP2009112192 A JP 2009112192A JP 5317817 B2 JP5317817 B2 JP 5317817B2
Authority
JP
Japan
Prior art keywords
printer
printer driver
information
driver
registered
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.)
Expired - Fee Related
Application number
JP2009112192A
Other languages
English (en)
Other versions
JP2010262448A (ja
JP2010262448A5 (ja
Inventor
正幸 佐倉
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 JP2009112192A priority Critical patent/JP5317817B2/ja
Priority to US12/768,622 priority patent/US20100277761A1/en
Publication of JP2010262448A publication Critical patent/JP2010262448A/ja
Publication of JP2010262448A5 publication Critical patent/JP2010262448A5/ja
Application granted granted Critical
Publication of JP5317817B2 publication Critical patent/JP5317817B2/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/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • 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
    • 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
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers

Description

本発明は、プリンタドライバのインストールに関するものである。
従来、プリンタドライバのバージョンアップ等を行う場合、既にインストールされているプリンタドライバのキュー情報、登録情報や設定情報を保持するための方法が提案されている。
特許文献1では、プリンタドライバをバージョンアップインストールする場合、設定がデフォルトに戻ってしまうことを避けるために、予め初期化情報をネットワークに接続されたサーバの記憶領域に保存しておく。そして、この初期化情報をもとに新しいプリンタドライバをインストールする方法が提案されている。なお、初期化情報はフォーマットを予め決めておき、バージョンアップの際、新しいプリンタドライバは、旧バージョンの初期化情報を解釈できるように作成される。
このように、プリンタドライバをバージョンアップする場合、旧バージョンで登録したプリンタの情報(キュー情報)やユーザ環境設定ファイル等を引き継ぐことが可能となる。これにより、ユーザは新しくインストールしたプリンタドライバに対して、プリンタの情報の再登録やユーザ環境の再設定を行う手間を省くことが可能となる。
特開2003−208276号公報
しかし、従来の方法では、以下のような課題がある。
バージョンアップするプリンタドライバは、機能追加/削減や機能変更程度に限られ、全く異なる機能群のプリンタドライバや、異なるページ記述言語への変更は困難である。
例えば、プリンタドライバを個別のプリンタに応じて作成している場合を考える。あるプリンタがステイプル及びパンチが可能な場合、そのプリンタに個別対応するプリンタドライバは、ユーザI/Fにステイプルとパンチの設定が可能なコントロールを持つことになる。
この個別対応プリンタドライバに対し、全く異なるコンセプトを持つプリンタドライバを作成する場合を考える。例えば、どのプリンタにも適用可能な汎用の機能しか持たず、個別対応プリンタドライバとは全く異なる構成のユーザI/Fをもつ汎用プリンタドライバを作成する場合を考える。なお、この汎用プリンタドライバは、個別対応プリンタドライバとは全く異なるバイナリオブシェクとから構成されるソフトウェアとなる。
この場合、汎用プリンタドライバの設定ファイルや関連ファイルは、個別対応プリンタドライバのそれらとは異なり、個別に扱われる。そのため、ユーザが汎用ドライバを使用したい場合、従来例にあるようなバージョンアップの手続きを行うことができない。
ユーザは、一度、個別対応プリンタドライバを削除して新しい汎用プリンタドライバをインストールする必要がある。さらに、汎用プリンタドライバは、新しいプリンタドライバとしてインストールされるため、ユーザはプリンタドライバの環境設定等をはじめからやり直す必要があり、手間がかかるといった問題がある。なお、この例では、汎用プリンタドライバ内に個別対応プリンタドライバの登録情報や設定情報を汎用プリンタドライバ用に変換する仕組みを作成すればよい。しかし、この変換する仕組みの作成自体が、プリンタドライバ提供側の手間となってしまうといった課題がある。
さらに、この例では、汎用プリンタドライバの機能が個別対応プリンタドライバの機能より勝る場合や劣る場合がある。この場合、ユーザは双方の機能を自分で比較して汎用プリンタドライバをインストールするか否かを決定する必要がある。
ユーザが1台のプリンタしか使用していない場合はそれほど手間ではないが、複数台のプリンタを使用している場合、それぞれのプリンタドライバの機能を比較して汎用プリンタドライバをインストールするか否かを決定する必要がある。これは非常に手間がかかる作業である。
また、異なるケースの課題もある。既にインストールされているプリンタドライバと、新たにインストールするプリンタドライバのページ記述言語が異なる場合がある。これは、1つプリンタが複数のページ記述言語をサポートしているケースが該当する。異なるページ記述言語のプリンタドライバは、例えば同一機種に対応するプリンタドライバであっても全く異なるソフトウェアとして扱うことになる。そのため前述したように、ユーザは一度、旧プリンタドライバを削除して、新しい異なるページ記述言語のプリンタドライバをインストールする必要がある。この場合も、前例と同様、異なるページ記述言語のプリンタドライバは新しいプリンタドライバとしてインストールするため、ユーザはプリンタドライバの環境設定などをはじめからやり直す必要があり、手間がかかってしまうという問題がある。
なお、上述の二例とも、新しいプリンタドライバをインストールするときに、古いプリンタドライバは必ずしも削除する必要はない。そのため削除する手間は必須ではないが、新しいプリンタドライバをインストール後、再度プリンタの登録(プリントキューの登録)やプリンタドライバの設定を行う必要があり、かなりの手間が残る。
また、別のケースとして古いプリンタドライバを削除しなくてはならないケースがある。例えばユーザがオペレーティングシステムをバージョンアップして、古いプリンタドライバが動作しなくなる場合である。この場合、古いプリンタドライバはユーザが削除する必要があり、非常に手間がかかってしまう。
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、個別対応プリンタドライバ等がインストールされている装置に、汎用プリンタドライバをインストールする場合でも、プリンタの登録や、プリンタドライバの環境設定を行う手間を省くことができる仕組みを提供することである。
本発明は、印刷システムとしてコモン・ユニックス・プリンティング・システムを用いる情報処理装置であって、既にプリンタドライバがインストールされている前記情報処理装置の記憶手段に、前記プリンタドライバとは異なるバイナリオブジェクトから構成される汎用プリンタドライバのプリンタドライバモジュールを格納する格納手段と、前記印刷システムに既に登録されているプリンタの登録情報を取得するプリンタ登録情報取得手段と、前記プリンタ登録情報取得手段により取得された前記登録情報に基づいて前記既に登録されているプリンタに関連して前記印刷システムに登録されているプリンタ関連情報を前記記憶手段から取得する関連情報取得手段と、前記関連情報取得手段により取得された前記プリンタ関連情報が利用可能か否かを判定する判定手段と、前記判定手段により前記プリンタ関連情報が利用可能と判定された場合、前記既に登録されているプリンタの登録情報に含まれているプリンタキューの情報及び前記プリンタ関連情報を用いて、前記汎用プリンタドライバを使用するプリンタを前記印刷システムに登録する登録手段とを有することを特徴とする。
本発明によれば、個別対応プリンタドライバ等がインストールされている装置に、汎用プリンタドライバをインストールする場合でも、個別対応プリンタドライバの設定情報を引き継ぎ、新しいプリンタドライバを容易にインストールすることができる。これにより、プリンタ情報の登録や、プリンタドライバの環境設定を行う手間を省くことができる。
本発明が適用されるシステムの一例を示す図である。 コンピュータ101のハードウェア構成を示すブロック図である。 プリンタドライバの構成を示すブロック図である。 プリンタドライバのインストール手順を示したフローチャートである。 プリンタドライバを登録する手順を示すフローチャートである。 プリンタ登録ユーザI/Fを示した図である。 プリンタ登録ダイアログを示した図である。 既にプリンタが登録された状態を示すシステムブロック図である。 登録するプリンタの情報が記述されたプリンタ登録情報を示す図である。 プリンタ登録情報を追記するファイルを示した図である。 プリンタ仕様記述ファイルの一例を示した図である。 プリンタ仕様記述ファイルの格納場所とそのファイル名を示した図である。 プリンタ設定ファイルの一例を示す図である。 プリンタ設定ファイルの格納場所とそのファイル名を示した図である。 個別対応プリンタドライバのユーザI/Fを示す図である。 個別対応プリンタドライバのプリンタ仕様記述ファイルを示す図である。 汎用プリンタドライバのユーザI/Fを示す図である。 汎用プリンタドライバのプリンタ仕様記述ファイルを示した図である。 本発明の実施例1のインストール手順を示すフローチャートである。 図19のS1913の処理を詳細に示したフローチャートである。 インストーラにより作成されたプリンタのリストを示す図である。 図16のプリンタ仕様記述ファイルから作成した機能能力テーブルである。 図18のプリンタ仕様記述ファイルから作成した機能能力テーブルである。 個別対応プリンタドライバのプリンタ仕様記述ファイルである。 図24のプリンタ仕様記述ファイルから作成した機能能力テーブルである。 プリンタの削除に関するオプション設定ダイアログの一例を示す図である。 本発明の実施例2のインストール手順を示すフローチャートである。 汎用プリンタドライバのプリンタ仕様記述ファイルである。 プリンタから取得したプリンタが対応するページ記述言語を示す図である。
以下、本発明を実施するための最良の形態について図面を用いて説明する。
まず、図1〜図26を用いて、本発明の実施例1を示す。
[システム構成]
図1は、本発明が適用されるシステムの一例を示す図である。
図1において、104はコンピュータネットワークである。このネットワーク104には、クライアントコンピュータ101(以下、コンピュータ101)とネットワークプリンタ102及び103が接続される。
コンピュータ101には、オペレーティングシステム(OS(印刷システムを含む))、アプリケーション、及び、プリンタドライバ等がインストールされている。このシステムにより、ユーザは、コンピュータ101からユーザデータをプリンタ102或いは103に送信し、印刷することができる。
本実施例では、印刷システムとしてCUPSを用いるOSで動作するコンピュータに、汎用プリンタドライバ(ジェネリックプリンタドライバ)をインストールする例を示す。汎用プリンタドライバは、特定のプリンタ機種に依存せず、広く諸種のプリンタにおいて印刷処理を実行することができる、汎用性を確保したプリンタドライバである。
本実施例のコンピュータ101は、印刷システムとしてCUPSを用いるOSで動作するコンピュータである。即ち、コンピュータ101は、印刷システムとしてCUPSを用いるコンピュータである。
なお、CUPSとは、Common Unix Printing System(コモン・ユニックス・プリンティング・システム)を示す。CUPSは、Mac OS X以降、Linux(登録商標)等の各種UNIX(登録商標)ベースのOSで標準の印刷システムとして採用されているものであり、上記UNIXベースの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には、ユーザがコンピュータを操作するためのキーボード210や不図示のポインティングデバイス(例えばマウス)が接続されている。キーボードコントローラ206は、キーボード210やポインティングデバイスからの入力を制御する。
207はビデオコントローラである。ビデオコントローラ207には、表示装置211が接続されている。ビデオコントローラ207は、表示装置211への出力を制御する。
208は外部記憶装置コントローラである。外部記憶装置コントローラ208には、大容量のデータを保存するための不揮発性の外部記憶装置212(例えば、ハードディスク)が接続されている。外部記憶装置コントローラ208は、外部記憶装置212に対するデータの読み書きを制御する。
209はネットワークI/Fコントローラである。ネットワークI/Fコントローラ209は、ネットワークへの接続を制御する。コンピュータ101は、ネットワークI/Fコントローラ209を用いて、コンピュータネットワーク104に接続された他の機器(102,103)との通信が可能となる。
213は外部メディア装置コントローラである。外部メディア装置コントローラ213には、外部メディア読み取り装置214が接続されている。外部メディア装置コントローラ213は、外部メディア読み取り装置214にセットされた外部メディア(CD−ROMやDVD−ROM)の読み取りを制御する。例えば、アプリケーションやドライバソフトウェア等が外部メディアなどで提供されているとき、ユーザは外部メディア読み取り装置214にCD−ROMなどのメディアをセットし、コンピュータ101にプログラムを読み込ませることができる。
通常、コンピュータ101を起動するための初期プログラムやコンピュータ101の各モジュールを制御するための基本的なプログラムは、ROM205に保存されている。またOS(印刷システムを含む)、アプリケーション、及びプリンタドライバ等は、外部記憶装置212に保存されている。コンピュータ101の電源が投入されると、まずCPU203によりROM205に保存されているコンピュータを起動するためのプログラムが実行される。そして、そのプログラムが(そのプログラムを実行することによりCPU203が)、外部記憶装置に保存されているOSをRAM204にロードし、その後、制御権をOSに渡す。なお、OSを実行することによりCPU203が行う動作を、以降、OSが行う等と表現する。
OSは、必要なモジュールやドライバをさらに外部記憶装置212からRAM204に読み込む。さらに、OSは、ユーザの指示により、必要なアプリケーションを外部記憶装置212からRAM204に読み込み、実行する。
なお、本実施例で説明する。プリンタドライバ及びプリンタドライバのインストーラは、CD−ROM等の外部メディアで供給されるものとする。ユーザは、この外部メディアを外部メディア読み取り装置214にセットする。そして、CPU203が必要に応じてプリンタドライバやインストーラをこの外部メディアからRAM204に読み込んだり、外部記憶装置212に保存したりする。
[プリンタドライバ]
次に、プリンタドライバについて説明する。
図3は、プリンタドライバの構成を示すブロック図である。
プリンタドライバは、図3に示すようなモジュール群で構成されている。
図3に示すように、プリンタドライバ301は、グラフィックレンダリングモジュール302、UI制御モジュール303、プリンタ仕様記述ファイル304、色処理モジュール305、入出力制御モジュール306等のモジュール群で構成される。なお、プリンタドライバの機能によっては、この他のモジュールから構成されることもある。
グラフィックレンダリングモジュール302は、OSの印刷システムから受け取った印刷データをプリンタデバイスが理解できる印刷データ(ページ記述言語;PDL)にレンダリングする。UI制御モジュール303は、プリンタで利用可能な機能(プリンタ仕様情報)を記述したプリンタ仕様記述ファイル304に基づいてプリンタで利用可能な機能を表示したり、ユーザからの設定を受け付ける。色処理モジュール305は、ICCプロファイルに基づく色処理を行う。入出力制御モジュール306は、印刷データをプリンタへ送信する。
このプリンタドライバは、いくつかの作成の仕方がある。例えば、1つプリンタドライバで複数のプリンタを対応するために、グラフィックレンダリングモジュール302、及び、UI制御モジュール303を複数のプリンタに対応できるように作成しておく。また、プリンタ仕様記述ファイルに関しては、対応しているプリンタ分プリンタドライバに同梱しておく、という方法である。このような方法では、UI制御モジュール303は、プリンタ仕様記述ファイル304に合わせてUIを表示制御する。また、グラフィックレンダリングモジュール302は、各プリンタに合わせたページ記述言語およびプリンタ制御コマンドを発行する。
また、別の方法としては、特定の機種に依存せず、広く諸種のプリンタに共通している機能のみに対応したプリンタ仕様記述ファイル304を作成しておき、また、UI制御モジュール303もそのプリンタ仕様記述ファイルに従って動作するというものである。さらに、グラフィックレンダリングモジュール302は、プリンタ仕様記述ファイルに従った、広く諸種のプリンタで印刷可能な汎用的なページ記述言語を生成するというものである。
本実施例では、前者のようなプリンタドライバを個別対応プリンタドライバ(モノリシックプリンタドライバ)、後者のようなプリンタドライバを汎用プリンタドライバ(ジェネリックプリンタドライバ)と呼び説明する。
次に、このような構成のプリンタドライバをコンピュータ101へインストールする手順を説明する。
図4は、プリンタドライバのインストール手順を示したフローチャートである。なお、このフローチャートの処理は、CPU203がプリンタドライバインストーラ(以下、インストーラ)をOS上で実行することにより実現されるものである。ユーザは、プリンタドライバが格納されたCD−ROMを準備するか、ネットワーク経由でインストーラを入手しているものとする。
まず、ユーザがインストーラを起動する操作を行うと、OSは、この操作を検知し、インストーラを起動する(S401)。なお、CPU203がOSを実行することにより実行される動作を、OSを主語として、OSが行う等と表現する。また、CPU203がOS上でインストーラを実行することにより実行される動作を、インストーラを主語として、インストーラが行う等と表現する。
起動されたインストーラは、CD−ROM等からプリンタドライバモジュールを読み出して、外部記憶装置212の所定の場所に格納する(S402)。なお、プリンタドライバモジュールの格納先は、印刷システムによって異なるが、一例として、CUPSでは、"/Library/Printers/"ディレクトリ以下にベンダー毎にプリンタドライバモジュールを格納することになっている。なお、ベンダー毎のディレクトリの下にさらにプリンタドライバの種類に分けて格納することも可能である。例えば、"ABCCompany"というベンダーの"PrinterC PDL1"と"PrinterC PDL2"という異なるプリンタドライバがあるとき、以下のように行う。まず、"PrinterC PDL1"用に"/Library/Printers/ABCCompany/PrinterC PDL1/"というディレクトリを作成する。また、"PrinterC PDL2"用に"/Library/Printers/ABCCompany/PrinterC PDL2/"というディレクトリを作成する。そして、PDL1のプリンタドライバとPDL2のプリンタドライバを、対応するディレクトリ下に格納する。
以上により、プリンタドライバのインストールを完了するが、実際にプリンタへの出力を可能にするためには、ユーザはプリンタドライバを使用してプリンタを印刷システムに登録する必要がある。
図5は、プリンタドライバを登録する手順を示すフローチャートである。この手順に沿って、必要な図を用いながら流れを説明する。なお、このフローチャートの処理は、CPU203がOSを実行することにより実現されるものである。また、CPU203がOSを実行することにより実行される動作を、プリンタドライバを主語として、プリンタドライバが行う等と表現する。
ユーザがプリンタ登録のダイアログを開く操作を行うと、OSは、この操作を検知して、プリンタ登録のダイアログを開く。このステップにおいて、OSは、プリンタ登録のためのプログラムコードを外部記憶装置212からRAM204に読み出して実行する。
図6は、プリンタ登録ユーザI/Fを示した図である。
このダイアログには、現在登録されているプリンタ一覧を表示するための登録プリンタリスト602、登録プリンタリスト602で選択されているプリンタの詳細情報を表示するプリンタ詳細表示領域603がある。
また、604はプリンタを登録するためのボタンである。605は、現在、登録プリンタリスト602で選択されているプリンタを削除するためのボタンである。なお、606はこのダイアログを閉じるためのボタンである。
以下、図5のフローチャートの説明に戻る。
次に、ユーザがプリンタ登録ユーザI/F601のプリンタ追加ボタン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"、またプリンタドライバとして"PrinterC PDL1"を選択している状態である。この状態で、ユーザが追加ボタン706をクリックすると、OSはこの操作を検知し、プリンタ追加処理を行う(図5のS505)。なお、追加を行わないでこのダイアログを閉じるときは、ユーザはダイアログクローズボタン707をクリックする。
以下、図5のフローチャートの説明に戻る。
ステップS505では、OSは、ユーザが上記プリンタ登録ダイアログで指定した情報に基づいてプリンタをシステムに登録する。即ち、OSは、プリンタ登録キュー、プリンタ仕様記述ファイルの印刷システムへの登録を行う。
続いて、ステップS506において、OSは、プリンタ仕様記述ファイルに基づいてデフォルトのプリンタ設定ファイルを作成して、このプリンタ設定ファイルも印刷システムに登録し、処理を終了する。なお、プリンタ設定ファイルとは、プリンタに対するユーザ設定情報を記述するファイルである。なお、上記2つのステップ(S505,S506)について、図8〜図14を使用して詳細な説明を行う。
図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、プリンタ設定ファイル811は、図5のプリンタ登録の過程でOS802が生成するものであり、以下その詳細を説明する。
図5のステップS505において、OS802は、プリンタ登録ダイアログの情報を集め、印刷システムへのプリンタの登録作業を行う。この登録作業は、以下のように実行される。
図9は、登録するプリンタの情報が記述されたプリンタ登録情報を示す図である。なお、このり、このプリンタ登録情報はマークアップ言語で記述されている。
図9において、901はプリンタの識別子であり、プリンタ名とアンダースコアで続けてプリンタのアドレスを記述している。902はプリンタの名前を記述している。903はプリンタの設置場所を記述している。904はプリントキューの記述を行っており、この例ではlpdプロトコルによりアドレス"192.168.1.10"に送信することとなる。905は、このプリンタが使用するプリンタドライバ名を記述している。906は、このプリンタの記述が終了することを示している。
まず、図5のステップS505において、OS802は、図9の記述を作成し、このプリンタのプリンタ登録情報として外部記憶装置212の所定のファイルに追記する。
図10は、プリンタ登録情報を追記するファイルを示した図である。
図10の例では、"/etc/cups/"ディレクトリ1001に格納されている"printer.conf"ファイル1002に追記を行うこととなる。この追記により、登録するプリンタのプリンタ登録情報(プリンタキューの情報を含む)がOS802の印刷システムに登録されることとなる。これがプリンタ登録情報809となる。
続いて、OS802は、プリンタ仕様記述ファイルをシステムに登録する。この登録作業は、以下のように実行される。
図8において、OS802の印刷システムは、プリンタドライバのUI制御モジュール805から登録するプリンタのプリンタ仕様記述ファイルを取得し、システムの所定の箇所に登録する。なお、プリンタ仕様記述ファイルの登録方法を説明する前に、プリンタ仕様記述ファイルの説明を行う。
図11は、プリンタ仕様記述ファイルの一例を示した図である。なお、このプリンタ仕様記述ファイルは、プリンタの仕様記述フォーマットに沿って記述される。以下、フォーマットも踏まえながら説明する。
図11において、1101はコメントを記述している。コメントは行頭が"*%"となっている。1102はベンダー名を記述している。1103はこのプリンタ仕様記述ファイルが対応するプリンタ名を記述している。1104はこのプリンタ仕様記述ファイルが対応しているページ記述言語を記述している。1105はプリンタドライバのバージョンを記述している。このあと、このプリンタの機能仕様が記述されている。機能仕様は、"*OpenUI"の行から"*CloseUI"の行までがひとつの機能となっている。"*OpenUI"のあとには"*"を先頭に付加した機能名、機能名の後には":"で区切り、その機能の選択するさいの種類を示す。この種類には、"PickOne"と"Boolean"があり、"PickOne"は選択肢の中からひとつを選択する機能であることを表している。また、"Boolean"はこの機能がOn/Offで制御されることを表している。
1106では、"*PageSize"という機能があり、この機能は選択肢のなかからひとつを選択するものであることを表している。1106の次の行にはこの機能のデフォルト値を記述する。この行は"*Default"で始まり、この後につづけて前の行で定義した機能名を付加する。この行では、"PageSize"という機能のデフォルトが"A4"であることを示している。次の行から1110の"*CloseUI"のところまではこの機能の選択肢を1行に1選択肢記述する。例えば、1108では、"PageSize"の選択肢のひとつとして"A3"があることを表している。なお、これはページサイズを選択する機能を記述しており、ページサイズは選択肢が多いため途中を省略している。この機能の最後の記述は1110であり、"*CloseUI"の後に"*OpenUI"で記述した機能名を記述する。これで一つの機能が表現されている。次の1111〜1116は、もう一つの機能の記述である。重複する説明は省略するが、このブロックでは、"Duplex"という機能があり、どれかひとつの選択肢を選択するものであり、選択肢は"None"、"Simplex"、"Duplex"から選択することを表している。実際にはこれは両面印刷指定の機能を表現したものであり、"None"は指定しないためプリンタのデフォルト設定に従い、"Simplex"は片面、"Duplex"は両面印刷を意味する。
次に、このプリンタ仕様記述ファイルの登録方法について説明する。OS802は、登録するプリンタに対応するこのプリンタ仕様記述ファイルをUI制御モジュール805から取得し、図12に示すような、システムの所定の場所に格納する。
図12は、プリンタ仕様記述ファイルの格納場所とそのファイル名を示した図である。
図12に示すように、プリンタ仕様記述ファイルの格納場所は、外部記憶装置212の"/etc/cups/ppd/"ディレクトリ1201としている。また、上記格納場所に格納するフプリンタ仕様記述ファイルは、1202〜1204に示すように、ファイル名として登録するプリンタの名前とその後、アンダースコアに続いて登録するプリンタのアドレスを付加したファイル名としている。即ち、登録するプリンタのプリンタ仕様記述ファイルは、登録するプリンタの識別子(図9の901)をファイル名とした拡張子"ppd"のファイルとする。ここで追加したプリンタ仕様記述ファイル810は、1204に示す"PrinterC_192.168.1.10_.ppd"となっている。
このように、登録するプリンタのプリンタ仕様記述ファイルを図12に示すような、システムの所定の場所に格納することにより、登録するプリンタのプリンタ仕様記述ファイルが印刷システムに登録されることとなる。これがプリンタ仕様記述ファイル810となる。
次に、OS802は、図5のステップS506において、プリンタ仕様記述ファイルに基づいてデフォルトのプリンタドライバ設定を記述したファイルを作成し、プリンタ設定ファイル811としてシステムに登録する。
図13は、プリンタ設定ファイルの一例を示す図である。このファイルはマークアップ言語で記載されており、各マークアップのキーにより解釈を行う。
図13において、1301と1308はこの行の間にデフォルト設定が記載されていることを示している。1302〜1304は、PageSizeのデフォルト設定を記述しており、そのデフォルト値は"A4"であることを示している。これは、OSが外部記憶装置212に登録したプリンタ仕様記述ファイル(図11)を解釈し、"*PageSize"の機能記述内容から"*DefaultPageSize"のキーを捜し、1302〜1304の記述に変換することにより実現している。
1305〜1307も同様に、Duplexの機能のデフォルト設定値が"None"であることを記述している。ここで作成したプリンタのデフォルト設定記述は、OS802が図14に示す場所及びファイル名で外部記憶装置212に格納する。
図14は、プリンタ設定ファイルの格納場所とそのファイル名を示した図である。
図14に示すように、プリンタ設定ファイルの格納場所は、外部記憶装置212の"/usr/Libraries/Preferences/"ディレクトリ1401としている。また、上記格納場所に格納するプリンタ設定ファイルは、1402〜1404に示すように、ファイル名としてプリンタの名前とその後、アンダースコアに続いてプリンタのアドレスを付加したファイル名としている。即ち、登録するプリンタのプリンタ設定ファイルは、登録するプリンタの識別子(図9の901)をファイル名とした拡張子"plist"のファイルとする。このように、登録するプリンタのプリンタ設定ファイルを図14に示すような、システムの所定の場所に格納することにより、登録するプリンタのプリンタ設定ファイルが印刷システムに登録されることとなる。これがプリンタ設定ファイル811となる。
このプリンタ設定ファイル811は、ユーザがデフォルト設定を変更したいときに利用する。具体的には、プリンタドライバのユーザI/Fを表示し、ユーザが設定値を変更する。その変更の保存指示があったときに、UI制御モジュール805は、OS802を介して、プリンタ設定ファイル811にアクセスし、該当する機能の設定値を変更する。これにより、ユーザは例えば、あるプリンタでは常に両面設定で使用したい場合、プリンタドライバを介してデフォルトを両面に変更しておく、ということが可能となる。
以上のようにして、OS802は、ユーザが指定したプリンタの印刷システムへの登録を完了する。印刷システムは、プリンタ登録情報809、プリンタ仕様記述ファイル810、プリンタ設定ファイル811を読み込み、登録したプリンタへの印刷処理を実行可能にする。
次に、本実施例で説明に供する2種類のプリンタドライバについて説明する。
図15は、プリンタ固有機能をフルにサポートするように作成されたプリンタドライバ(個別対応プリンタドライバ)のユーザI/Fを示す図である。このプリンタドライバのユーザI/Fは、このプリンタが持っている機能をすべて制御できるように作成されたものである。
例えば、プリント設定ダイアログ1501において、1502〜1504はシステムが共通で提供するコントロールであり、基本機能である部数の設定や用紙サイズの指定が可能となっている。
プリンタ固有の機能は、それ以外の部分で設定が可能となっている。このプリンタの機能が数多くある場合、全ての機能を一度に表示せずに、1505で機能ジャンルを切り替える方法がある。ここでは「仕上げ」に関連する機能を表示している状態を示したものである。
「仕上げ」関連の機能としては、1506の片面/両面指定、1507のステイプル指定、1508の製本印刷指定がある。他にもさまざまな機能があり、それは他のジャンルを1505のコントロールで指定することにより表示切り替えが可能となっている。
図16は、個別対応プリンタドライバのプリンタ仕様記述ファイルを示す図である。このプリンタ仕様記述ファイルは説明に必要な部分のみを示したものである。
図16において、1601〜1605はプリンタに関する情報を記述している。1606〜1610はページサイズ機能の記述である。1611〜1616は両面印刷機能の記述であり、プリンタドライバは、この記述により図15の両面機能のコントロール1506を表示している。1617〜1621はステイプル機能の記述であり、選択肢が多くあるため図16では一部の選択肢の記述をしている。1622〜1626は製本印刷機能の記述である。1627〜1632は画像処理機能の記述であり、この機能の選択肢として、"Profile_1"、"Profile_2"、"Profile_3"があることを示している。ただし、この機能は色処理関連の機能であるため、図15では表示されていない。この機能は1505の機能ジャンルを「色処理」に切り替えることで表示、設定が可能となる。
以下、図17,図18に対応するプリンタドライバは、上記図15,図16に対応するプリンタドライバとは異なる種類のプリンタドライバである。具体的には、図17,図18に対応するプリンタドライバは、図15,図16に対応するプリンタドライバとは別のバイナリオブジェクトを持ち、機能の提供の仕方も異なっている。
図17は、広く諸種のプリンタで汎用的に使用できるように作成されたプリンタドライバ(汎用プリンタドライバ)のユーザI/Fを示す図である。汎用プリンタドライバは、設定できる機能を限定しており、どのようなプリンタ仕様記述ファイルであっても、用紙サイズ、印刷方法、画像処理の機能しか提供しない。そのためプリンタ仕様記述ファイルも1種類しか用意していない。汎用プリンタドライバは広く種々のプリンタに適応しているため、ユーザがプリンタを追加した場合でも、新しいプリンタドライバをインストールせずに、汎用プリンタドライバを用いて今までと同じユーザI/Fで使用できる。また、ベンダー側もプリンタ毎にプリンタドライバを開発する必要がない。このような汎用プリンタドライバを提供することより、ユーザ側とベンダー側の双方が上記のようなメリットを得る。なお、汎用プリンタドライバは、仮にプリンタ仕様記述ファイルが多くの機能が記述されているものであっても、機能として、"*PageSize"、"*Duplex"、"*ImageProcess"のみを解釈してプリンタの登録を行えばよい。
図18は、汎用プリンタドライバのプリンタ仕様記述ファイルを示した図である。
図18において、1801〜1805はプリンタに関する情報を記述している。1806〜1810はページサイズ機能の記述である。1811〜1816は両面印刷機能の記述であり、プリンタドライバはこの記述により図17の両面機能のコントロール1705を表示している。1817〜1822は画像処理機能の記述であり、この機能の選択肢として、"Profile_1"、"Profile_2"、"Profile_3"があることを示している。プリンタドライバはこの記述により画像処理機能のコントロール1706を表示している。
以下、前記個別対応プリンタドライバが既にインストールされている状態で、前記汎用プリンタドライバをインストールして前記個別対応プリンタドライバを前記汎用プリンタドライバに置き換える実施例を説明する。上述のように前記個別対応プリンタドライバと前記汎用プリンタドライバは、機能が大きく異なるため、前記個別対応プリンタドライバと前記汎用プリンタドライバのバイナリオブジェクトは異なる。そのため、これらのプリンタドライバがインストールされるディレクトリも、"/Library/Printers/ベンダー名/"ディレクトリ以下、別々のディレクトリとなる。これは、古いバージョンのプリンタドライバが既にインストールされている状態で、バージョンアップドライバをインストールする通常のプリンタドライバのバージョンアップとは異なるものである。
通常のプリンタドライバのバージョンアップの場合は、バージョンアップドライバを既にインストールされているプリンタドライバのディレクトリに上書きすることによりインストールを行う。この点が、個別対応プリンタドライバの汎用プリンタドライバへの置き換えと、従来の通常のプリンタドライバのバージョンアップとが大きく異なる点である。
[インストール手順]
次に本発明でのプリンタドライバインストール及びプリンタの登録手順を説明する。説明の前提として、既に個別対応のプリンタドライバである"PrinterA PDL1"、"PrinterB PDL1"がコンピュータ101にインストールされているものとする。また、"PrinterA PDL1"を使用するプリンタとして"PrinterA"、"PrinterB PDL1"を使用するプリンタとして"PrinterB"がそれぞれ登録されているものとする。このコンピュータ101に対して、図17及び図18で説明した汎用プリンタドライバをインストールする場合について説明する。
図19及び図20は、本発明の実施例1のインストール手順を示すフローチャートである。また、図21〜図26を合わせてこの手順を説明する。なお、図20のフローチャートは、図19のS1913で示されるステップの詳細を示すものである。
ユーザはCD−ROM等の記憶媒体に保存されている、汎用プリンタドライバのインストーラを起動するように操作する。この操作を検知して、CPU203は、インストーラプログラムをRAM204にロードし、そのプログラムをOS上で実行する。なお、CPU203がOS上でインストーラを実行することにより実行される動作を、インストーラを主語として、インストーラが行う等と表現する。
インストーラは、ステップS1900において、CD−ROM等の記憶媒体から汎用プリンタドライバのプリンタドライバモジュールを読み出して、外部記憶装置212の所定の場所に格納する(プリンタドライバをインストールする)。"ABCCompany"というベンダーの"PDL1 Generic"というプリンタドライバの場合、"/Library/Printers/ABCCompany/PDL1 Generic/"ディレクトリにプリンタドライバモジュールを格納する。
次に、ステップS1901において、インストーラは、既に印刷システムに登録されているプリンタを検索して、リストを作成する。具体的には、インストーラは、外部記憶装置212の"/etc/cups/"ディレクトリ1001に格納されている"printer.conf"1002をRAM204に読み込む。さらに、インストーラは、読み込んだ"printer.conf"1002から"<Printer"で始まるキーワードを検索し、その行からプリンタ名を抽出する。例えば、図9の"printer.conf"では、901の行が"<Printer"で始まっているので、この行からプリンタ名、具体的には"<Printer"の後に続く文字列からアンダースコアで挟まれるIPアドレスを削除する手順で抽出できる。図9の例では"PrinterC"となる。これを"printer.conf"1002のすべてに適用して登録されているプリンタをリストする。
図21は、インストーラにより作成されたプリンタのリストを示す図である。
図21に示す例では、2101に示す"PrinterA"、2102に示す"PrinterB"がリストされている。
次に、ステップS1902において、インストーラは、既に登録されているプリンタがあるか否かの判定を行う。そして、上記S1902において、既に登録されているプリンタが存在しない(上記S1901でリストされたプリンタがない)と判定した場合、ステップS1910に処理を進める。ステップS1910では、インストーラは、図5で示した、通常のプリンタの登録処理を実行する。
一方、図21に示すとおり、上記S1902において、既に登録されているプリンタが存在する(上記S1901でリストされたプリンタがある)と判定した場合、ステップS1903に処理を進める。ステップS1903では、インストーラは、プリンタのリスト(図21)から順にひとつずつ選択し、該選択したプリンタ(以下、「登録済みプリンタ」という)のプリンタ仕様記述ファイルからドライバの種類(ベンダー名、及び、ページ記述言語)を抽出する。"PrinterA"が上記登録済みプリンタの場合、"PrinterA"のプリンタ仕様記述ファイル(/etc/cups/ppd/に格納されているPrinterA_192.168.1.3_.ppd)からドライバの種類を抽出する。ここで、"PrinterA"のプリンタ仕様記述ファイルの例(図16)を用いて、ドライバの種類(ベンダー名、及び、ページ記述言語)の抽出を具体的に説明する。
まず、ベンダー名は"*Manufacturer"から抽出する。つまり1602からベンダー名がABC Companyであることがわかる。また、ページ記述言語は"*PrinterLanguage"から抽出する。つまり1604からページ記述言語は"PDL1"であることがわかる。
次に、ステップS1904において、インストーラは、上記登録済みプリンタが使用するプリンタドライバが自社製品であるか、上記S1903で抽出したベンダー名から判定する。そして、上記S1904において、上記登録済みプリンタが使用するプリンタドライバが自社製品であると判断した場合、ステップS1905に処理を進める。上記"PrinterA"の例では、"ABC Company"というベンダー名であるため(自社は"ABC Company"とする)、自社製であると判断し、ステップS1905に処理を進める。
一方、上記S1904において、上記登録済みプリンタが使用するプリンタドライバが自社製品でないと判断した場合、S1914に処理を進める。
ステップS1905では、インストーラは、上記登録済みプリンタが使用するプリンタドライバのページ記述言語は、上記S1900でインストールした汎用プリンタドライバ(以下、単に「汎用プリンタドライバ」)のページ記述言語と同じであるか判定する。そして、上記S1905において、ページ記述言語が同じであると判定した場合には、インストーラは、ステップS1906に処理を進める。例えば、上記汎用プリンタドライバのページ記述言語は、図18の例では1804の"*PrinterLanguage"から"PDL1"とわかる。また、上記登録済みプリンタが使用するプリンタドライバのページ記述言語は、図16の例では1604の"*PrinterLanguage"から"PDL1"であることがわかる。この場合、ページ記述言語が同じであるので、ステップS1906に処理を進める。
一方、上記S1905において、ページ記述言語が同じでないと判定した場合には、インストーラは、ステップS1914に処理を進める。
ステップS1906では、インストーラは、上記登録済みプリンタのプリンタ仕様記述ファイルから機能能力テーブルを作成する。このプリンタ仕様記述ファイルから機能能力テーブルを作成するには、各プリンタ機能のキーワードと、その機能の選択肢キーワードのテーブルを作成することにより行う。上記登録済みプリンタのプリンタ仕様記述ファイルの例を図16として説明する。
図22は、図16のプリンタ仕様記述ファイルから作成した機能能力テーブルの一例を示す図である。
図22に示すように、機能能力テーブル2201は、機能キーとその値の対のリストから構成される。この機能能力テーブル2201を作成するには、まずプリンタ仕様記述ファイル(図16)の1行目から"*OpenUI"で始まる機能を検索する。
図16のファイルにおいて、1606に"*OpenUI"があるので、この行から機能を表す"*PageSize"を機能キーとする。次に、この機能キーに関する選択し得る値を検索する。この検索は、"*CloseUI"が出現するまで、"*PageSize"で始まる行から値を抽出することで可能となる。具体的には1608にて"*PageSize:A3"とあるので、"PageSize"機能の取りうる値として"A3"があることがわかる。これと同様の処理を繰り返し、ファイルの終端まで検索することにより、図22に示すようなプリンタドライバの機能能力テーブル2201が完成する。
次に、ステップS1907において、インストーラは、自身がこれから登録するプリンタの機能能力テーブルを作成する。これから登録するプリンタのプリンタ仕様記述ファイルの例を図18として説明する。
図23は、図18のプリンタ仕様記述ファイルから作成した機能能力テーブルである。なお、機能能力テーブルの作成方法は図22の機能能力テーブルと同様なため説明を省略する。
次に、ステップS1908において、インストーラは、上記S1906で作成した上記登録済みプリンタの機能能力テーブルと、上記S1907で作成したこれから登録するプリンタの機能能力テーブルとの比較を行う。上記S1908の比較は、これから登録するプリンタの機能能力テーブルが、上記登録済みプリンタの機能能力テーブルを包含しているかどうかについて行う。
次に、ステップS1909において、インストーラは、上記S1908の比較結果に基づいて、これから登録するプリンタの機能能力テーブルが上記登録済みプリンタの機能能力テーブルを包含しているか否かを判定する。そして、上記S1909において、これから登録するプリンタの機能能力テーブルが上記登録済みプリンタの機能能力テーブルを包含していないと判定した場合には、ステップS1911に処理を進める。
本実施例では、登録済みプリンタの機能能力テーブル2201(図22)と、これから登録する汎用プリンタの機能能力テーブル2301(図23)の比較を行い包含関係を判断する。上記の例では、これから登録するプリンタの機能能力テーブル2301は、登録済みプリンタの機能能力テーブル2201を包含していない。具体的には、これから登録する汎用プリンタの機能にはない"*Staple"、"*Booklet"が、登録済みプリンタにあるため、包含していないと判定し、ステップS1911に処理を進める。即ち、インストーラは、S1909でNoと判定した場合、上記登録済みプリンタのプリンタ関連情報(プリンタ仕様記述ファイル及びプリンタ設定ファイル)が利用可能であると判定し、ステップS1911に処理を進める。
次に、ステップS1911では、インストーラは、上記登録済みプリンタの登録情報に含まれているプリンタキューの情報、及び、上記登録済みプリンタのプリンタ仕様記述ファイル及びプリンタ設定ファイルを用いて、上記汎用プリンタドライバを使用するプリンタを印刷システムに登録する。
なお、上記登録済みプリンタの登録情報に含まれているプリンタキューの情報は、該プリンタのプリンタ登録情報内の"DeviceURI"(例えば図9の904)に登録されている。また、上記登録済みプリンタのプリンタ仕様記述ファイルは、上記登録済みプリンタの識別子をファイル名としたppdファイルで、外部記憶装置212の"/etc/cups/ppd/"ディレクトリに格納されている。また、上記登録済みプリンタのプリンタ設定ファイルは、上記登録済みプリンタの識別子をファイル名としたplistファイルで、外部記憶装置212の"/usr/Libraries/Preferences/"ディレクトリに格納されている。
よって、インストーラは、登録するプリンタの識別子、名前、プリンタキューの情報に、上記登録済みプリンタの識別子、名前を用い、登録するプリンタの使用するプリンタドライバ名に、上記汎用プリンタドライバの名前を用いたプリンタ登録情報を生成する。そして、該プリンタ登録情報を、外部記憶装置212の"/etc/cups/"ディレクトリ1001に格納されている"printer.conf"1002に登録する(上書きする)。上述したように、登録されたプリンタのプリンタ仕様記述ファイル及びプリンタ設定ファイルは、プリンタの識別子により決定される。そのため、上記S1911で登録されるプリンタのプリンタ仕様記述ファイル及びプリンタ設定ファイルは、登録済みプリンタのものを使用することとなる。よって、S1911で登録されるプリンタは、プリンタドライバオブジェクト自体は汎用プリンタドライバのものだが、プリンタキュー、プリンタ仕様記述ファイル、及びプリンタ設定ファイルは、上記登録済みプリンタのものを使用するプリンタとして登録される。
なお、プリンタ仕様記述ファイル及びプリンタ設定ファイルは汎用フォーマットであるため、上記汎用プリンタドライバモジュールが解釈できない機能は無視され、上記汎用プリンタドライバモジュールで問題なく使用可能である。このような登録手順により、インストールする汎用プリンタドライバの機能が高くない場合、自動的に個別対応プリンタドライバの機能と設定保存が使用されて登録される。このため、インストールする汎用プリンタドライバに以前の設定が適用されることになり、プリンタ情報(プリントキュー等)の登録や、プリンタドライバの環境設定を行う手間を省くことができる。上記S1911の登録処理が終了すると、ステップS1913に処理を進める。
一方、上記S1909において、これから登録するプリンタの機能能力テーブルが上記登録済みプリンタの機能能力テーブルを包含していると判定した場合には、ステップS1912に処理を進める。即ち、インストーラは、S1909でYesと判定した場合、上記登録済みプリンタのプリンタ関連情報(プリンタ仕様記述ファイル及びプリンタ設定ファイル)が利用不可能であると判定し、ステップS1912に処理を進める。
ここでは、一例として、上記登録済みプリンタのプリンタ仕様記述ファイルを図24とし、図24のプリンタ記述ファイルから作成された登録済みプリンタの機能能力テーブルを図25として説明する。
図24は、個別対応プリンタドライバのプリンタ仕様記述ファイルの一例を示す図である。図25は、図24のプリンタ仕様記述ファイルから作成した機能能力テーブルの一例を示す図である。なお、機能能力テーブルの作成方法については上述したものと同様であるので説明は省略する。
そして、上記登録済みプリンタの機能能力テーブル2501(図25)と、これから登録する汎用プリンタの機能能力テーブル2301(図23)の比較を行い包含関係を判断する。この例では、これから登録する汎用プリンタの機能能力テーブル2301は、登録済みプリンタの機能能力テーブル2501を包含している。具体的には、登録済みプリンタの機能が全てこれから登録する汎用プリンタの機能にあるため、包含していると判定し、ステップS1912に処理を進める。
ステップS1912では、インストーラは、上記登録済みプリンタの登録情報に含まれているプリンタキューの情報、及び、上記汎用プリンタドライバのプリンタ仕様記述ファイル、及び、上記登録済みプリンタのプリンタ設定ファイルを用いて、上記汎用プリンタドライバを使用するプリンタを印刷システムに登録する。
よって、登録するプリンタの識別子、名前、及びプリンタキューの情報に、上記登録済みプリンタの識別子、名前を用い、さらに、登録するプリンタの使用するプリンタドライバ名に、上記汎用プリンタドライバの名前を用いたプリンタ登録情報を生成する。そして、該プリンタ登録情報を、外部記憶装置212の"/etc/cups/"ディレクトリ1001に格納されている"printer.conf"1002に登録する(上書きする)。さらに、上記汎用プリンタのプリンタ仕様記述ファイルを"/etc/cups/ppd/"ディレクトリ1201に、上記登録済みプリンタの識別子をファイル名(例えば"PrinterB_192.168.1.5_.ppd")として上書きする。なお、プリンタのプリンタ設定ファイルは特に変更しない。
上述したように、登録されたプリンタのプリンタ仕様記述ファイル及びプリンタ設定ファイルは、プリンタの識別子により決定される。そのため、上記S1912で登録されるプリンタのプリンタ仕様記述ファイルは、上記汎用プリンタドライバのものを使用することとなる。また、上記S1912で登録されるプリンタのプリンタ設定ファイルは、登録済みプリンタのものを使用することとなる。よって、上記S1912で登録されるプリンタは、プリンタドライバモジュールとプリンタ仕様記述ファイルは、上記汎用プリンタドライバのものだが、プリンタキュー及びプリンタ設定ファイルは上記登録済みプリンタのものを使用するプリンタとして登録される。
このようにして、汎用プリンタのプリンタ機能能力が高いと判定された場合、プリンタ機能としては新しい機能、ユーザ設定は登録済みプリンタのプリンタ設定ファイルを使用することになる。
このような登録手順により、インストールする汎用プリンタドライバの機能が高い場合、自動的にそのプリンタ機能が使用され、設定保存は既にインストールされている個別対応プリンタドライバものが使用されて登録される。このため、インストールする汎用プリンタドライバに以前の設定が適用されることになる。よって、プリンタ情報(プリントキュー等)の登録や、プリンタドライバの環境設定を行う手間を省くことができる。上記S1912の登録処理が終了すると、ステップS1913に処理を進める。
なお、上記S1911及びS1912では、登録するプリンタの名前に、上記登録済みプリンタのプリンタ登録情報内の名前を用い、プリンタ登録情報を上書きした。しかし、登録するプリンタの名前に、上記登録済みプリンタのプリンタ登録情報内の名前とは異なる名前を用いて、新たなプリンタ登録情報を"printer.conf"に追記してもよい。
次に、ステップS1913において、インストーラは、上記登録済みプリンタと上記登録済みプリンタが使用するプリンタドライバの削除処理を行う。図20はS1913の処理を詳細に示したものであり、図20に沿って説明する。
インストーラは、起動後、図19の処理を開始する前に、図26に示すダイアログを表示して、プリンタの削除に関するオプションの設定操作を受け付ける。
図26は、インストーラが表示するプリンタの削除に関するオプションを設定するためのダイアログの一例を示す図である。
図26に示すように、このダイアログ2601では、2602,2603,2604の3つのオプションがある。まず、2602は、新しいプリンタドライバをインストールしたあと、古いプリンタを削除することを指定するオプションである。また、2603は、古いプリンタが現在のOSで動作しない場合、その古いプリンタを自動的に削除することを指定するオプションである。また、2604は、古いプリンタドライバを削除しないことを指定するオプションである。そして、ユーザが、上記いずれかのオプションを選択した後、次へボタン2606を指示すると、インストーラは、この操作を検知し、上記選択されたオプションの情報を、RAM204に記憶して、図19のフローチャートの処理を開始する。なお、ユーザがキャンセルボタン2605を指示すると、インストーラは、この操作を検知し、インストール処理を実行せず、そのまま処理を終了する。
以下、図20のフローチャートの説明を行う。
ステップS2001において、インストーラは、インストールオプション指定ダイアログ2601(図26)で指定したオプションの選択肢(オプションの指定結果)をRAM204から取得する。
次に、ステップS2002において、インストーラは、上記S2001で取得したオプションの指定結果に応じて処理を切り換える。削除しないオプション(2604)が指定されていると判定した場合には、インストーラは、プリンタドライバの削除は行わず、そのまま図20の処理を終了させ、図19のフローチャートに処理を戻す。
また、削除するオプション(2602)が指定されていると判定した場合には、インストーラは、ステップS2006に処理を進める。ステップS2006では、インストーラは、図19のS1902で選択された既に登録されているプリンタに対応してインストールされているプリンタドライバのモジュールを削除する。そして、図20の処理を終了させ、図19のステップS1914に処理を進める。
また、自動オプション(2603)が指定されていると判定した場合には、インストーラは、ステップS2003に処理を進める。ステップS2003では、インストーラは、図19のS1902で選択された登録済みプリンタが使用していたプリンタドライバのドライババージョンを該プリンタドライバのプリンタ仕様記述ファイルから取得する。なお、図19のS1902で選択された登録済みプリンタが使用していたプリンタドライバを、以下、「既にインストールされていたプリンタドライバ」という。具体的には、例えば、上記既にインストールされていたプリンタドライバのプリンタ仕様記述ファイルが図16である場合、1605の"*DriverVersion"から"PDL 1.00"の値を取得する。
次に、ステップS2004において、インストーラは、上記S2003で取得したバージョンから、上記既にインストールされていたプリンタドライバが現在のOS802で動作するか否かの判定を行う。この判定処理は、インストーラ自身がプリンタドライバのバージョンと動作するOSのバージョンの情報を保持し、この情報を用いて判定を行う。
次に、ステップS2005において、インストーラは、上記S2004の判定の結果に基づいて上記既にインストールされていたプリンタドライバを削除するか否かを削除判定する。そして、上記既にインストールされていたプリンタドライバが現在のOSで動作するバージョンであれば、該プリンタドライバは削除しないと判定し、そのまま図20の処理を終了させる。そして、図19のステップS1914に処理を進める。
一方、上記S2005において、インストーラは、上記S2004の判定の結果、上記既にインストールされていたプリンタドライバが現在のOSで動作しないバージョンであれば、該プリンタドライバを削除すると判定する。そして、ステップS2006に処理を進める。そして、ステップS2006にて、インストーラは、上記既にインストールされていたプリンタドライバのモジュールを削除する。そして、図20の処理を終了させ、図19のステップS1914に処理を進める。なお、上記S2006において、削除しようとするプリンタドライバが、既に削除済みの場合には、そのまま図20の処理を終了させ、図19のステップS1914に処理を進めるものとする。
なお、上記S1911及びS1912で登録したプリンタの名前に、上記登録済みプリンタの名前とは異なる名前を用いた場合、上記S2006では、上記登録済みプリンタのプリンタ登録情報も"printer.conf"から削除する。
図20の処理により、既にインストールされていたプリンタドライバの削除や、既に登録されていたプリンタの削除の手間を省くことができる。
次に、図19のステップS1914では、インストーラは、上記S1901で作成したリストの全てのプリンタについて確認したか(上記S1903〜S1913の処理を終了したか)を判定する。そして、上記1914において、まだ全てのプリンタについて確認していないと判定した場合には、インストーラは、ステップS1903に処理を戻し、リストの次のプリンタに処理を移す。
一方、上記1914において、既に全てのプリンタについて確認したと判定した場合には、インストーラは、図19の処理を終了する。
以上のようにして、既に個別対応プリンタドライバがインストールされているコンピュータ101に対して、汎用ブリンタドライバをインストールする際に、以下のような効果を有する。ユーザは既にインストールされている個別対応プリンタドライバを削除して新たに汎用プリンタドライバをインストールして、デフォルト設定を行うといった煩雑なインストール操作を行うことなく、汎用プリンタドライバを自動的にインストールすることが可能となる。なお、個別対応プリンタドライバで設定していたデフォルト設定も汎用プリンタドライバに自動的に引き継ぐことが可能となる。よって、個別対応プリンタドライバ等がインストールされている装置に、汎用プリンタドライバをインストールする場合、プリンタ情報(プリントキュー等)の登録や、プリンタドライバの環境設定を行う手間を省くことができる。
以下、実施例2を説明する。この実施例では、図1〜図3、図6〜図18、図24、図27〜図29を用いて説明する。なお、図24までは実施例1の内容と同様のため説明は省略し、以下、図27〜図29について説明する。
[インストール手順]
図27は、本発明の実施例2のインストール手順を示すフローチャートであり、この図に沿って説明する。なお、S2700〜S2705は図19のS1900〜S1905、S2709,S2710,S2711は図19のS1910,S1913,S1914と同様のステップであるため説明は省略し、以下、S2706〜S2708について詳細な説明を行う。なお、図27においても、図19と同様に、S2700でインストールした汎用プリンタドライバを単に「汎用プリンタドライバ」といい、S2703で選択された既に登録されているプリンタを、「登録済みプリンタ」という。
なお、一例として、上記登録済みプリンタのプリンタ仕様記述ファイルを図24、これからインストールする汎用プリンタのプリンタ仕様記述ファイルを図28として説明する。図28は、汎用プリンタドライバのプリンタ仕様記述ファイルの一例を示した図である。
ステップS2705にて、インストーラは、上記登録済みプリンタが使用するプリンタドライバのページ記述言語が、上記汎用プリンタドライバのページ記述言語と同じである場合、ステップS2708に処理を進める。
一方、上記S2705にて、インストーラは、上記登録済みプリンタが使用するプリンタドライバのページ記述言語が上記汎用プリンタドライバのページ記述言語と同じでない場合、ステップS2706に処理を進める。
例えば、上記登録済みプリンタが使用するプリンタドライバのページ記述言語は、図24の例では2404の"*PrinterLanguage"から"PDL1"であることがわかる。また、上記汎用プリンタドライバのページ記述言語は、図28の例では2804の"*PrinterLanguage"から"PDL2"とわかる。"PDL1"と"PDL2"は異なるページ記述言語であるため、通常、上記汎用プリンタドライバを、上記登録済みプリンタが使用するプリンタドライバの代わりにはできない。ただし、プリンタによっては複数種類のページ記述言語を処理可能なものがある。例えば、プリンタが、"PDL1"と"PDL2"という2種類のページ記述言語をサポート(使用可能と)しており、上記登録済みプリンタが"PDL1"のプリンタドライバを使用しているとする。その場合、上記汎用プリンタドライバのページ記述言語が"PDL2"であっても、プリンタが解釈可能なため、上記汎用プリンタドライバを使用するように上記プリンタを登録しても動作上問題はない。
そのため、ステップS2706において、インストーラは、上記登録済みプリンタから該プリンタが使用可能な(サポートしている)ページ記述言語を取得する。
図29は、プリンタから取得したプリンタが対応するページ記述言語の一例を示す図である。図29に示すように、このプリンタは、"PDL1"及び"PDL2"をサポートしている。
次に、ステップS2707において、インストーラは、上記S2706でプリンタから取得したページ記述言語に、自身のプリンタドライバ(上記汎用プリンタドライバ)が使用しているページ記述言語があるか判定を行う。そして、上記S2707において、プリンタから取得したページ記述言語に、自身のプリンタドライバが使用しているページ記述言語があると判定した場合、ステップS2708に処理を進める。上述の例では、上記汎用プリンタドライバのページ記述言語は"PDL2"であり、プリンタが対応しているページ記述言語は、図29に示すように、"PDL1"及び"PDL2"であった。よって、インストーラは、自身のプリンタドライバが使用可能であると判断し、ステップS2708に処理を進める。即ち、インストーラは、S2705でYes又はS2707でリストにあると判定した場合、上記登録済みプリンタのプリンタ関連情報(プリンタ仕様記述ファイル及びプリンタ設定ファイル)が利用可能であると判定する。そして、ステップS2708に処理を進める。
ステップS2708では、図19のステップS1911と同様に、上記登録済みプリンタの登録情報に含まれているプリンタキューの情報、及び、上記登録済みプリンタのプリンタ仕様記述ファイル及びプリンタ設定ファイルを用いて、上記汎用プリンタドライバを使用するプリンタを印刷システムに登録する。そして、ステップS2710に処理を進める。
一方、上記S2707において、プリンタから取得したページ記述言語に、自身のプリンタドライバが使用しているページ記述言語がなかったと判定した場合、インストーラは、プリンタの登録を行わず、そのままステップS2711に処理を進める。
なお、上記S2708において、実施例1の図19のS1906〜S1909の手順により、プリンタの能力を判定して使用するプリンタ仕様記述ファイルやプリンタ設定ファイルを決定するように構成してもよい。
以上より、個別対応プリンタドライバと汎用プリンタドライバとでページ記述言語が異なる場合でも、上記個別対応プリンタドライバを使用する登録済みのプリンタを削除して上記汎用プリンタドライバを使用するプリンタを登録する煩雑な操作が不要となる。上記個別対応プリンタドライバの設定情報も引き継いで、上記汎用プリンタドライバを使用するプリンタを自動的に登録できる。
なお、図27では、インストーラが新たなプリンタドライバをインストールする前に、既に装置にインストールされているプリンタドライバを個別対応プリンタドライバとし、新たなプリンタドライバを汎用プリンタドライバとして説明した。しかし、既に装置にインストールされているプリンタドライバと新たなプリンタドライバは、同一のプリンタ装置に対応し、ページ記述言語が異なるプリンタドラバであればよく、個別対応プリンタドライバと汎用プリンタドライバである必要はない。
よって、既にプリンタドライバがインストールされている装置に、該プリンタドライバとは異なるページ記述言語のプリンタドライバをインストールする場合、プリンタ情報(プリントキュー等)の登録や、環境設定を行う手間を省くことができる。
図19では、上記汎用プリンタドライバのプリンタ仕様記述ファイルが示す機能が、上記登録済みプリンタのプリンタ仕様記述ファイルが示す機能を包含していない場合、上記登録済みプリンタのプリンタ仕様記述ファイル及びプリンタ設定ファイルを使用した。しかし、上記汎用プリンタドライバのプリンタ仕様記述ファイルが示す機能と、上記登録済みプリンタのプリンタ仕様記述ファイルが示す機能との間に包含関係がない場合、以下のようにプリンタの登録処理を行ってもよい。即ち、上記汎用プリンタドライバのプリンタ仕様記述ファイル及びプリンタ設定ファイルと、上記登録済みプリンタのプリンタ仕様記述ファイル及びプリンタ設定ファイルとを合成して新たなプリンタ仕様記述ファイル及びプリンタ設定ファイルを生成する。この際、上記登録済みプリンタのプリンタ仕様記述ファイルに含まれる機能については、上記登録済みプリンタのプリンタ設定ファイルの値を使用するようにプリンタ設定ファイルを生成する。そして、該生成したプリンタ仕様記述ファイル及びプリンタ設定ファイルを利用して、上記汎用プリンタドライバを使用するプリンタの設定を行うように制御する。
なお、本実施例では、印刷システムとしてCUPSを用いて説明したが、本発明は、CUPSのみに限定されるものではない。
CUPSに限らず、他の印刷システムでも、一般に、プリンタドライバは、プリンタドライバモジュールとして、プリンタグラフィックドライバ、プリンタインターフェイスドライバ、特性データファイル等から構成される。さらに、プリンタに対するユーザの設定情報も印刷システムに登録されている。これは、Windows(登録商標)の印刷システムに対応するプリンタドライバであっても同様である。なお、上記プリンタグラフィックドライバは、グラフィックレンダリングモジュール803に対応する。また、上記プリンタインターフェイスドライバは、UI制御モジュール805に対応する。また、上記特性データファイルは、プリンタ仕様記述ファイル806に対応する。また、上記設定情報は、プリンタ設定ファイル811に対応する。
よって、詳細な登録手順は異なるものの、CUPS以外の印刷システム(Windows(登録商標)の印刷システム)であっても、本実施例に示したCUPSの場合と同様に、汎用プリンタドライバのインストールを行うことが可能である。即ち、インストーラは、印刷システムに既に登録されているプリンタのプリンタ登録情報を検索する。また、インストーラは、該検索されたプリンタ登録情報に関連して印刷システムに登録されているプリンタ関連情報(プリンタ仕様記述ファイル及びプリンタ設定ファイル)が利用可能か否かを判定する。利用可能と判定された場合、インストーラは、前記既に登録されているプリンタの登録情報に含まれているプリンタキューの情報及び前記プリンタ関連情報を用いて、汎用プリンタドライバを使用するプリンタを印刷システムに登録することが可能である。
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されることは言うまでもない。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
以上示したように、既に個別対応プリンタドライバをインストール済みのコンピュータ101に、汎用プリンタドライバをインストールする際、ユーザの設定等を維持した状態で、汎用プリンタドライバを容易に(自動で)インストールすることができる。したがって、プリンタ情報(プリントキュー等)の登録や、プリンタドライバの環境設定を行う手間を省くことができる。
以下、本発明に係る情報処理装置で読み取り可能な(コンピュータ読取り可能な)各種データ処理プログラムを格納する記憶媒体(記録媒体)について説明する。
本発明の各工程(上述した各機能)は、ネットワーク又は各種記憶媒体を介して取得したソフトウェア(プログラム)をパーソナルコンピュータ等の処理装置(CPU,プロセッサ)にて実行することでも実現できる。
また、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器からなる装置に適用してもよい。また、本発明は、システム或いは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体を該システム或いは装置に読み出すことによって、そのシステム或いは装置が、本発明の効果を享受することが可能となる。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形(各実施例の有機的な組合せを含む)が可能であり、それらを本発明の範囲から除外するものではない。
本発明の様々な例と実施例を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるのではない。
なお、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
101 コンピュータ
203 CPU
203 RAM
212 外部記憶装置
802 オペレーティングシステム

Claims (11)

  1. 印刷システムとしてコモン・ユニックス・プリンティング・システムを用いる情報処理装置であって、
    既にプリンタドライバがインストールされている前記情報処理装置の記憶手段に、前記プリンタドライバとは異なるバイナリオブジェクトから構成される汎用プリンタドライバのプリンタドライバモジュールを格納する格納手段と、
    前記印刷システムに既に登録されているプリンタの登録情報を検索する検索手段と、
    前記検索手段により検索された前記登録情報に関連して前記印刷システムに登録されているプリンタ関連情報が利用可能か否かを判定する判定手段と、
    前記判定手段により前記プリンタ関連情報が利用可能と判定された場合、前記既に登録されているプリンタの登録情報に含まれているプリンタキューの情報及び前記プリンタ関連情報を用いて、前記汎用プリンタドライバを使用するプリンタを前記印刷システムに登録する登録手段と、
    を有することを特徴とする情報処理装置。
  2. 前記プリンタ関連情報は、プリンタで利用可能な機能を示すプリンタ仕様情報、及び、プリンタに対するユーザの設定情報を示すユーザ設定情報を含むことを特徴とする請求項1に記載の情報処理装置。
  3. 前記登録手段は、前記判定手段により前記プリンタ関連情報が利用不可能と判定された場合、前記既に登録されているプリンタの登録情報に含まれているプリンタキューの情報、前記汎用プリンタドライバのプリンタドライバモジュールに含まれるプリンタ仕様情報、及び、前記プリンタ関連情報に含まれるユーザ設定情報を用いて、前記汎用プリンタドライバを使用するプリンタを前記印刷システムに登録することを特徴とする請求項2に記載の情報処理装置。
  4. 前記判定手段は、前記印刷システムに既に登録されているプリンタのプリンタ仕様情報と、前記汎用プリンタドライバのプリンタドライバモジュールに含まれる前記汎用プリンタドライバのプリンタ仕様情報とを比較して、前記既に登録されているプリンタのプリンタ仕様情報が示す機能が、前記汎用プリンタドライバのプリンタ仕様情報が示す機能を包含する場合、前記プリンタ関連情報が利用可能であると判定することを特徴とする請求項2又は3に記載の情報処理装置。
  5. 前記判定手段は、前記既に登録されているプリンタが使用するプリンタドライバのページ記述言語が、前記汎用プリンタドライバのページ記述言語と等しい場合、前記プリンタ関連情報が利用可能であると判定することを特徴とする請求項1又は2に記載の情報処理装置。
  6. 前記判定手段は、前記既に登録されているプリンタに使用可能なページ記述言語に、前記汎用プリンタドライバのページ記述言語が含まれている場合、前記プリンタ関連情報が利用可能であると判定することを特徴とする請求項1、2、又は5記載の情報処理装置。
  7. 前記判定手段は、前記既に登録されているプリンタと通信して該プリンタに使用可能なページ記述言語の情報を取得することを特徴とする請求項6に記載の情報処理装置。
  8. 前記既に登録されているプリンタが使用するプリンタドライバを削除すべきか否かを判定する削除判定手段と、
    前記削除判定手段が、前記既に登録されているプリンタが使用するプリンタドライバを削除すべきと判定した場合、前記既に登録されているプリンタの関連情報は削除することなく、前記既に登録されているプリンタが使用するプリンタドライバのプリンタドライバモジュールを削除する削除手段と、
    を有することを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. 前記削除判定手段は、前記既に登録されているプリンタが使用するプリンタドライバが前記情報処理装置が利用しているオペレーティングシステムのバージョンをサポートしていない場合、前記既に登録されているプリンタが使用するプリンタドライバを削除すべきと判定することを特徴とする請求項8に記載の情報処理装置。
  10. 印刷システムとしてコモン・ユニックス・プリンティング・システムを用いる情報処理装置におけるプリンタドライバのインストール方法であって、
    格納手段が、既にプリンタドライバがインストールされている前記情報処理装置の記憶手段に、前記プリンタドライバとは異なるバイナリオブジェクトから構成される汎用プリンタドライバのプリンタドライバモジュールを格納する格納ステップと、
    検索手段が、前記印刷システムに既に登録されているプリンタの登録情報を検索する検索ステップと、
    判定手段が、前記検索手段により検索された前記登録情報に関連して前記印刷システムに登録されているプリンタ関連情報が利用可能か否かを判定する判定ステップと、
    登録手段が、前記判定ステップで前記プリンタ関連情報が利用可能と判定された場合、前記既に登録されているプリンタの登録情報に含まれているプリンタキューの情報及び前記プリンタ関連情報を用いて、前記汎用プリンタドライバを使用するプリンタを前記印刷システムに登録する登録ステップと、
    を有することを特徴とするプリンタドライバのインストール方法。
  11. 請求項1乃至9のいずれか1項に記載された情報処理装置の手段としてコンピュータを機能させるためのプログラム。
JP2009112192A 2009-05-01 2009-05-01 情報処理装置、プリンタドライのバインストール方法、及び、プログラム Expired - Fee Related JP5317817B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009112192A JP5317817B2 (ja) 2009-05-01 2009-05-01 情報処理装置、プリンタドライのバインストール方法、及び、プログラム
US12/768,622 US20100277761A1 (en) 2009-05-01 2010-04-27 Information processing apparatus, installation method of printer driver, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009112192A JP5317817B2 (ja) 2009-05-01 2009-05-01 情報処理装置、プリンタドライのバインストール方法、及び、プログラム

Publications (3)

Publication Number Publication Date
JP2010262448A JP2010262448A (ja) 2010-11-18
JP2010262448A5 JP2010262448A5 (ja) 2012-05-31
JP5317817B2 true JP5317817B2 (ja) 2013-10-16

Family

ID=43030138

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009112192A Expired - Fee Related JP5317817B2 (ja) 2009-05-01 2009-05-01 情報処理装置、プリンタドライのバインストール方法、及び、プログラム

Country Status (2)

Country Link
US (1) US20100277761A1 (ja)
JP (1) JP5317817B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4667516B2 (ja) * 2009-06-30 2011-04-13 キヤノン株式会社 情報処理装置、情報処理システムの制御方法およびプログラム
JP5927899B2 (ja) * 2011-12-22 2016-06-01 株式会社リコー 情報処理装置及びプログラム
JP6351405B2 (ja) * 2013-12-16 2018-07-04 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2015166919A (ja) * 2014-03-03 2015-09-24 株式会社リコー プログラム、情報処理装置、及び印刷システム
JP2015230710A (ja) * 2014-06-06 2015-12-21 キヤノン株式会社 情報処理装置及びプログラム、制御方法
JP6606443B2 (ja) * 2016-03-02 2019-11-13 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
JP7471806B2 (ja) 2019-11-29 2024-04-22 キヤノン株式会社 情報処理装置およびプログラム
JP7422462B2 (ja) * 2020-01-31 2024-01-26 キヤノン株式会社 プログラム、及び情報処理装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6967728B1 (en) * 1999-07-23 2005-11-22 Electronics For Imaging, Inc. Reusable and transferable printer driver preference system
JP3870065B2 (ja) * 2001-10-31 2007-01-17 キヤノン株式会社 ネットワークシステム、情報処理装置、情報処理方法、及び制御プログラム
US7237238B2 (en) * 2002-03-01 2007-06-26 Dell Products L.P. Method and apparatus for automated operating systems upgrade
JP4726250B2 (ja) * 2002-12-27 2011-07-20 キヤノンマーケティングジャパン株式会社 情報処理装置及びその制御方法、コンピュータプログラム
JP4863450B2 (ja) * 2005-03-29 2012-01-25 キヤノン株式会社 デバイスドライバプログラムをカスタマイズするための情報処理装置及びデバイスドライバプログラムのカスタマイズ方法
JP4029889B2 (ja) * 2005-04-12 2008-01-09 コニカミノルタビジネステクノロジーズ株式会社 ドライバ設定方法、ドライバ設定プログラム、記録媒体、及び情報処理装置
US7903267B2 (en) * 2005-11-02 2011-03-08 Kyocera Mita Corporation Automatic installation system for printer driver, and program recording medium
US8305602B2 (en) * 2006-09-29 2012-11-06 Sharp Laboratories Of America, Inc. Systems and methods for remotely managing and configuring driver settings
US20080180712A1 (en) * 2007-01-30 2008-07-31 Ricoh Company Ltd. Universal print driver with full discovery

Also Published As

Publication number Publication date
JP2010262448A (ja) 2010-11-18
US20100277761A1 (en) 2010-11-04

Similar Documents

Publication Publication Date Title
JP5317817B2 (ja) 情報処理装置、プリンタドライのバインストール方法、及び、プログラム
US9218150B2 (en) Image forming apparatus and method thereof
US7895609B2 (en) Method for installing driver software, information processing apparatus that employs the method, computer program for performing the method, and storage medium for storing the computer program
US8649030B2 (en) Controlling an information processing apparatus on which a plurality of printer drivers are installed
US8587811B2 (en) Information processing apparatus and method thereof
US20110075207A1 (en) Information processing apparatus and method thereof
US8488174B2 (en) Print control apparatus, print control method, and storage medium for configuring output device based on acquired information
US8402478B2 (en) Storing medium having a device driver for controlling a plurality of types of peripheral devices
JP2020004158A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
US10089102B2 (en) Information processing apparatus, method, and program
KR20130089195A (ko) 정보 처리 장치, 제어 방법 및 기록 매체
US20140300914A1 (en) Information processing apparatus, method for controlling the same, and recording medium
JP4981936B2 (ja) インストーラ及びプリンタドライバのインストール方法
JP2014203268A (ja) 情報処理装置及び制御方法
US8792107B2 (en) Information processing apparatus, method for uninstalling printer driver, and recording medium
JP5522952B2 (ja) 印刷制御装置、印刷制御方法、およびプログラム
US9058132B2 (en) Information processing apparatus, control method, and computer-readable medium
JP2006268586A (ja) 処理態様指定情報変換プログラム及び処理態様指定情報変換方法
JP6545332B2 (ja) 情報処理装置、制御方法、及びプログラム
US10346102B2 (en) Information processing apparatus that controls install of a device driver in accordance with capability of an operating system, installation method, and storage medium
JP2013218472A (ja) プリンタドライバの設定値の引き継ぎ方法
JP2002007133A (ja) デバイスドライバーのインストール方法
JP2018112817A (ja) プリンタードライバーアンインストーラー
JP2017162106A (ja) 情報処理装置及びデバイスドライバのインストール方法
JP6377026B2 (ja) 情報処理装置、制御方法、及びプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120410

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120410

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130529

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: 20130611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130709

LAPS Cancellation because of no payment of annual fees