JP4313998B2 - HOST COMPUTER, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM - Google Patents

HOST COMPUTER, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM Download PDF

Info

Publication number
JP4313998B2
JP4313998B2 JP2002257848A JP2002257848A JP4313998B2 JP 4313998 B2 JP4313998 B2 JP 4313998B2 JP 2002257848 A JP2002257848 A JP 2002257848A JP 2002257848 A JP2002257848 A JP 2002257848A JP 4313998 B2 JP4313998 B2 JP 4313998B2
Authority
JP
Japan
Prior art keywords
version
printer
controller
printer driver
host computer
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
JP2002257848A
Other languages
Japanese (ja)
Other versions
JP2004094794A (en
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 JP2002257848A priority Critical patent/JP4313998B2/en
Publication of JP2004094794A publication Critical patent/JP2004094794A/en
Application granted granted Critical
Publication of JP4313998B2 publication Critical patent/JP4313998B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、プリンタドライバを用いてプリンタの動作を制御するホストコンピュータ及びその制御方法、プログラム並びに記憶媒体に関する。
【0002】
【従来の技術】
周辺機器を接続したコンピュータにデバイスドライバをインストールする方法としては例えば、ウィザード機能(組み込みを簡便にするために設けたガイド機能)により、インストールしようとするデバイスドライバの名称をユーザが選択し、それに応じてインストール方法、あるいは、プラグ・アンド・プレイ(周辺機器や拡張カードなどをコンピュータに接続した際に、デバイス・ドライバの組み込みおよび設定を自動的に行う機能)により、デバイスIDに対応したデバイスドライバを自動的にインストールする方法、がある。
【0003】
【発明が解決しようとする課題】
しかしながら、従来のプラグ・アンド・プレイは、デバイスIDが異なる周辺機器に対してしか有効に機能しないという問題がある。例えば、障害対応や機能アップ等の理由により周辺機器のコントローラがバージョンアップされた場合で、かつ、この修正がその周辺機器のデバイスドライバにまで影響を与えるような場合には、デバイスIDは同じであるため、必要とされるデバイスドライバが正しくインストールされないという問題があった。
【0004】
また、周辺機器のコントローラのバージョン情報は、ユーザにとっては一般に関心の薄い情報であるため、あるバージョンのコントローラに対応したデバイスドライバをウィザードからユーザが正しく選択することは難しいことが多く、ユーザにとっては使い勝手を著しく損なわせるものであった。
【0005】
そこで、本発明は、ある周辺機器に対し、バージョンが相異なる複数のデバイスドライバが存在するような場合でも、インストールすべきバージョンのデバイスドライバが自動的に正しく選択され、デバイスドライバの組み込み作業にかかるユーザの負担を軽減させることを目的とする。
【0006】
【課題を解決するための手段】
上記の目的を達成するために、例えば本発明のホストコンピュータは、次の構成を備える。すなわち、記憶装置を備え、遠隔の装置から取得可能なプリンタドライバを用いてプリンタの動作を制御するホストコンピュータであって、使用するプリンタを選択する選択手段と、前記選択手段により選択された前記プリンタにおけるコントローラのバージョン情報を取得する取得手段と、前記取得手段がコントローラのバージョン情報として第1のバージョンを取得し、前記選択手段により選択された前記プリンタに対応するプリンタドライバに複数のバージョンがあり、かつ、当該複数のバージョンのプリンタドライバの中に前記第1のバージョンのコントローラに対してバージョンアップされた際のコントローラのバージョン情報である第2のバージョン対応するバージョンのプリンタドライバが含まれている場合、前記第2のバージョン対応するバージョンのプリンタドライバを前記記憶装置に記憶させる一方で、前記プリンタドライバを前記取得手段が取得した第1のバージョンコントローラを備えるプリンタを動作させることができる設定状態となるよう制御する制御手段とを備え、前記制御手段は更に、前記プリンタドライバが前記第1のバージョンのコントローラを備えるプリンタを動作させることができる設定状態とされているときに前記取得手段がコントローラのバージョン情報として前記第2のバージョンを取得した場合、前記記憶装置に記憶した前記第2のバージョン対応するバージョンのプリンタドライバを、前記第2のバージョンコントローラを備えるプリンタを動作させることができる設定状態となるよう制御することを特徴とする。
【0007】
【発明の実施の形態】
以下、本発明の実施形態について図面を参照して説明する。本実施形態では、コンピュータの周辺機器としてプリンタを用い、印刷システムを構成する。コンピュータは、記憶装置に組み込まれたデバイスドライバとしてのプリンタドライバ(プリンタの制御プログラム)を用いてプリンタの動作を制御する。もちろん、プリンタは周辺機器の一例であり、本発明はデバイスドライバを介して制御されるあらゆる周辺機器(スキャナ、光ディスク装置等)を用いたシステムに適用することができる。
【0008】
図1は本発明の実施形態に係る印刷システムの構成を示すブロック図である。この印刷システムは、ホストコンピュータ3000と、その周辺機器としてのプリンタ1500が互いに通信可能に接続された構成である。なお、本発明の機能が実行されるのであれば、単体の機器であってもよいし、複数の機器からなるシステムであっても、LAN、WAN等のネットワークを介して接続され処理が行われるシステムであってもよい。
【0009】
ホストコンピュータ3000は、外部記憶装置(例えばハードディスクドライブ)11に記憶された文書処理プログラム等のアプリケーションに基づいて図形、イメージ、文字、表(表計算等を含む)等が混在した文書処理を実行するCPU1を備え、このCPU1がシステムバス4に接続された各デバイスを統括的に制御する。また、外部記憶装置11は、上記した文書処理プログラム等のアプリケーションの他、CPU1の制御プログラムであるオペレーティングシステムプログラム(以下OS)、プリンタ1500の制御プログラムであるプリンタドライバ等を記憶する。また、RAM2は、CPU1の主メモリ、ワークエリア等として機能し、ROM3は、ブートプログラム等を記憶している。
【0010】
キーボードコントローラ(KBC)5は、キーボード9や不図示のポインティングデバイスからのキー入力を制御する。CRTコントローラ(CRTC)6は、CRTディスプレイ(CRT)10の表示を制御する。7はディスクコントローラ(DKC)で、外部記憶装置11とのアクセスを制御する。プリンタコントローラ(PRTC)8は、双方向性インターフェース(インターフェース)21を介してプリンタ1500に接続されて、プリンタ1500の通信制御処理を実行する。
【0011】
なお、CPU1は、例えばRAM2上に設定された表示情報RAMへのアウトラインフォントの展開(ラスタライズ)処理を実行し、CRT10上でのWYSIWYGを可能としている。また、CPU1は、CRT10上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行うことができる。
【0012】
プリンタ1500は、大きく分けて、印刷のための機構を有する印刷部(プリンタエンジン)17と、印刷部17の動作を制御するコントローラ100を備える。具体的には、コントローラ100は、CPU12により、ROM13のプログラム用ROMに記憶された制御プログラム等に基づいてシステムバス15に接続される印刷部(プリンタエンジン)17に出力情報としての画像信号を出力する。ROM13のフォント用ROMには上記出力情報を生成する際に使用するフォントデータ等が記憶され、ROM13のデータ用ROMには、外部メモリ14がない場合には、ホストコンピュータ上で利用される情報等が記憶されている。
【0013】
CPU12は入力部18を介してホストコンピュータ3000との通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ3000に通知することができる。RAM19は、CPU12の主メモリや、ワークエリア等として機能し、図示しない増設ポートに接続されるオプションRAMによりメモリ容量を拡張することができるように構成されている。なお、RAM19は、出力情報展開領域、環境データ領域、NVRAM等に用いられる。外部メモリ14は、メモリコントローラ(MC)20によりアクセスを制御される。外部メモリ14は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶したり、展開した印刷データのスプール用として使われる。また、22は操作部で、操作のためのスイッチおよびLED表示器等が配されている。
【0014】
また、前述した外部メモリ14は1個に限らず、複数個備えられ、内蔵フォントを加えたオプションカード、展開した印刷データのスプール用メモリ、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部記憶装置を複数接続できるように構成されていてもよい。更に、図示しないNVRAMを有し、操作部22からのプリンタモード設定情報を記憶するようにしてもよい。
【0015】
図2は、ホストコンピュータ3000における典型的な印刷処理に係る機能構成を示す図である。アプリケーション201、グラフィックエンジン202、プリンタドライバ203、およびシステムスプーラ204は、外部記憶装置11に保存されたファイルとして存在し、実行される場合にOSやそのモジュールを利用するモジュールによってRAM2にロードされ実行されるプログラムモジュールである。また、アプリケーション201およびプリンタドライバ203は、不図示のCD−ROM、あるいは不図示のネットワークを経由して外部記憶装置11に追加することが可能となっている。外部記憶装置11に保存されているアプリケーション201はRAM2にロードされて実行されるが、このアプリケーション201からプリンタ1500に対して印刷を行う際には、同様にRAM2にロードされ実行可能となっているグラフィックエンジン202を利用して出力(描画)を行う。
【0016】
グラフィックエンジン202は、プリンタごとに用意されたプリンタドライバ203を同様に外部記憶装置11からRAM2にロードし、アプリケーション201の出力をプリンタドライバ203に設定する。そして、アプリケーション201から受取るGDI(Graphic Device Interface)関数からDDI(Deice Driver Interface)関数に変換して、プリンタドライバ203へDDI関数を出力する。プリンタドライバ203は、グラフィックエンジン202から受け取ったDDI関数に基づいて、プリンタが認識可能な制御コマンド、例えばPDL(Page Description Language)に変換する。変換されたプリンタ制御コマンドは、OSによってRAM2にロードされたシステムスプーラ204を経てインタフェース21経由でプリンタ1500へ印刷データとして出力される仕組みになっている。
【0017】
本実施形態の印刷システムは更に、図3に示すように、アプリケーション201からの印刷データを一旦中間コードデータでスプールする構成を有している。
【0018】
図3は、図2のシステムを拡張したもので、グラフィックエンジン202からプリンタドライバ203へ印刷命令を送る際に、一旦中間コードからなるスプールファイル303を生成する構成をとる。図2のシステムでは、アプリケーション201が印刷処理から開放されるのはプリンタドライバ203がグラフィックエンジン202からのすべての印刷命令をプリンタの制御コマンドへ変換し終わった時点である。これに対して、図3のシステムでは、スプーラ302がすべての印刷命令を中間コードデータに変換し、スプールファイル303に出力した時点である。通常、後者の方が短時間で済む。また、図3で示すシステムにおいては、スプールファイル303の内容を加工することができる。これによりアプリケーションからの印刷データに対して、拡大縮小や、複数ページを1ページに縮小して印刷する等、アプリケーションの持たない機能を実現することができる。
【0019】
これらの目的のために、図2のシステムに対し、図3の如く中間コードデータでスプールするようシステムの拡張がなされてきている。なお、印刷データの加工を行うためには、通常プリンタドライバ203が提供するウインドウから設定を行い、プリンタドライバ203がその設定内容をRAM2上あるいは外部記憶装置11上に保管する。
【0020】
以下、図3の詳細を説明する。図に示す通り、この拡張された処理方式では、グラフィックエンジン202からの印刷命令をディスパッチャ301が受け取る。ディスパッチャ301がグラフィックエンジン202から受け取った印刷命令が、アプリケーション201からグラフィックエンジン202へ発行された印刷命令の場合には、ディスパッチャ301は外部記憶装置11に格納されているスプーラ302をRAM2にロードし、プリンタドライバ203ではなくスプーラ302へ印刷命令を送付する。
【0021】
スプーラ302は受け取った印刷命令を中間コードに変換してスプールファイル303に出力する。また、スプーラ302は、プリンタドライバ203に設定されている印刷データに関する加工設定をプリンタドライバ203から取得してスプールファイル303に保存する。なお、スプールファイル303は外部記憶装置11上にファイルとして生成するが、RAM2上に生成するようにしても構わない。更にスプーラ302は、外部記憶装置11に格納されているスプールファイルマネージャ304をRAM2にロードし、スプールファイルマネージャ304に対してスプールファイル303の生成状況を通知する。その後、スプールファイルマネージャ304は、スプールファイル303に保存された印刷データに関する加工設定の内容に従って印刷を行えるかどうかを判断する。
【0022】
スプールファイルマネージャ304がグラフィックエンジン202を利用して印刷を行えると判断した際には、外部記憶装置11に格納されているデスプーラ305をRAM2にロードし、デスプーラ305に対して、スプールファイル303に記述された中間コードの印刷処理を行うように指示する。
【0023】
デスプーラ305はスプールファイル303に含まれる中間コードをスプールファイル303に含まれる加工設定内容に従って加工し、もう一度グラフィックエンジン202経由で出力する。
【0024】
ディスパッチャ301がグラフィックエンジン202から受け取った印刷命令がデスプーラ305からグラフィックエンジン202へ発行された印刷命令の場合には、ディスパッチャ301はスプーラ302ではなく、プリンタドライバ203に印刷命令を送る。
【0025】
プリンタドライバ203はプリンタ制御コマンドを生成し、システムスプーラ204経由でプリンタ1500に出力する。
【0026】
図4は、実施形態におけるプリンタウィザードを用いたプリンタドライバのインストール処理を示すフローチャートである。なお、本明細書において、プリンタドライバの「インストール」とは、プリンタドライバを外部記憶装置11に単に記憶させることをいうのではなく、対応するプリンタを動作させることができるような設定状態で外部記憶装置11に組み込むことをいう。また、プリンタウィザードは一般にはOSにより提供されるが、各ベンダーから提供される独自のウィザードでもよい。
【0027】
まず、プリンタウィザードを立ち上げて、ここから使用するプリンタを選択する(ステップS401)。
【0028】
次に、選択されたプリンタに対応するプリンタドライバに複数のバージョンが存在するかどうかのチェックを行い(ステップS402)、ここで存在しない場合には、選択されたプリンタに対応するプリンタドライバを通常の方法でインストールする(ステップS405)。一方、ステップS402で、選択されたプリンタに対応するプリンタドライバに複数のバージョンが存在すると判断されたときは、SNMPなどの双方向通信が可能なネットワークを介してプリンタのコントローラのバージョン情報を取得し(ステップS403)、そして、取得したバージョン情報に対応したプリンタドライバをインストールする(ステップS404)。
【0029】
以下、ステップS402,S403,S404の処理を具体的に説明する。
【0030】
ステップS402の判断は、例えば外部記憶装置11に記憶されている、図6に示すような構造の、プリンタのモデル名(デバイスID)、プリンタのコントローラのバージョン情報、および対応するプリンタドライバをそれぞれ対応付けて記述したドライバテーブルに基づいて行う。
【0031】
図6によれば、例えば、Ganon R210というモデル名(デバイスID)のプリンタのコントローラには、バージョン1.x、2.x、3.xのバージョンがある。このとき、バージョン1.xと2.xは、コントローラの内部的な障害対応、もしくは機能アップ等によるものであり、プリンタドライバには影響を与えないバージョンアップであるが、バージョン3.xはプリンタドライバに影響を与えるバージョンアップだったとする。ここでいうプリンタドライバに影響を与えるバージョンアップとは、例えば印字領域の変更など、コントローラのバージョンアップに伴って、プリンタドライバの修正も必要とされるものをさす。そのため、バージョン1.xとバージョン2.xとでは使用すべきプリンタドライバは同一でよく、バージョン2.xとバージョン3.xとでは使用すべきプリンタドライバが異なることになる。つまり、図7に示すように、モデルGanon R210のプリンタに対応するプリンタドライバは2種類ある。
【0032】
このような仮定のもとで、ステップS403で、取得したバージョンが2.xと判断されると、ステップS404では、コントローラのバージョン2.xと対応したGanon R210 PCL-1(バージョン1.xにも対応する)をインストールする。また、取得したバージョンが3.xと判断されると、コントローラのバージョン3.xに対応したGanon R210 PCL-2をインストールすることになる。
【0033】
同様に、Ganon R330-400というモデル名のプリンタのコントローラの場合も、バージョン1.x、2.x、3.xの3種類のバージョンがあり、それぞれのバージョンアップがプリンタドライバに影響を与えるバージョンアップだったとする。つまり、図8に示すように、モデルGanon R330-400のプリンタに対応するプリンタドライバは3種類ある。
【0034】
このような仮定のもとで、ステップS403で取得したバージョンが2.xと判断されると、ステップS404では、コントローラのバージョン2.xに対応したGanon R330-400 PCL-2をインストールする。また、取得したバージョンナンバーが3.xと判断されると、コントローラのバージョン3.xに対応したGanon R330-400 PCL-3をインストールすることになる。
【0035】
次に、Ganon R605-605Pというモデル名のプリンタの例を説明する。このプリンタのコントローラは、バージョン1.xと2.xの2種類のバージョンを有する。このバージョンアップはプリンタドライバに影響を与えないバージョンアップだったとする。そうするとこの場合は、図9に示すように、対応するプリンタドライバは1種類である。したがって、このステップS401でモデルGanon R605-605Pが選択されたときは、ステップS402で対応するプリンタドライバは1バージョンしか存在しないと判断され、ステップS405に進んで通常の方法でプリンタドライバのインストールが行われる。
【0036】
図5は、実施形態におけるプラグ・アンド・プレイによるプリンタドライバのインストール処理を示すフローチャートである。
【0037】
まず、ホストコンピュータが新規のプリンタをプラグ・アンド・プレイのハードウエア検索により見つけだすと、ホストコンピュータはプリンタのデバイスIDを取得する(ステップS501)。そして、上述のようにドライバテーブルを参照して、取得したデバイスIDに対応したプリンタドライバに複数のバージョンが存在するかどうかのチェックを行う(ステップS502)。ここで、存在しないと判断されると、取得したデバイスIDに対応したプリンタドライバを通常の方法でインストールする(ステップS505)。
【0038】
一方、ステップS502で、複数のバージョンが存在すると判断された場合には、SNMPなどの双方向通信が可能なネットワークを介してプリンタのコントローラのバージョン情報を取得する(ステップS503)。そして、図6のようなドライバテーブルを参照して、コントローラのバージョンに対応したプリンタドライバのインストールを行う(ステップS504)。
【0039】
以上の処理により、選択されたプリンタ、または、接続されたプリンタに対し、バージョンが異なる複数のプリンタドライバが存在するかどうかが検査され、複数のプリンタドライバが存在するときは、そのプリンタのコントローラのバージョンを取得し、そのコントローラのバージョンに応じたプリンタドライバを自動的に選択するようにしたので、プリンタドライバのインストールにかかるユーザの負担を軽減させることができる。
【0041】
図10は、コントローラのバージョンアップを考慮に入れたプリンタドライバのインストール処理を示すフローチャートである。
【0042】
まず、プリンタウィザードを立ち上げて、ここから使用するプリンタを選択する(ステップS1001)。
【0043】
次に、選択されたプリンタに対応するプリンタドライバに複数のバージョンが存在するかどうかのチェックを行い(ステップS1002)、ここで存在しない場合には、選択されたプリンタに対応するプリンタドライバを通常の方法でインストールする(ステップS1007)。一方、ステップS1002で、選択されたプリンタに対応するプリンタドライバに複数のバージョンが存在すると判断されたときは、SNMPなどの双方向通信が可能なネットワークを介してプリンタのコントローラのバージョン情報を取得する(ステップS1003)。
【0044】
次に、図6に示したようなドライバテーブルを参照して、取得したコントローラのバージョン情報に対応するプリンタドライバが、そのプリンタで最新のものであるか否かを判断する(ステップS1004)。例えば、図6を参照すると、Ganon R330-400というモデル名のプリンタのコントローラは3種類のバージョンがあるが、ステップS1003で取得されたコントローラのバージョン情報に対応するプリンタドライバが、最新のバージョン3.xに対応するもの(すなわち、Ganon R330-400 PCL-3)であるか否かを判断する。
【0045】
ここで、取得したコントローラのバージョン情報に対応するプリンタドライバが、そのプリンタで最新のものであると判断されたときは、その最新のプリンタドライバだけをインストールする(ステップS1005)。一方、取得したコントローラのバージョン情報に対応するプリンタドライバが、そのプリンタで最新でないと判断されたときは、取得したコントローラのバージョンに対応したプリンタドライバをインストールするとともに、それより新しいコントローラのバージョンに対するプリンタドライバも、内部的にインストールする(ステップS1006)。「内部的にインストールする」とは、例えば、コントローラが機能拡張のためにバージョンアップし、それがドライバの機能に大きな影響を与え、その機能を実現するためには新規にドライバモジュール(DLL)を作成する必要がある場合、上記のようなコントローラのバージョンアップを考慮して、事前に保持することをいう。
【0046】
このステップS1006の処理が行われた後において、コントローラがバージョンアップされた場合、プリンタは、そのコントローラのバージョン情報を、任意のタイミングでホストコンピュータに通知する。ここで行うバージョン情報の通知のタイミングは、ユーザーがプリンタドライバのグラフィックユーザーインタフェースから指示を行ったときでもよい。
【0047】
ホストコンピュータがコントローラのバージョン情報を取得した結果、現在インストールされているプリンタドライバより新しいバージョンのプリンタドライバが内部的に保持されていると判断すると、任意のタイミングで、例えば、“コントローラがバージョンアップされました。対応する新しいプリンタドライバをインストールします。Yes or Cancel”とのメッセージを表示する。
【0048】
ここで、Yesが選択された場合は、古いプリンタドライバを削除して、新しいプリンタドライバを自動的にインストールする。
【0049】
以上の処理により、コントローラのバージョンアップに対応したプリンタドライバの自動バージョンアップが行えるようになるので、コントローラのバージョンアップに伴うプリンタドライバの更新作業からユーザを解放することができるようになる。
【0050】
(他の実施形態)
以上、本発明の実施形態を詳述したが、本発明は、複数の機器(例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタ等)から構成されるシステムに適用しても、1つの機器からなる装置(例えば、複写機、ファクシミリ装置等)に適用してもよい。
【0051】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム(図4、図5、図10のいずれかに示すフローチャートに対応したプログラム)を、システムあるいは装置に直接あるいは遠隔から供給し、そのシステムあるいは装置のコンピュータがその供給されたプログラムを読み出して実行することによっても達成される場合を含む。
【0052】
したがって、本発明の機能処理をコンピュータで実現するために、そのコンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の特許請求の範囲には、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【0053】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等、プログラムの形態を問わない。
【0054】
プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、光ディスク(CD-ROM、CD-R、CD-RW、DVD等)、光磁気ディスク、磁気テープ、メモリカード等がある。
【0055】
その他、プログラムの供給方法としては、インターネットを介して本発明のプログラムをファイル転送によって取得する態様も含まれる。
【0056】
また、本発明のプログラムを暗号化してCD-ROM等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介して暗号化を解く鍵情報を取得させ、その鍵情報を使用することで暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【0057】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現され得る。
【0058】
さらに、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によっても前述した実施形態の機能が実現される。
【0059】
【発明の効果】
以上説明したように、本発明によれば、ある周辺機器に対し、バージョンが相異なる複数のデバイスドライバが存在するような場合でも、インストールすべきバージョンのデバイスドライバが自動的に正しく選択され、デバイスドライバの組み込み作業にかかるユーザの負担を軽減させることができる。
【図面の簡単な説明】
【図1】実施形態に係る印刷システムの構成を示すブロック図である。
【図2】実施形態におけるホストコンピュータの典型的な印刷処理に係る機能構成を示す図である。
【図3】実施形態におけるホストコンピュータの典型的な印刷処理に係る機能構成をより詳細に示す図である。
【図4】実施形態におけるプリンタウィザードを用いたプリンタドライバのインストール処理を示すフローチャートである。
【図5】実施形態におけるプラグ・アンド・プレイによるプリンタドライバのインストール処理を示すフローチャートである。
【図6】実施形態におけるドライバテーブルの構造例を示す図である。
【図7】実施形態におけるプリンタとプリンタドライバとの対応関係を示す図である。
【図8】実施形態におけるプリンタとプリンタドライバとの対応関係を示す図である。
【図9】実施形態におけるプリンタとプリンタドライバとの対応関係を示す図である。
【図10】実施形態におけるコントローラのバージョンアップを考慮に入れたプリンタドライバのインストール処理を示すフローチャートである。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a host computer that controls the operation of a printer using a printer driver, a control method therefor, a program, and a storage medium .
[0002]
[Prior art]
As a method of installing a device driver on a computer connected to a peripheral device, for example, the user selects the name of the device driver to be installed by a wizard function (a guide function provided for easy installation), and accordingly The device driver corresponding to the device ID can be installed by installation method or plug and play (function to automatically install and set the device driver when a peripheral device or expansion card is connected to the computer). There is a way to install automatically.
[0003]
[Problems to be solved by the invention]
However, the conventional plug and play has a problem that it functions effectively only for peripheral devices having different device IDs. For example, when the peripheral device controller is upgraded for reasons such as failure handling or function enhancement, and this modification affects the device driver of the peripheral device, the device ID is the same. For this reason, there was a problem that required device drivers were not installed correctly.
[0004]
In addition, since the version information of the controller of the peripheral device is generally uninteresting for the user, it is often difficult for the user to correctly select a device driver corresponding to a certain version of the controller from the wizard. It was a serious loss of usability.
[0005]
Therefore, according to the present invention, even when a plurality of device drivers having different versions exist for a certain peripheral device, the device driver of the version to be installed is automatically selected correctly, and the device driver is installed. The purpose is to reduce the burden on the user.
[0006]
[Means for Solving the Problems]
In order to achieve the above object, for example, a host computer of the present invention comprises the following arrangement. That is, a host computer that includes a storage device and controls the operation of a printer using a printer driver that can be acquired from a remote device , the selecting means for selecting a printer to be used, and the printer selected by the selecting means Acquisition means for acquiring controller version information in the controller, the acquisition means acquires a first version as controller version information, and there are a plurality of versions of the printer driver corresponding to the printer selected by the selection means, and version of the printer driver corresponding to the second version is version information of a controller when the has been upgraded to the first version of the controller into the plurality of versions of the printer driver is included The second buffer The version of the printer driver corresponding to John while to be stored in the storage device, the first version of the so as to be set state that can be operated with a printer comprising a controller the acquisition unit printer driver acquires Control means for controlling, wherein the control means is further configured such that when the printer driver is in a setting state capable of operating a printer comprising the first version of the controller , the acquisition means is the controller version. when acquiring the second version as information, previous versions of the printer driver corresponding to the second version stored in Kiki憶device, it is possible to operate the printer with a controller of the second version It is controlled to be in the setting state
[0007]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings. In the present embodiment, a printer is used as a peripheral device of the computer to configure a printing system. The computer controls the operation of the printer by using a printer driver (printer control program) as a device driver incorporated in the storage device. Of course, a printer is an example of a peripheral device, and the present invention can be applied to a system using any peripheral device (scanner, optical disk device, etc.) controlled via a device driver.
[0008]
FIG. 1 is a block diagram showing a configuration of a printing system according to an embodiment of the present invention. This printing system has a configuration in which a host computer 3000 and a printer 1500 as a peripheral device thereof are connected to be communicable with each other. As long as the function of the present invention is executed, a single device or a system composed of a plurality of devices is connected and processed via a network such as a LAN or WAN. It may be a system.
[0009]
The host computer 3000 executes document processing in which graphics, images, characters, tables (including spreadsheets), etc. are mixed based on an application such as a document processing program stored in the external storage device (for example, hard disk drive) 11. A CPU 1 is provided, and the CPU 1 comprehensively controls each device connected to the system bus 4. The external storage device 11 stores an operating system program (hereinafter referred to as OS) that is a control program of the CPU 1, a printer driver that is a control program of the printer 1500, and the like, in addition to the application such as the document processing program described above. The RAM 2 functions as a main memory and work area for the CPU 1, and the ROM 3 stores a boot program and the like.
[0010]
A keyboard controller (KBC) 5 controls key input from a keyboard 9 or a pointing device (not shown). A CRT controller (CRTC) 6 controls display on a CRT display (CRT) 10. A disk controller (DKC) 7 controls access to the external storage device 11. A printer controller (PRTC) 8 is connected to the printer 1500 via a bidirectional interface (interface) 21 and executes communication control processing of the printer 1500.
[0011]
The CPU 1 executes, for example, an outline font rasterization process on the display information RAM set on the RAM 2 to enable WYSIWYG on the CRT 10. The CPU 1 opens various windows registered based on commands instructed by a mouse cursor (not shown) on the CRT 10 and executes various data processing. When executing printing, the user can open a window related to print settings and set the print processing method for the printer driver, including printer settings and print mode selection.
[0012]
The printer 1500 roughly includes a printing unit (printer engine) 17 having a mechanism for printing, and a controller 100 that controls the operation of the printing unit 17. Specifically, the controller 100 causes the CPU 12 to output an image signal as output information to a printing unit (printer engine) 17 connected to the system bus 15 based on a control program stored in the program ROM of the ROM 13. To do. Font data used for generating the output information is stored in the font ROM of the ROM 13, and information used on the host computer when the data ROM of the ROM 13 does not have the external memory 14. Is remembered.
[0013]
The CPU 12 can perform communication processing with the host computer 3000 via the input unit 18 and can notify the host computer 3000 of information in the printer. The RAM 19 functions as a main memory and a work area of the CPU 12, and is configured such that the memory capacity can be expanded by an optional RAM connected to an expansion port (not shown). The RAM 19 is used as an output information expansion area, environment data area, NVRAM, and the like. Access to the external memory 14 is controlled by a memory controller (MC) 20. The external memory 14 is connected as an option, and stores font data, an emulation program, form data, etc., and is used for spooling expanded print data. Reference numeral 22 denotes an operation unit on which operation switches, an LED display, and the like are arranged.
[0014]
The external memory 14 described above is not limited to one, and a plurality of external memories 14 are provided, and an option card to which a built-in font is added, a spool memory for expanded print data, and a program for interpreting a printer control language having a different language system are stored. A plurality of external storage devices may be connected. Further, an NVRAM (not shown) may be provided to store printer mode setting information from the operation unit 22.
[0015]
FIG. 2 is a diagram illustrating a functional configuration related to typical print processing in the host computer 3000. The application 201, the graphic engine 202, the printer driver 203, and the system spooler 204 exist as files stored in the external storage device 11, and when executed, are loaded into the RAM 2 and executed by the OS and modules that use the module. Program module. The application 201 and the printer driver 203 can be added to the external storage device 11 via a CD-ROM (not shown) or a network (not shown). The application 201 stored in the external storage device 11 is loaded into the RAM 2 and executed. When printing from the application 201 to the printer 1500, the application 201 is similarly loaded into the RAM 2 and executable. Output (drawing) is performed using the graphic engine 202.
[0016]
The graphic engine 202 similarly loads the printer driver 203 prepared for each printer from the external storage device 11 to the RAM 2 and sets the output of the application 201 in the printer driver 203. Then, the GDI (Graphic Device Interface) function received from the application 201 is converted into a DDI (Deice Driver Interface) function, and the DDI function is output to the printer driver 203. Based on the DDI function received from the graphic engine 202, the printer driver 203 converts it into a control command that can be recognized by the printer, for example, PDL (Page Description Language). The converted printer control command is output as print data to the printer 1500 via the interface 21 via the system spooler 204 loaded into the RAM 2 by the OS.
[0017]
As shown in FIG. 3, the printing system of this embodiment further has a configuration in which print data from the application 201 is temporarily spooled with intermediate code data.
[0018]
FIG. 3 is an extension of the system shown in FIG. 2 and has a configuration in which a spool file 303 including an intermediate code is temporarily generated when a print command is sent from the graphic engine 202 to the printer driver 203. In the system shown in FIG. 2, the application 201 is released from the printing process when the printer driver 203 has converted all print commands from the graphic engine 202 into printer control commands. On the other hand, in the system shown in FIG. 3, the spooler 302 converts all print commands into intermediate code data and outputs the intermediate code data to the spool file 303. The latter usually requires less time. In the system shown in FIG. 3, the contents of the spool file 303 can be processed. As a result, it is possible to realize functions that the application does not have, such as enlargement / reduction or printing by reducing a plurality of pages into one page with respect to print data from the application.
[0019]
For these purposes, the system of FIG. 2 has been expanded to spool with intermediate code data as shown in FIG. In order to process the print data, settings are normally made from a window provided by the printer driver 203, and the printer driver 203 stores the setting contents on the RAM 2 or the external storage device 11.
[0020]
Details of FIG. 3 will be described below. As shown in the figure, in this expanded processing method, the dispatcher 301 receives a print command from the graphic engine 202. If the print command received by the dispatcher 301 from the graphic engine 202 is a print command issued from the application 201 to the graphic engine 202, the dispatcher 301 loads the spooler 302 stored in the external storage device 11 into the RAM 2, A print command is sent to the spooler 302 instead of the printer driver 203.
[0021]
The spooler 302 converts the received print command into an intermediate code and outputs it to the spool file 303. In addition, the spooler 302 acquires processing settings related to print data set in the printer driver 203 from the printer driver 203 and stores them in the spool file 303. The spool file 303 is generated as a file on the external storage device 11, but may be generated on the RAM 2. Furthermore, the spooler 302 loads the spool file manager 304 stored in the external storage device 11 into the RAM 2 and notifies the spool file manager 304 of the generation status of the spool file 303. Thereafter, the spool file manager 304 determines whether printing can be performed in accordance with the contents of the processing settings related to the print data stored in the spool file 303.
[0022]
When the spool file manager 304 determines that printing can be performed using the graphic engine 202, the despooler 305 stored in the external storage device 11 is loaded into the RAM 2 and described in the spool file 303 with respect to the despooler 305. The intermediate code is instructed to be printed.
[0023]
The despooler 305 processes the intermediate code included in the spool file 303 in accordance with the processing setting content included in the spool file 303, and outputs it again via the graphic engine 202.
[0024]
If the print command received by the dispatcher 301 from the graphic engine 202 is a print command issued from the despooler 305 to the graphic engine 202, the dispatcher 301 sends the print command to the printer driver 203 instead of the spooler 302.
[0025]
The printer driver 203 generates a printer control command and outputs it to the printer 1500 via the system spooler 204.
[0026]
FIG. 4 is a flowchart illustrating printer driver installation processing using the printer wizard according to the embodiment. In this specification, “installation” of a printer driver does not simply mean that the printer driver is stored in the external storage device 11 but is externally stored in a setting state in which the corresponding printer can be operated. This is to be incorporated into the device 11. The printer wizard is generally provided by the OS, but may be a unique wizard provided by each vendor.
[0027]
First, the printer wizard is launched, and a printer to be used is selected from here (step S401).
[0028]
Next, it is checked whether or not there are a plurality of versions in the printer driver corresponding to the selected printer (step S402). If not, the printer driver corresponding to the selected printer is set to the normal printer driver. Installation is performed by the method (step S405). On the other hand, if it is determined in step S402 that a plurality of versions exist in the printer driver corresponding to the selected printer, the version information of the printer controller is acquired via a network capable of bidirectional communication such as SNMP. (Step S403) Then, a printer driver corresponding to the acquired version information is installed (Step S404).
[0029]
Hereinafter, the process of step S402, S403, S404 is demonstrated concretely.
[0030]
The determination in step S402 corresponds to the printer model name (device ID), printer controller version information, and corresponding printer driver stored in the external storage device 11 and having the structure shown in FIG. This is done based on the driver table that is attached.
[0031]
According to FIG. 6, for example, the controller of the printer with the model name (device ID) of Ganon R210 has version 1. x, 2. x, 3. There are x versions. At this time, version 1. x and 2. x is a version upgrade that does not affect the printer driver because of an internal failure of the controller or a function upgrade. Assume that x is a version upgrade that affects the printer driver. Here, the version upgrade that affects the printer driver means that the printer driver needs to be corrected along with the version upgrade of the controller, such as a change in the print area. Therefore, version 1. x and version2. The printer driver to be used may be the same as x. x and version3. The printer driver to be used is different from x. That is, as shown in FIG. 7, there are two types of printer drivers corresponding to the printer of model Ganon R210.
[0032]
Under such an assumption, in step S403, the acquired version is 2. If x is determined, in step S404, the controller version 2. Install Ganon R210 PCL-1 (corresponding to version 1.x) corresponding to x. The acquired version is 3. If x is determined, the controller version 3. The Ganon R210 PCL-2 corresponding to x will be installed.
[0033]
Similarly, in the case of a printer controller with a model name of Ganon R330-400, version 1. x, 2. x, 3. Assume that there are three versions of x, and each version upgrade is an upgrade that affects the printer driver. That is, as shown in FIG. 8, there are three types of printer drivers corresponding to the printers of the model Ganon R330-400.
[0034]
Under such assumption, the version acquired in step S403 is 2. If x is determined, in step S404, the controller version 2. Install Ganon R330-400 PCL-2 for x. The acquired version number is 3. If x is determined, the controller version 3. The Ganon R330-400 PCL-3 corresponding to x will be installed.
[0035]
Next, an example of a printer having a model name of Ganon R605-605P will be described. This printer controller is version 1. x and 2. There are two types of x. It is assumed that this upgrade is an upgrade that does not affect the printer driver. In this case, as shown in FIG. 9, there is only one type of corresponding printer driver. Therefore, when the model Ganon R605-605P is selected in step S401, it is determined in step S402 that there is only one version of the corresponding printer driver. Is called.
[0036]
FIG. 5 is a flowchart illustrating printer driver installation processing by plug and play in the embodiment.
[0037]
First, when the host computer finds a new printer by plug-and-play hardware search, the host computer acquires the device ID of the printer (step S501). Then, referring to the driver table as described above, it is checked whether a plurality of versions exist in the printer driver corresponding to the acquired device ID (step S502). If it is determined that it does not exist, a printer driver corresponding to the acquired device ID is installed by a normal method (step S505).
[0038]
On the other hand, if it is determined in step S502 that a plurality of versions exist, version information of the printer controller is acquired via a network capable of bidirectional communication such as SNMP (step S503). Then, referring to the driver table as shown in FIG. 6, the printer driver corresponding to the controller version is installed (step S504).
[0039]
Through the above processing, it is checked whether or not there are a plurality of printer drivers having different versions for the selected printer or the connected printer. If there are a plurality of printer drivers, the controller of the printer is checked. Since the version is acquired and the printer driver corresponding to the version of the controller is automatically selected, the burden on the user for installing the printer driver can be reduced.
[0041]
FIG. 10 is a flowchart showing printer driver installation processing taking into account the upgrade of the controller.
[0042]
First, the printer wizard is launched, and a printer to be used is selected from here (step S1001).
[0043]
Next, it is checked whether or not there are a plurality of versions in the printer driver corresponding to the selected printer (step S1002). If not, the printer driver corresponding to the selected printer is set to the normal printer driver. Installation is performed by the method (step S1007). On the other hand, if it is determined in step S1002 that there are a plurality of versions in the printer driver corresponding to the selected printer, the version information of the printer controller is acquired via a network capable of bidirectional communication such as SNMP. (Step S1003).
[0044]
Next, with reference to the driver table as shown in FIG. 6, it is determined whether or not the printer driver corresponding to the acquired version information of the controller is the latest printer (step S1004). For example, referring to FIG. 6, although there are three versions of the printer controller of the model name Ganon R330-400, the printer driver corresponding to the version information of the controller acquired in step S1003 is the latest version 3. It is determined whether or not it corresponds to x (that is, Ganon R330-400 PCL-3).
[0045]
If it is determined that the printer driver corresponding to the acquired version information of the controller is the latest printer, only the latest printer driver is installed (step S1005). On the other hand, when it is determined that the printer driver corresponding to the acquired controller version information is not the latest for the printer, a printer driver corresponding to the acquired controller version is installed, and a printer for a newer controller version is installed. The driver is also installed internally (step S1006). “Internal installation” means, for example, that the controller is upgraded for function expansion, which has a great influence on the function of the driver. In order to realize this function, a new driver module (DLL) is installed. When it is necessary to create the data, it means holding in advance in consideration of the upgrade of the controller as described above.
[0046]
If the controller is upgraded after the processing of step S1006, the printer notifies the host computer of version information of the controller at an arbitrary timing. The timing of notifying the version information here may be when the user gives an instruction from the graphic user interface of the printer driver.
[0047]
As a result of the host computer obtaining the controller version information, if it is determined that a printer driver whose version is newer than the currently installed printer driver is held internally, for example, “the controller is upgraded”. Install the corresponding new printer driver and display the message “Yes or Cancel”.
[0048]
If Yes is selected, the old printer driver is deleted and a new printer driver is automatically installed.
[0049]
With the above processing, it is possible to automatically upgrade the printer driver corresponding to the upgrade of the controller, so that the user can be released from the printer driver update work accompanying the upgrade of the controller.
[0050]
(Other embodiments)
Although the embodiments of the present invention have been described in detail above, the present invention comprises a single device even when applied to a system composed of a plurality of devices (for example, a host computer, an interface device, a reader, a printer, etc.). You may apply to an apparatus (for example, a copying machine, a facsimile machine, etc.).
[0051]
In the present invention, a software program (a program corresponding to the flowchart shown in any of FIGS. 4, 5, and 10) for realizing the functions of the above-described embodiments is directly or remotely supplied to a system or apparatus. And the case where the computer of the system or apparatus also achieves by reading and executing the supplied program.
[0052]
Accordingly, since the functions of the present invention are implemented by computer, the program code installed in the computer also implements the present invention. That is, the scope of the claims of the present invention includes the computer program itself for realizing the functional processing of the present invention.
[0053]
In that case, the program may be in any form, such as an object code, a program executed by an interpreter, or script data supplied to the OS as long as it has a program function.
[0054]
Examples of the storage medium for supplying the program include a flexible disk, an optical disk (CD-ROM, CD-R, CD-RW, DVD, etc.), a magneto-optical disk, a magnetic tape, and a memory card.
[0055]
In addition, the program supply method includes a mode in which the program of the present invention is acquired by file transfer via the Internet.
[0056]
Further, the program of the present invention is encrypted, stored in a storage medium such as a CD-ROM and distributed to users, and the user who clears predetermined conditions is allowed to acquire key information for decryption via the Internet, By using the key information, an encrypted program can be executed and installed in a computer.
[0057]
In addition to the functions of the above-described embodiments being realized by the computer executing the read program, the OS or the like running on the computer based on an instruction of the program may be a part of the actual processing or All the functions are performed, and the functions of the above-described embodiments can be realized by the processing.
[0058]
Furthermore, after the program read from the storage medium is written to a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion board or The CPU or the like provided in the function expansion unit performs part or all of the actual processing, and the functions of the above-described embodiments are also realized by the processing.
[0059]
【The invention's effect】
As described above, according to the present invention, even when a plurality of device drivers having different versions exist for a certain peripheral device, the device driver of the version to be installed is automatically selected correctly, and the device It is possible to reduce the burden on the user for the driver installation work.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating a configuration of a printing system according to an embodiment.
FIG. 2 is a diagram illustrating a functional configuration related to typical print processing of a host computer in the embodiment.
FIG. 3 is a diagram illustrating a functional configuration related to typical print processing of the host computer in the embodiment in more detail.
FIG. 4 is a flowchart illustrating printer driver installation processing using a printer wizard according to the embodiment.
FIG. 5 is a flowchart illustrating printer driver installation processing by plug and play in the embodiment.
FIG. 6 is a diagram illustrating a structure example of a driver table in the embodiment.
FIG. 7 is a diagram illustrating a correspondence relationship between a printer and a printer driver in the embodiment.
FIG. 8 is a diagram illustrating a correspondence relationship between a printer and a printer driver in the embodiment.
FIG. 9 is a diagram illustrating a correspondence relationship between a printer and a printer driver in the embodiment.
FIG. 10 is a flowchart illustrating printer driver installation processing taking into account controller upgrades according to the exemplary embodiment.

Claims (6)

記憶装置を備え、遠隔の装置から取得可能なプリンタドライバを用いてプリンタの動作を制御するホストコンピュータであって、
使用するプリンタを選択する選択手段と、
前記選択手段により選択された前記プリンタにおけるコントローラのバージョン情報を取得する取得手段と、
前記取得手段がコントローラのバージョン情報として第1のバージョンを取得し、前記選択手段により選択された前記プリンタに対応するプリンタドライバに複数のバージョンがあり、かつ、当該複数のバージョンのプリンタドライバの中に前記第1のバージョンのコントローラに対してバージョンアップされた際のコントローラのバージョン情報である第2のバージョン対応するバージョンのプリンタドライバが含まれている場合、前記第2のバージョン対応するバージョンのプリンタドライバを前記記憶装置に記憶させる一方で、前記プリンタドライバを前記取得手段が取得した第1のバージョンコントローラを備えるプリンタを動作させることができる設定状態となるよう制御する制御手段とを備え、
前記制御手段は更に、前記プリンタドライバが前記第1のバージョンのコントローラを備えるプリンタを動作させることができる設定状態とされているときに前記取得手段がコントローラのバージョン情報として前記第2のバージョンを取得した場合、
記記憶装置に記憶した前記第2のバージョン対応するバージョンのプリンタドライバを、前記第2のバージョンコントローラを備えるプリンタを動作させることができる設定状態となるよう制御する
ことを特徴とするホストコンピュータ。
A host computer comprising a storage device and controlling the operation of the printer using a printer driver obtainable from a remote device ;
A selection means for selecting a printer to be used;
Acquiring means for acquiring controller version information in the printer selected by the selecting means;
The acquisition unit acquires a first version as version information of a controller , and there are a plurality of versions of the printer driver corresponding to the printer selected by the selection unit, and the printer drivers of the plurality of versions If the version of the printer driver corresponding to the second version is version information of the controller when it is upgraded to the first version of the controller is included, the version corresponding to the second version the printer driver while to be stored in the storage device, and control means for controlling so that the first version set state controller Ru can operate the printer with a of the acquisition unit printer driver acquires Prepared,
It said control means further when the printer driver is a set ready to operate the printer with a controller of the first version, the acquisition means is the second version as the version information of the controller If acquired ,
The version of the printer driver corresponding to the second version of the previously stored Kiki憶device, and controlling so as to be set ready to operate the printer comprising a controller of the second version Host computer.
前記制御手段は更に
前記プリンタドライバが前記第1のバージョンのコントローラを備えるプリンタを動作させることができる設定状態とされているときに、前記取得手段がコントローラのバージョン情報として前記第2のバージョンを取得した場合、
前記第1のバージョン対応するプリンタドライバを削除して、前記記憶装置に記憶した前記第2のバージョン対応するバージョンのプリンタドライバを、前記第2のバージョンのコントローラを備えるプリンタを動作させることができる設定状態となるよう制御する
ことを特徴とする請求項1に記載のホストコンピュータ。
The control means further includes
When the acquisition unit acquires the second version as the version information of the controller when the printer driver is in a setting state in which a printer including the controller of the first version can be operated ,
Remove the printer driver corresponding to the first version, previous versions of the printer driver corresponding to the second version stored in Kiki憶device, operating a printer comprising a controller of the second version The host computer according to claim 1, wherein the host computer is controlled to be in a setting state that can be set.
前記制御手段は更に、The control means further includes
前記プリンタドライバが前記第1のバージョンのコントローラを備えるプリンタを動作させることができる設定状態とされているときに、前記取得手段がコントローラのバージョン情報として前記第2のバージョンを取得した場合、When the acquisition unit acquires the second version as the version information of the controller when the printer driver is in a setting state in which a printer including the controller of the first version can be operated,
ユーザに対して前記プリンタのコントローラがバージョンアップされた旨の通知とともに、前記第2のバージョンに対応するバージョンのプリンタドライバを設定状態とするか否かを確認するための表示を行わせ、当該表示に基づき前記第2のバージョンに対応するバージョンのプリンタドライバを設定状態とすることを確認した際に、前記記憶装置に記憶した前記第2のバージョンに対応するバージョンのプリンタドライバを設定状態となるよう制御するA notification to the user that the printer controller has been upgraded is displayed together with a display for confirming whether or not to set the printer driver of the version corresponding to the second version. The printer driver of the version corresponding to the second version stored in the storage device is set to the setting state when it is confirmed that the version of the printer driver corresponding to the second version is set to the setting state based on Control
ことを特徴とする請求項1に記載のホストコンピュータ。The host computer according to claim 1.
記憶装置を備え、遠隔の装置から取得可能なプリンタドライバを用いてプリンタの動作を制御するホストコンピュータの制御方法であって、
使用するプリンタを選択する選択ステップと、
前記選択ステップで選択された前記プリンタにおけるコントローラのバージョン情報を取得する取得ステップと、
前記取得ステップでコントローラのバージョン情報として第1のバージョンを取得し、前記選択ステップで選択された前記プリンタに対応するプリンタドライバに複数のバージョンがあり、かつ、当該複数のバージョンのプリンタドライバの中に前記第1のバージョンのコントローラに対してバージョンアップされた際のコントローラのバージョン情報である第2のバージョン対応するバージョンのプリンタドライバが含まれている場合、前記第2のバージョン対応するバージョンのプリンタドライバを前記記憶装置に記憶させる一方で、前記プリンタドライバを前記取得ステップで取得した第1のバージョンコントローラを備えるプリンタを動作させることができる設定状態となるよう制御する制御ステップとを備え、
前記制御ステップでは更に、前記プリンタドライバが前記第1のバージョンのコントローラを備えるプリンタを動作させることができる設定状態とされているときに前記取得ステップでコントローラのバージョン情報として前記第2のバージョンを取得した場合、
記記憶装置に記憶した前記第2のバージョン対応するバージョンのプリンタドライバを、前記第2のバージョンコントローラを備えるプリンタを動作させることができる設定状態となるよう制御する
ことを特徴とするホストコンピュータの制御方法。
A method for controlling a host computer, which includes a storage device and controls the operation of a printer using a printer driver that can be acquired from a remote device ,
A selection step to select the printer to use;
An acquisition step of acquiring version information of a controller in the printer selected in the selection step;
The first version is acquired as the controller version information in the acquisition step , and there are a plurality of versions of the printer driver corresponding to the printer selected in the selection step, and among the printer drivers of the plurality of versions If the version of the printer driver corresponding to the second version is version information of the controller when it is upgraded to the first version of the controller is included, the version corresponding to the second version the printer driver while to be stored in the storage device, and a control step of controlling so that the first version set state controller Ru can operate the printer with a of the printer driver has been acquired by the acquisition step Prepared,
Yet the control step, when the printer driver is a set ready to operate the printer with a controller of the first version, the second version as the version information of the controller by the obtaining step If acquired ,
The version of the printer driver corresponding to the second version of the previously stored Kiki憶device, and controlling so as to be set ready to operate the printer comprising a controller of the second version How to control the host computer.
記憶装置を備え、遠隔の装置から取得可能なプリンタドライバを用いてプリンタの動作を制御するホストコンピュータによって実行されるプログラムであって、当該ホストコンピュータを、
使用するプリンタを選択する選択手段、
前記選択手段により選択された前記プリンタにおけるコントローラのバージョン情報を取得する取得手段、
前記取得手段がコントローラのバージョン情報として第1のバージョンを取得し、前記選択手段により選択された前記プリンタに対応するプリンタドライバに複数のバージョンがあり、かつ、当該複数のバージョンのプリンタドライバの中に前記第1のバージョンのコントローラに対してバージョンアップされた際のコントローラのバージョン情報である第2のバージョン対応するバージョンのプリンタドライバが含まれている場合、前記第2のバージョン対応するバージョンのプリンタドライバを前記記憶装置に記憶させる一方で、前記プリンタドライバを前記取得手段が取得した第1のバージョンコントローラを備えるプリンタを動作させることができる設定状態となるよう制御し、更に、前記プリンタドライバが前記第1のバージョンのコントローラを備えるプリンタを動作させることができる設定状態とされているときに前記取得手段がコントローラのバージョン情報として前記第2のバージョンを取得した場合には、前記記憶装置に記憶した前記第2のバージョン対応するバージョンのプリンタドライバを、前記第2のバージョンコントローラを備えるプリンタを動作させることができる設定状態となるよう制御する制御手段、
として機能させることを特徴とするプログラム。
A program that is executed by a host computer that includes a storage device and controls the operation of the printer using a printer driver that can be acquired from a remote device ,
Selection means for selecting the printer to use,
Acquisition means for acquiring controller version information in the printer selected by the selection means;
The acquisition unit acquires a first version as version information of a controller , and there are a plurality of versions of the printer driver corresponding to the printer selected by the selection unit, and the printer drivers of the plurality of versions If the version of the printer driver corresponding to the second version is version information of the controller when it is upgraded to the first version of the controller is included, the version corresponding to the second version the printer driver while to be stored in the storage device, and controlled to be the first version set state controller Ru can operate the printer with a of the acquisition unit printer driver acquires, further, the the printer driver is the first bar When it possible to operate the printer including a controller ® emission is a set ready, when the acquisition unit has acquired the second version as the version information of the controller, before Kiki憶device storage wherein the second version of the printer driver corresponding to the version, the second version of the control means for controlling so as to be set state controller can operate the printer comprising that,
A program characterized by functioning as
請求項に記載のプログラムを格納したコンピュータ読み取り可能な記憶媒体。A computer-readable storage medium storing the program according to claim 5 .
JP2002257848A 2002-09-03 2002-09-03 HOST COMPUTER, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM Expired - Fee Related JP4313998B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002257848A JP4313998B2 (en) 2002-09-03 2002-09-03 HOST COMPUTER, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002257848A JP4313998B2 (en) 2002-09-03 2002-09-03 HOST COMPUTER, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM

Publications (2)

Publication Number Publication Date
JP2004094794A JP2004094794A (en) 2004-03-25
JP4313998B2 true JP4313998B2 (en) 2009-08-12

Family

ID=32062661

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002257848A Expired - Fee Related JP4313998B2 (en) 2002-09-03 2002-09-03 HOST COMPUTER, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM

Country Status (1)

Country Link
JP (1) JP4313998B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5460215B2 (en) * 2009-09-29 2014-04-02 キヤノン株式会社 Information processing apparatus and method

Also Published As

Publication number Publication date
JP2004094794A (en) 2004-03-25

Similar Documents

Publication Publication Date Title
US7779168B2 (en) Information processing apparatus, information processing method, and computer-readable memory medium storing program for realizing the method
US6965953B2 (en) Information processing apparatus, method for controlling information processing apparatus, and storage medium storing program for realizing the method
JP4817474B2 (en) Data processing apparatus, data processing method, and storage medium storing computer-readable program
US7600052B2 (en) Peripheral device control method, control program, and apparatus therefor
US20040001215A1 (en) Print control apparatus, print control method, program product, and print system
JP2000190573A (en) Method for controlling printing and printing system
JP4343604B2 (en) Printing system, information processing apparatus, installation method, and program
JP5527992B2 (en) Print control method, print control apparatus, and computer program
JP4438064B2 (en) Data processing apparatus, print setting processing method, storage medium storing computer-readable program, and program
JP4926807B2 (en) Information processing apparatus and information processing method
US8625144B2 (en) Apparatuses and methods for switching between printing apparatuses
JP3733284B2 (en) Information processing apparatus, printing system, and command generation method
JP2005173701A (en) Information processor, information processing method, and program therefor
JP4313998B2 (en) HOST COMPUTER, ITS CONTROL METHOD, PROGRAM, AND STORAGE MEDIUM
JP2009003712A (en) Printing system and control method
JP2005018494A (en) Data processor, method for creating print data, storage medium for storing computer readable program, and program
JP3817499B2 (en) Information processing apparatus, control method, and control program
JP3817500B2 (en) Information processing apparatus, control method, and control program
JPH10283129A (en) Printing controller, installation method for printing control program and storage medium
JP2008139912A (en) Information processor, image forming device, method for controlling them, and computer program
JP2007207003A (en) Information processor, driver setting method, storage medium and program
JP2002108580A (en) Information processing apparatus and printing system and module deciding method
JP2000298565A (en) Method and device for controlling printing and storage medium storing program for executing the printing controlling method
JP4143598B2 (en) Management method in information processing apparatus, information processing apparatus, program, and storage medium
JP2005159764A (en) Recording method, apparatus, program, and storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070424

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070706

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080502

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080626

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090518

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120522

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4313998

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120522

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130522

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140522

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees