JP5531858B2 - プリンタドライバ更新プログラム、およびプリンタドライバ更新方法 - Google Patents

プリンタドライバ更新プログラム、およびプリンタドライバ更新方法 Download PDF

Info

Publication number
JP5531858B2
JP5531858B2 JP2010186642A JP2010186642A JP5531858B2 JP 5531858 B2 JP5531858 B2 JP 5531858B2 JP 2010186642 A JP2010186642 A JP 2010186642A JP 2010186642 A JP2010186642 A JP 2010186642A JP 5531858 B2 JP5531858 B2 JP 5531858B2
Authority
JP
Japan
Prior art keywords
printer driver
update
printer
updated
version
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
JP2010186642A
Other languages
English (en)
Other versions
JP2012043381A (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.)
Konica Minolta Inc
Original Assignee
Konica Minolta 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 Konica Minolta Inc filed Critical Konica Minolta Inc
Priority to JP2010186642A priority Critical patent/JP5531858B2/ja
Priority to US13/211,528 priority patent/US8804172B2/en
Publication of JP2012043381A publication Critical patent/JP2012043381A/ja
Application granted granted Critical
Publication of JP5531858B2 publication Critical patent/JP5531858B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Description

本発明は、プリンタドライバを更新するためのプリンタドライバ更新プログラム、およびプリンタドライバ更新方法に関する。
従来からネットワークによって複数のコンピュータと複数のプリンタ(印刷機器)が接続されたシステム形態がある。
こうしたネットワークを利用したシステムの一形態として、少なくとも1台のコンピュータ(これをサーバコンピュータという)と他のコンピュータ(これをクライアントコンピュータという)によって構成したシステムがある。このシステムでは、クライアントコンピュータがプリンタを使用する際には、サーバコンピュータにおいてクライアントコンピュータに対するプリンタの共有を許可する。これによりクライアントコンピュータは、サーバコンピュータからドライバの供給を受ける。そして、クライアントコンピュータは供給されたプリンタドライバを使用して印刷を実行する(たとえば非特許文献1)。
また、このようなネットワークを利用したシステム形態では、1つのコンピュータ内にインストールされる一つのプリンタドライバで、種類が異なる複数のプリンタに対しても印刷実行することのできる、複数機種共通のプリンタドライバが提案されている(たとえば非特許文献2)。
一方、プリンタドライバは、コンピュータが実行するプログラムの一つであり、プログラムとして提供される手順の変更や追加などによりアップデート(更新)が行われる。
このようなアップデートの一形態として、サーバコンピュータのプリンタドライバに追加モジュールがあると、それをそのサーバコンピュータのオペレーティングシステム(OS)に組み込み、さらにそのプリンタドライバが制御するプリンタを共有する他のコンピュータに対しても、追加モジュールのあることを通知する技術がある(特許文献1)。
ところで、コンピュータの心臓部であるマイクロプロセッサが、現在主流である32ビット(32ビットアーキテクチャ)から64ビット(64ビットアーキテクチャ)へと移行しつつかる(64ビットRISC型マイクロプロセッサについてたとえば非特許文献3、64ビットプロセッサ用のオペレーティングシステムについてたとえば非特許文献4)。
このため、共有されるプリンタに対して異なるアーキテクチャーのコンピュータがネットワーク上に接続されることになる。そのような場合、従来技術(特許文献1)では、サーバコンピュータとクライアントコンピュータでアーキテクチャーの異なる場合、サーバコンピュータにおいてモジュールが追加(更新)されたドライバは、同じアーキテクチャーのクライアントコンピュータに対してはその更新を通知できるが、アーキテクチャーの異なるクライアントコンピュータに対しては更新の通知ができない。これはアーキテクチャーが異なるためにオペレーティングシステム自体も違うため、サーバコンピュータにおいては自分のオペレーティングシステムにあったドライバしか更新されていないので、アーキテクチャーが異なることで異なるオペレーティングシステムとなっているクライアントコンピュータ用のドライバまでは更新されていないからである。
特開2009−187557号公報
ウインドーズポイントアンドプリント、[online]マイクロソフト社、インターネット<http://www.microsoft.com/japan/windowsserver2003/techinfo/overview/pointandprint.mspx>ページ内のダウンロードリンク先の書類<http://download.microsoft.com/download/6/6/8/668b964f-f126-4a96-88db-25d842a7113f/pointandprint.doc> HP Universal Print Driver、[online]ヒューレット・パッカード カンパニー(HP)、インターネット<http://h20338.www2.hp.com/Hpsub/cache/343033-0-0-225-121.html> 特許庁ホームページ標準技術集、半導体IP(Intellectual Property)関連技術、1−3−9 32/64ビットマイクロプロセッサ(技術名称)64ビット RISC型マイクロプロセッサ[online]インターネット<http://www.jpo.go.jp/shiryou/s_sonota/hyoujun_gijutsu/handoutai_ip/1-3-9.htm> Windows7の機能、64ビットサポート[online]マイクロソフト社、インターネット<http://windows.microsoft.com/ja-JP/windows7/products/features/64-bit-support>
本発明の目的は、一つのコンピュータで実行されているオペレーティングシステム用のプリンタドライバが更新されたときに、異なるオペレーティングシステム用のプリンタドライバの更新も行うことのできるプリンタドライバ更新プログラム、およびプリンタドライバ更新方法を提供することにある。
本発明の上記目的は、下記の手段によって達成される。
(1)コンピュータ上で動作しているオペレーティングシステム用のプリンタドライバである自OS用プリンタドライバが存在するか否かを確認する手順(a)と、前記コンピュータ上で動作しているオペレーティングシステムとは異なるオペレーティングシステム用のプリンタドライバである他OS用プリンタドライバが存在するか否かを確認する手順(b)と、前記手順(a)で存在確認された自OS用プリンタドライバおよび前記手順(b)で存在確認された他OS用プリンタドライバのそれぞれのバージョンを取得する手順(c)と、前記手順(c)で取得した前記バージョンに対応してあらかじめ決められた更新方法に従い前記自OS用および/または前記他OS用のプリンタドライバを更新するか否かを選択する手順(d)と、前記手順(d)で更新することが選択された前記プリンタドライバを更新する手順(e)と、を有する各手順をコンピュータに実行させることを特徴とするプリンタドライバ更新プログラム。
(2)前記更新方法は、自OS用プリンタドライバが存在しているが更新対象のバージョンではなくかつ他OS用のプリンタドライバが存在して更新対象のバージョンである場合、または自OS用プリンタドライバが存在して更新対象のバージョンであっても他OS用のプリンタドライバが存在しているが更新対象のバージョンではない場合は、更新処理を行わないことが規定されていることを特徴とする(1)記載のプリンタドライバ更新プログラム。
(3)前記更新方法は、自OS用プリンタドライバが存在しかつ更新対象のバージョンであ、他OS用のプリンタドライバが存在していない場合は更新処理を行うことが規定されていることを特徴とする(1)または(2)記載のプリンタドライバ更新プログラム。
(4)前記更新方法は、自OS用および他OS用のプリンタドライバが共に存在しかつ共に更新対象のバージョンである場合は、自OS用および他OS用の両方のプリンタドライバの更新処理を行うことが規定されていることを特徴とする(1)〜(3)のいずれか一つに記載のプリンタドライバ更新プログラム。
(5)前記更新方法は、自OS用および他OS用のいずれか一方のみが更新対象となっている場合に、更新対象となっているOS用のみの更新処理を行うことが規定されていることを特徴とする記載のプリンタドライバ更新プログラム。
(6)前記プリンタドライバは、複数の機能に対応したそれぞれのファイルによって構成され、前記更新は、プリンタドライバ更新プログラムと共に提供されるファイルを用いて、前記プリンタドライバを構成するファイルごとに書き替えまたは追加することを特徴とする(1)〜(5)のいずれか一つに記載のプリンタドライバ更新プログラム。
(7)前記手順(d)において更新対象となるバージョンのプリンタドライバを更新する前に、更新するか否かをユーザに確認する手順(f)をさらに有することを特徴とする(1)〜(6)のいずれか一つに記載のプリンタドライバ更新プログラム。
(8)前記手順(f)は、前記手順(c)で取得した前記バージョンが、あらかじめ決められた特別仕様であることを示している場合にのみ実行することを特徴とする(7)に記載のプリンタドライバ更新プログラム。
(9)前記プリンタドライバは、機能の異なる複数のプリンタに対応させたユニバーサルプリンタドライバであり、前記プリンタドライバを構成する前記ファイルは、当該ユニバーサルプリンタドライバを構成する複数のプリンタに共通の機能を実行させるための共通機能部のファイルと、プリンタの機種ごとの個別の機能を実行させるための機種別機能部のファイルであることを特徴とする(6)〜(8)のいずれか一つに記載のプリンタドライバ更新プログラム。
(10)(1)〜(9)のいずれか一つに記載のプリンタドライバ更新プログラムを記録したコンピュータ読み取り可能な記録媒体。
(11)コンピュータ上で動作しているオペレーティングシステム用のプリンタドライバである自OS用プリンタドライバが存在するか否かを確認するステップ(a)と、
前記コンピュータ上で動作しているオペレーティングシステムとは異なるオペレーティングシステム用のプリンタドライバである他OS用プリンタドライバが存在するか否かを確認するステップ(b)と、前記ステップ(a)で存在確認された自OS用プリンタドライバおよび前記ステップ(b)で存在確認された他OS用プリンタドライバのそれぞれのバージョンを取得するステップ(c)と、前記ステップ(c)で取得した前記バージョンに対応してあらかじめ決められた更新方法に従い前記自OS用および/または前記他OS用のプリンタドライバを更新するか否かを選択するステップ(d)と、前記ステップ(d)で更新することが選択された前記プリンタドライバを更新するステップ(e)と、を有する各ステップをコンピュータに実行させることを特徴とするプリンタドライバ更新方法。
(12)前記更新方法は、自OS用プリンタドライバが存在しているが更新対象のバージョンではなくかつ他OS用のプリンタドライバが存在して更新対象のバージョンである場合、または自OS用プリンタドライバが存在して更新対象のバージョンであっても他OS用のプリンタドライバが存在しているが更新対象のバージョンではない場合は、更新処理を行わないことが規定されていることを特徴とする(11)記載のプリンタドライバ更新方法。
(13)前記更新方法は、自OS用プリンタドライバが存在しかつ更新対象のバージョンであ、他OS用のプリンタドライバが存在していない場合は更新処理を行うことが規定されていることを特徴とする(11)または(12)記載のプリンタドライバ更新方法。
(14)前記更新方法は、自OS用および他OS用のプリンタドライバが共に存在しかつ共に更新対象のバージョンである場合は、自OS用および他OS用の両方のプリンタドライバの更新処理を行うことが規定されていることを特徴とする1113のいずれか一つに記載のプリンタドライバ更新方法。
(15)前記更新方法は、自OS用および他OS用のいずれか一方のみが更新対象となっている場合に、更新対象となっているOS用のみの更新処理を行うことが規定されていることを特徴とする(11)に記載のプリンタドライバ更新方法。
(16)前記プリンタドライバは、複数の機能に対応したそれぞれのファイルによって構成され、前記更新は、プリンタドライバ更新方法と共に提供されるファイルを用いて、前記プリンタドライバを構成するファイルごとに書き替えまたは追加することを特徴とする(11)〜(15)のいずれか一つに記載のプリンタドライバ更新方法。
(17)前記ステップ(d)において更新対象となるバージョンのプリンタドライバを更新する前に、更新するか否かをユーザに確認するステップ(f)をさらに有することを特徴とする(11)〜(16)のいずれか一つに記載のプリンタドライバ更新方法。
(18)前記ステップ(f)は、前記ステップ(c)で取得した前記バージョンが、あらかじめ決められた特別仕様であることを示している場合にのみ実行することを特徴とする(17)に記載のプリンタドライバ更新方法。
(19)前記プリンタドライバは、機能の異なる複数のプリンタに対応させたユニバーサルプリンタドライバであり、前記プリンタドライバを構成する前記ファイルは、当該ユニバーサルプリンタドライバを構成する複数のプリンタに共通の機能を実行させるための共通機能部のファイルと、プリンタの機種ごとの個別の機能を実行させるための機種別機能部のファイルであることを特徴とする(16)〜(18)のいずれか一つに記載のプリンタドライバ更新方法。
本発明によれば、コンピュータに存在する複数の異なるオペレーティングシステム用のプリンタドライバを確認したうえで、存在が確認されたプリンタドライバについて更新対象となるバージョンであるか否かを確認して、適切な更新を行うこととした。これによりコンピュータに存在する複数の異なるオペレーティングシステム用のプリンタドライバを一度に更新(アップデート)することができる。
本発明の一実施形態にかかる印刷システムの全体構成を示すブロック図である。 コンピュータのハードウェア構成を示すブロック図である。 プリンタのハードウェア構成を示すブロック図である。 コンピュータによって実行されるプリンタの制御を行うためのプリンタドライバの機能を説明するためのブロック図である。 プリンタドライバ更新プログラムパッケージの一例を示す図である。 プリンタドライバ更新プログラムの手順を示すフローチャートである。 バージョン情報表示処理の手順を示すサブルーチンフローチャートである。 バージョン情報の表示例を示す図面である。
以下、図面を参照して、本発明の実施形態を詳細に説明する。
図1は、本発明の一実施形態にかかる印刷システムの全体構成を示すブロック図である。
図1に示す印刷システムは、ネットワーク50によって接続された少なくとも一つのプリントサーバコンピュータ100と、複数のクライアントコンピュータ110、120と、複数のプリンタ(印刷機器)20A,20B,20Cとを含む。
プリントサーバコンピュータ100およびクライアントコンピュータ110、120は、いわゆるパソコンやワークステーションなどと称されるものである。基本的なハードウェアはどちらも同じである。プリントサーバコンピュータ100とクライアントコンピュータ110、120の違いは、その主たる機能の違いである。
プリントサーバコンピュータ100は、各クライアントコンピュータ110、120に対して、各クライアントコンピュータ110、120のオペレーティングシステムに対応したプリンタドライバの供給を行っている。一方、クライアントコンピュータ110、120は末端のユーザが文書や図形などの印刷するデータを作成するために用いられる。そして、クライアントコンピュータ110、120は、プリントサーバコンピュータ100からプリンタドライバの供給を受ける。
印刷の実行は、たとえば、プリントサーバコンピュータ100が、クライアントコンピュータ110、120からの印刷ジョブを受け取って、クライアントコンピュータ110、120によって指定されたプリンタ(20A,20B,20Cのいずれか一つ)に対応したデータ変換(印刷ジョブのレンダリングなど)を行ってうえで、指定されたプリンタに対して印刷実行を指令する。また、クライアントコンピュータ110、120が自身で指定したプリンタに対応したデータ変換(印刷ジョブのレンダリングなど)を行ったうえで、プリントサーバコンピュータ100へレンダリング後のデータを送信して、プリントサーバコンピュータ100がプリンタに対して印刷実行を指令する(これらは従来技術、たとえば特許文献1や非特許文献1と同様であるので詳細な説明は省略する)。また、PDL(ページ記述言語(Page Description Language))に対応したプリンタに対しては、プリントサーバコンピュータ100からはプリンタドライバの供給を受けるだけで、クライアントコンピュータ110、120からの印刷実行は、直接、プリンタに対してPDLによる印刷ジョブを送信して実行させることもできる。これらは周知であるので詳細な説明は省略する。
そして、本実施形態では、プリントサーバコンピュータ100およびクライアントコンピュータ110、120のそれぞれは32ビットアーキテクチャーまたは64ビットアーキテクチャーによって構成されている。ここでは、プリントサーバコンピュータ100は32ビットアーキテクチャーで動作しており、クライアントコンピュータ110は32ビットアーキテクチャー、クライアントコンピュータ120は64ビットアーキテクチャーで動作しているものとする。なお、32ビットアーキテクチャーとはCPUとして32ビットマイクロプロセッサを備え、整数型、メモリアドレス、その他のデータサイズなどが、最大32ビット幅を備えているコンピュータをいう。同様に、64ビットアーキテクチャーとは64ビットマイクロプロセッサを備え、整数型、メモリアドレス、その他のデータサイズなどが、最大64ビット幅を備えているコンピュータをいう。これらのアーキテクチャーの違いにより、オペレーティングシステムも異なる。32ビットアーキテクチャーのコンピュータでは32ビットオペレーティングシステムが使用され、64ビットアーキテクチャーのコンピュータでは64ビットオペレーティングシステムが使用される。
なお、64ビットアーキテクチャーのコンピュータにおいては32ビットオペレーティングシステムが使用可能である。このため64ビットアーキテクチャーのコンピュータに、32ビットアーキテクチャーのコンピュータに使用する32ビットオペレーティングシステムと同じオペレーティングシステムが使用される場合もある。ただし、本実施形態では64ビットアーキテクチャーのコンピュータには、64ビットオペレーティングシステムを用いた場合を例に説明する。
プリンタ20A,20B,20Cは、さまざまな機能を有するプリンタであるが、全てのプリンタが同じ機能を有しているとは限らない。たとえば、あるプリンタは印刷ジョブとしてPDLに対応しているが他のプリンタは対応していない。また、あるプリンタは、自動両面印刷機能、仕分け、ステープル、穴あけなどのフィニッシャー機能などを有しているが、他のプリンタはこれらの機能の全部または一部を有していないなどである。ただし、プリントサーバコンピュータ100またはクライアントコンピュータ110、120からの印刷ジョブを受け取って印刷する基本機能は同じである。
ネットワーク50は、たとえば、イーサネット(登録商標)、トークンリング、およびFDDI等の規格によりプリントサーバコンピュータ100やネットワーク機器同士を接続したLAN、またはLAN同士を専用線で接続したWAN等の各種のネットワークである。
なお、ネットワーク50に接続されるコンピュータ、プリンタなどの台数は、図1に示される例に限定されない。
図2は、プリントサーバコンピュータ100およびクライアントコンピュータ110、120のハードウェア構成を示すブロック図である。
プリントサーバコンピュータ100およびクライアントコンピュータ110、120のハードウェア構成はアーキテクチャーが異なっていても同じである。これらは周知の技術であるから、ここでは概略のみ説明する。図2においては、これらコンピュータを総称してコンピュータ10とした。コンピュータ10は、CPU(Central Processing Unit)11、ROM(Read Only Memory)12、RAM(Random Access Memory)13、ハードディスク14(HDD:Hard disk drive)、および通信インタフェース15(NIC:Network Interface Card)を含み、これらは信号をやりとりするためのバス18を介して相互に接続されている。また、入力装置16やディスプレイ17が接続または内蔵されている。
CPU11はプログラムに従って上記各部の制御や各種の演算処理を行う。ROM12はコンピュータ10の起動や基本的な機能に必要なプログラムを格納している。RAM13はCPU11の処理に必要な作業領域としてプログラムおよびデータを一時記憶するために使用される。ハードディスク14は、不揮発性の読み書き自在な記憶装置であり、オペレーティングシステム(OS)、ドライバプログラム、各種アプリケーションプログラムなどのプログラムや、各種データを格納する。通信インタフェース15は、ネットワーク50を介して他の機器と通信するためのインタフェースであり、イーサネット(登録商標)、トークンリング、FDDI等の規格に対応して、他の機器(ここでは他のコンピュータおよびプリンタ)との通信制御を行う。入力装置16はキーボードやポインティングデバイスなどであり、ディスプレイ17は表示(出力)装置である。
図3は、図1に示されるプリンタ20A,20B,20Cのハードウェア構成を示すブロック図である。プリンタ20A,20B,20Cは、既に説明したように、それぞれ個別の機能として異なる機能を有するものではあるが、基本的な印刷機能は同じである。ここでは、代表的なハードウェア構成として、PDLに対応したページプリンタ(レーザプリンタ)の概略構成を説明する。なお、図3においてはプリンタ20として示した。
プリンタ20は、CPU21、印刷部22、RAM23、画像形成部24、ハードディスク25(HDD)、および通信インタフェース26(NIC)を含み、これらは信号をやりとりするためのバス28を介して相互に接続されている。
CPU21は、送られてきた印刷ジョブを解析して、画像形成部24に印刷ジョブの中から画像データを展開させ、印刷部22に対して展開された画像データの印刷を実行させるなど、プリンタ全体の制御を行う。
印刷部22は、電子写真式プロセス等の周知の作像プロセスを用いて、画像形成部24で作成された画像を用紙等の記録媒体に印刷する。
RAM23は、主にCPU21の処理に必要なデータの展開を行うために使用される揮発性メモリである。
画像形成部24は、コンピュータ10から送られてきた印刷ジョブの印刷データに基づいて画像形成を行って、形成した画像データを印刷部22へ送る。
ハードディスク25は、送られてきた印刷ジョブを一時記憶すると共に、印刷ジョブがPDLデータの場合に画像形成部24によって展開された画像データを記憶する。
通信インタフェース26は、接続されるネットワークの規格に応じてコンピュータ10との通信を行う。
なお、プリンタ20A,20B,20Cとしては、ここで説明したプリンタに限らず、たとえば、画像形成部24やHDD25を有しない(すなわち、プリンタ自身ではデータの展開(レンダリング)を行わないものや、電子写真方式のページプリンタに限らずインクジェットプリンタなどであってもよい。
次に上述した印刷システムの作用を説明する。
まず、プリンタに対して印刷を実行させるための制御プログラムであるプリンタドライバについて説明する。プリンタドライバはプリントサーバコンピュータ100およびクライアントコンピュータ110、120のそれぞれに導入されている。プリンタドライバは、プリントサーバコンピュータ100およびクライアントコンピュータ110、120のそれぞれのアーキテクチャー(32ビットまたは64ビット)に対応したプログラムである。
図4は、コンピュータによって実行されるプリンタの制御を行うためのプリンタドライバの機能を説明するためのブロック図である。
このプリンタドライバ200は、ユニバーサルプリンタドライバであり、機能の異なるプリンタに対して一つのプリンタドライバで対応することができるものである。その主な機能は、ネットワーク50を介してプリンタと通信し、出力可能なプリンタの検出を行い、その中からユーザが所望するプリンタを選択して、ユーザの指示に従い印刷設定を行い、印刷ジョブの出力および印刷実行の指令などを行う。
このような機能を提供するプリンタドライバ200は、共通機能部201、機種別機能部202、プリンタ切替部203、バージョン情報記憶部204からなる。プリンタドライバ200は、これらの各機能部がオペレーティングシステム500に組み込まれるように導入されており、印刷出力を行う際に呼び出されて実行される。
共通機能部201は、全てのプリンタに対し共通で使用する機能、およびこのプリンタドライバ全体の制御を司る機能を有する。具体的には、たとえば印刷出力のための描画処理、印刷設定画面の制御、機種別機能部および印刷装置切替部、バージョン情報記憶部間のやりとりの制御など、プリンタドライバの核となる処理を行う。
機種別機能部202は、プリンタの個別の機能に応じて機種別に用意されたプログラム(それぞれの機能を実行するためのファイル郡)である。たとえば、機種Aのプリンタであるプリンタ20Aには機種別機能部A、機種Bのプリンタであるプリンタ20Bには機種別機能部B、機種Cのプリンタであるプリンタ20Cには機種別機能部Cといったように、プリンタの機種ごとに独立したモジュールが対応している。なお、同じ機種(たとえば機種A)のプリンタが複数ある場合はそれらに対応した機種別機能部Aが一つ存在すればよい。ただし、同じ機種のプリンタであっても、搭載している機能が異なる場合(たとえばオプションのフィニッシャー機能を備えているプリンタと、備えていないプリンタが混在している場合)は、同一機種用の機種別機能部202であっても、オプション機能の違いによりそれぞれ機種別機能部202を別々に用意してもよい。
この機種別機能部は、それぞれの機種ごとに、プリンタとしてどのような機能を持ち、どのような配置で画面に表示するか、あるいは画面上にどのような文字列を表示するかといった情報を保持している。そして選択されたプリンタの機種別機能部の持つ情報に従って印刷設定画面が表示される。
プリンタ切替部203は、ネットワーク上の複数のプリンタの中から印刷出力を行うプリンタを選択し、選択されたプリンタに適した機種別機能部202を共通機能部201経由で呼び出す。プリンタを選択する手段としては、ネットワークを経由して取得したプリンタ情報の一覧よりプリンタを選択する、プリンタのIPアドレスおよび機種を直接指定して選択する、過去に使用したプリンタを履歴情報から選んで選択するなどが挙げられる。
バージョン情報記憶部204は、現在のプリンタドライバのバージョン情報を記憶する。プリンタドライバのアップデートが行われた場合、ここで管理されているバージョン情報も書き換えられる。バージョン情報記憶部204は、ここでは機能部として説明したが実際には後述するとおり単純なテキストファイルである。バージョン情報は、プリンタドライバのバージョンを特定するための情報である。具体的にはたとえば、少なくともバージョン番号が含まれる。また、バージョン番号と共に、そのバージョンのプリンタドライバがどのオペレーティングシステムに対応するものであるかを示すための情報を含んでいてもよい。さらにはそのバージョンのリリース日、作成元(製造会社、販売会社など)を含む場合もある。
これらの各機能部は、実際には、オペレーティングシステムに対応したプログラムファイル、オペレーティングシステムに依存しないテキストファイルとして提供される。一例を挙げれば、Windows(登録商標)においては表1のようなファイル群として提供される。
Figure 0005531858
表1においては、概要として各ファイルが上述したどの機能部を担当するものであるかを示した。
各ファイルにおいて、拡張子「exe」および「dll」のファイルはオペレーティングシステムから読み出されて実行されるプログラムファイルである。これらのプログラムファイルは、実行されるオペレーティングシステムに特化していてオペレーティングシステムが異なると実行させることはできない。一方、そのほかの拡張子のファイル(「inf」、「bmp」、「loc」、「ver」など)は、プリンタドライバの動作に必要なパラメータやユーザインターフェース画像などを記憶したファイルであり、オペレーティングシステムが異なっても内容を見ることはできる。特に、「UPD_version.ver」ファイルは、バージョン情報を記憶したファイルである(バージョン情報記憶部)。このことから、それを明示するために拡張子「ver」が付与されている。このファイルの実態は単純なテキストファイルであり、他のオペレーティングシステムであっても内容を見ることができる。したがって、このファイルの内容を見ることで他のオペレーティングシステム用のプリンタドライバであっても、そのバージョンを確認することができる。
次に、プリンタドライバの更新について説明する。
プリンタドライバ200は、プログラム内容の修正や追加などのために更新(バージョンアップ)が行われる。更新はプリンタドライバ全体としてまたは各機能部ごとにファイルの書き換えや追加によって行われる。具体的には表1に示した各ファイルが更新する内容に応じて書き換えられたり、追加されたりする。ここで、プログラム内容の修正とは主にバグの解消や機能の最適化などのために行われる。一方、追加とは全体としてこれまでにない機能の追加、新たなプリンタ機種の追加、個別のプリンタ機種における機能の追加などである。
このような更新処理は、プリンタドライバ更新プログラムが実行されることによって行われる。プリンタドライバ更新プログラムの機能の概略は以下のとおりである。
プリンタドライバ更新プログラムは、自分のオペレーティングシステム(以下、自OSという)に更新対象となっているプリンタドライバがインストールされているかどうかを確認する。また、他のオペレーティングシステム(以下他OSという)用のプリンタドライバがインストールされているかを確認する。さらにそれぞれのプリンタドライバのバージョンを確認して、その結果に応じて自OS用、他OS用のそれぞれに対して、適切な更新処理を行う(更新不要の場合には更新しない)。また、プリンタドライバ更新プログラムは、更新処理が終わった後の更新後バージョン情報の書き込み、更新前後のバージョン情報の表示なども行う。
ここで、自OS用のプリンタドライバとは、サーバコンピュータの自OS上および他のコンピュータにインストールされた自OSと同じアーキテクチャーのオペレーティングシステムへ共有によって提供するプリンタドライバを指す。また、他OS用のプリンタドライバとは、他のコンピュータにインストールされた自OSと異なるアーキテクチャーのOSから共有によって提供するために自OSに追加でインストールされているプリンタドライバを指す。他OS用のプリンタドライバは、あくまで他OSで使用するためのもので自OSでは実行できない(上述のようにバージョン情報などは確認可能である)。
プリンタドライバ更新プログラムは、プリントサーバコンピュータ100にインストールされて、そこで動作する。したがって、プリントサーバコンピュータ100上のオペレーティングシステムにより動作するプログラムとして提供される。
このような機能を有するプリンタドライバ更新プログラムは、たとえば、更新を実行するプログラム自体のファイルと、更新に使用するファイル群からなるパッケージとして提供される。
図5は、このようなプリンタドライバ更新プログラムパッケージの一例を示す図である。この例は、オペレーティングシステムがマイクロソフトウインドーズオペレーティングシステム(Microsoft Windows Operating System)の場合である(以下単にWindows(登録商標)と称する。またMicrosoft(登録商標)である)。
図示するように、このプリンタドライバ更新プログラムのパッケージはルートフォルダ1201にひとまとめにされている。ルートフォルダ1201直下には、プリンタドライバ更新プログラムそのものである「update.exe」1202と更新処理に必要なファイル群がある。更新処理に必要なファイル群は、更新処理を行う際に表示されるユーザインターフェース画面のビットマップファイル「update.bmp」1203、このパッケージで更新対象としているプリンタドライバのバージョン(更新対象バージョン)とそれぞれの更新対象バージョンについての更新処理後のバージョン(更新後バージョン)、更新方法、およびこのパッケージの内容を記載したアップデート情報ファイル「update.ini」1204がある。
「update.exe」1202が実行されることで、後述する手順により更新処理が行われる。
その他、図示していないが、たとえば更新処理の際に表示する文字列を定義するファイルなど、必要に応じたファイル群を含んでいてもよい。
そして、ルートフォルダの下に、更新用ファイルの入ったフォルダ(更新用フォルダという)1205、1209〜1212がある。この更新用フォルダは、更新対象のバージョンごとに用意されている。つまり現在インストールされているプリンタドライバのバージョンに応じて、適切な更新用フォルダ内のファイルを使用して更新を行うことになる。その内容は、たとえば「バージョン1.0.0.0更新用フォルダ」1205を例にとると、このフォルダには、更新対象バージョン「1.0.0.0」用の更新用ファイルが格納されている。そして、その中には実際に更新するファイルとして、機種別機能部に対応したファイル「driver01.dll」1206、「driver01.dll」1207、…「driverXX.dll」1208を格納している。
その他のフォルダ1209〜1211も同様であり、図示するとおり、それぞれの更新対象のバージョン用である。また、全てのバージョン間、あるいはいくつかのバージョン間で共通して使用する更新ファイルを格納したバージョン間共通の「バージョン間共通更新用フォルダ」1212もある。
これらの更新用フォルダおよびその中のファイルは、さらに図示しない更新に必要なフォルダおよびファイルが格納されていてもよい。
このプリンタドライバ更新プログラムによるプリンタドライバの更新動作について説明する。図6は、プリンタドライバ更新プログラムの手順を示すフローチャートである。この手順は、プリントサーバコンピュータ100によって実行される手順である。細かくいえば、図5のファイル例では、ルートフォルダ1201全部がプリントサーバコンピュータ100のハードディスク14にいったん記憶される。そして、プリントサーバコンピュータ100のCPU11がプリンタドライバ更新プログラムである「update.exe」1202を実行することになる。
プリントサーバコンピュータ100のCPU11(以下この手順の説明においては単にCPU11という)がプリンタドライバ更新プログラムを起動する。この段階でプリンタドライバ更新プログラムがアーキテクチャーの異なるオペレーティングシステム用のものであれば起動不能であるので、その旨がオペレーティングシステムから警告表示されて、起動しない。これはオペレーティングシステムの通常動作である。
以下では、正常に起動した場合について説明する。
CPU11は、プリンタドライバ更新プログラム起動後、まず、更新プログラムのパッケージ内容に問題がないかを確認する(S1)。具体的には、アップデート情報ファイル(図5中の「update.ini」1204)に記載されているパッケージ内容と、実際にルートフォルダ中に存在するフォルダ名およびファイル名を確認する。この段階で、パッケージ内に必要なフォルダおよびファイルが入っていないなどの問題があれば(S2:NO)、処理を終了する。この際にその旨のメッセージを表示する(S20)とよい。
続いて、プリンタドライバが存在するか(インストールされているか)否かを確認する(S3〜S4)。プリンタドライバはオペレーティングシステムのシステムフォルダ内にインストールされているため、その場所を確認することで判断する。システムフォルダ内では、自OS用および他OS用のプリンタドライバがそれぞれの環境に対応した別フォルダで管理されている。そこでインストールされているプリンタドライバについて、自OS用と他OS用のそれぞれのプリンタドライバの存在の有無を確認する。たとえばプリンタドライバのバージョン情報記憶部の内容(具体的には表1に示した「UPD_version.ver」ファイルの内容)を確認することで、プリンタドライバの存在と共にバージョンの確認も可能である。ただし、プリンタドライバの存在確認だけであれば、システムフォルダにプリンタドライバがインストールされているか否かによって確認するだけでもよい。
このS3〜S4の処理は、まず自OS用のプリンタドライバが存在するかどうかを確認し(S3)、存在しない場合(S3:NO)は処理を終了する。その際に更新するプリンタドライバが存在していない旨の警告を表示してもよい(S21)。更新対象の自OS用のプリンタドライバが存在する場合は(S3:YES)、引き続き更新対象の他OS用のプリンタドライバの存在を確認する(S4)。更新対象の他OS用プリンタドライバが存在しない場合(S4:NO)、その旨を表示して(S22)、次の処理へ移る。更新対象の他OS用のプリンタドライバが存在する場合は(S4:YES)、その旨を一時記憶して(S5)、次の処理へ移る。
なお、このS3〜S4の処理においては、他OS用のプリンタドライバが存在するか否かにかかわらず、自OS用のプリンタドライバが存在しさえすれば、この段階ではバージョンが更新対象ではない場合も含めて更新対象となるプリンタドライバが存在していると判断する。一方、S3において自OS用プリンタドライバが存在しないと判断された場合は、他OS用のプリンタドライバを確認せずに処理を終了する。これは、従来技術であるポイントアンドプリントの技術においては、必ず自OS用のプリンタドライバがインストールされていないと他OS用のプリンタドライバをインストールできない仕組みになっている。つまり、自OS用のみインストールされている場合はあるが、他OS用のみがインストールされている状況は起こりえないからである。これはポイントアンドプリントの技術を採用していない場合も同様であり、自OS用プリンタドライバが存在しないということは、そもそもそのコンピュータはプリントサーバとして機能していないということを意味する。したがって、そのようなコンピュータには、他OS用のプリンタドライバだけがインストールされているといことはないため、ここで処理を終了しても差し支えない。言い換えると(ポイントアンドプリントの技術を採用していてもいなくても)、自OS用のプリンタドライバが存在しないものに対して以降の処理を継続しても、処理時間やコンピュータ資源の無駄遣いになるだけであるからこの段階で処理を終了することが好ましいのである。
続いて、CPU11は、検出されたプリンタドライバの現在のバージョン(現バージョン情報)を取得する(S6)。具体的にはインストールされているプリンタドライバの「UPD_version.ver」ファイルを確認することで現バージョン情報を取得する。取得した現バージョン情報(バージョン番号だけでもよい)は一時記憶される。このS6の処理では、自OS用だけでなく、S5の一時記憶に基づいて、他OS用のプリンタドライバが存在する場合は他OS用のプリンタドライバの現バージョン情報も取得する。S5において他OS用のプリンタドライバが存在することが記憶されていなければ、他OS用のプリンタドライバについてのバージョン取得は行わない。
続いてCPU11はユーザからバージョン情報を表示する命令があるか否かを確認し(S7)、バージョン情報表示命令が入力された場合(S7:YES)は、サブルーチンS30の処理を実行して、この段階で更新前後のバージョン情報を表示する。この処理の詳細については後述するが、この段階で更新前後のバージョン情報を表示することにより、ユーザが意図しない更新を回避する(更新を中止する)ことができるようになる。
S7においてバージョン情報の表示命令が入力されない場合(S7:NO)、およびS30内の処理終了後リターンした場合には、CPU11は更新実行命令が出ているものとして、現在インストールされているプリンタドライバのバージョンに適した更新方法を取得し(S8)、その内容に応じた更新処理を実行する(S9)。
表2は、S8における更新方法を示すテーブルである。S8では、表2のように規定された更新方法に従って更新するか否かを判断している。表2はこの更新方法が分かりやすいようテーブル形式で示したが、実際にはアップデート情報ファイル「update.ini」1204にCPU11によって処理可能な形式で記載されている。
Figure 0005531858
S8では、S3およびS4で確認した更新対象のプリンタドライバの有無、およびS6で取得した現バージョン情報に応じて表2に示した更新方法により更新の有無を判断するのである。
どのようなときに更新するか、またはしないかを選択するための条件は5種類に分類している(下記第1から第5)。
第1は更新対象であるバージョンが存在する場合である。表2中「○」印で示す。これは、プリンタドライバがインストールされており、確認された現バージョンも更新対象であることを示している。
第2は警告対象のバージョンが存在する場合である。表2中「△」印で示す。これはS6で確認された現バージョンが更新対象であるが特別仕様のものである場合である。特別仕様とは、プリンタドライバが特別なカスタマイズが加えられているものである。このような特別仕様の場合、更新によってカスタマイズされた機能が消えてしまうおそれがある。そこで、そのようなことが起こらないように警告を行ってカスタマイズ品に対して更新するか否かをユーザに選択させるようにしている。なお、特別仕様であるか否かはアップデート情報ファイル「update.ini」1204に記載されているバージョンとS6で取得したバージョンが同じであり、かつ、S6で取得したバージョン情報に、特別仕様であることを示すバージョン番号(添え字などを含む)が加えられているか否かで判断する。
第3は、更新対象外のバージョンが存在する場合である。表2中「×」印で示す。これはS6で取得した現バージョンが、更新対象のバージョンではない場合である。
第4は、自OS用についてのみ判断するものであり、自OS用プリンタドライバが更新済みである場合である。表2中「*」印で示す。S6で取得した現バージョンが、アップデート情報ファイル「update.ini」1204に記載されている更新後バージョンと同じになっている場合である。
第5は、他OS用についてのみ判断するものであり、表2中「−」印で示す。これは、他OS用プリンタドライバがインストールされていない場合である。すなわち、S5において、他OS用プリンタドライバの存在が記憶されていない場合である。
表2からわかるように、本実施形態では、自OS用または他OS用のいずれか一方のみに更新対象のバージョンが存在する場合(表2中のNo4、8、10)は、どちらのOS用も更新は行わないこととしている。これは、本印刷システムが基本的にプリントサーバコンピュータ100経由で印刷が行われるものである。このため、プリントサーバコンピュータ100(自OS)とそれに接続される形態となるクライアントコンピュータ120(他OS)が同じバージョンでない場合に不具合が起こるおそれがある。また、システムの管理上も、プリントサーバコンピュータ100とクライアントコンピュータ110および120とで異なるバージョンが入っていると管理しづらい。そこで、本実施形態では、両者の間で異なるバージョンとなるような更新を避けるために、一方のみに更新対象のバージョンが検出された場合は更新しないのである。また、この観点から、一方のバージョンが警告対象の場合、警告対象のプリンタドライバに対して更新しない場合には、他方が更新対象の場合も更新しない(表2中のNo3、6)。
つまり表2に示した更新方法をまとめると、自OS用プリンタドライバが存在しかつ更新対象のバージョンであ、他OS用のプリンタドライバが存在していない場合は更新することが規定されている。また、自OS用プリンタドライバが存在しているが更新対象のバージョンではなくかつ他OS用のプリンタドライバが存在して更新対象のバージョンである場合、または自OS用プリンタドライバが存在して更新対象のバージョンであっても他OS用のプリンタドライバが存在しているが更新対象のバージョンではない場合は、更新処理を行わないことが規定されている。また、自OS用および他OS用のプリンタドライバが共に存在しかつ共に更新対象のバージョンである場合は、自OS用および他OS用の両方のプリンタドライバを更新することが規定されている。
なお、これに代えて、たとえば、クライアントコンピュータ120(他OS)が単独で(すなわちプリントサーバコンピュータ100を経由せずに)印刷可能な場合には、管理上の問題がなければ両者でバージョンが異なってもよいので、いずれか一方のみが更新対象となっている場合に、更新対象となっているOS用のみを更新するようにしてもよい。
S8において、表2に示した更新方法が選択された後、CPU11は、選択された更新内容に従って、更新処理(そのまま更新、警告後更新、または更新しない、のいずれか)を実行する(S9)。このとき、表2に示したメッセージが表示されるようにするとよい。このメッセージの表示によって、ユーザに対してどのよう更新が行われるかがわかりやすくなる。
続いてCPU11は、更新を実行したことにより再起動が必要か否かを判断する(S10)。ここで再起動が必要であれば、オペレーティングシステムに対して再起動の実行を指令する(S11)。一方、再起動が必要でなければ、そのまま処理を終了する。
S9の更新処理を実行した後、更新を完了するためにコンピュータ(実際にはOS)の再起動が必要か否かを判断するためには、自OS用のプリンタドライバについて拡張子が「exe」および「dll」ファイルが上書きや追加された場合、再起動が必要であると判断する。一方、それ以外のファイルが更新されただけの場合には、再起動は不要である。また、他OS用のプリンタドライバが更新されたときには、自OSを再起動する必要はない。
S9における更新処理では、プリンタドライバ更新プログラムの入っているパッケージ(ルートフォルダ)に一緒に入っている更新用フォルダごとに更新する。したがって、ユニバーサルプリンタドライバでは、機種別機能部が独立した構造となっているので、バージョンごとに異なる機種別機能部の構成に柔軟に対応できる。このため必要最低限の部分(フォルダやファイル)のみを更新することができる。これにより更新後にコンピュータの再起動が必要となるケースをできる限り減らすことができるようになる。
次に、バージョン情報を表示する手順について説明する。図7はバージョン情報表示処理の手順を示すサブルーチンフローチャートである。
CPU11は、S7においてバージョンの表示命令を受けると、まず、S6で取得した自OS用および他OS用のプリンタドライバの現バージョン情報を元に、更新後バージョン情報をアップデート情報ファイルから取得する(S31)。アップデート情報ファイルは、既に説明したようにたとえば、Windowsでは「update.ini」1204である。
このアップデート情報に記載されているバージョン情報としては、たとえば表3のとおりである。
Figure 0005531858
本実施形態では、1つの更新プログラムとしてプリンタドライバの複数のバージョンを更新対象としている。表3では、N個のバージョンそれぞれについて、現バージョン、すなわち更新前のバージョンと、それらにそれぞれに対応する更新後バージョン情報を保持している。この情報を参照し、たとえば、現バージョンが「1.0.0.0」の自OS用のプリンタドライバがインストールされている環境で更新を行おうとしている場合、更新後バージョンとして「1.5.0.0」が取得される。他OS用のプリンタドライバが存在する場合も、自OS用と同様に更新後のバージョンを取得する。たとえば、バージョンが「1.7.0.0」の他OS用のプリンタドライバがインストールされている場合、他OS用のプリンタドライバの更新後バージョンとして「1.10.0.0」が取得される。
更新対象のバージョンが自OS用であるか他OS用であるか、すなわち、本実施形態においては32ビットアーキテクチャー用であるか、64ビットアーキテクチャー用であるかは、前述したように、システムフォルダ内で自OS用および他OS用のプリンタドライバがそれぞれの環境に対応した別フォルダで管理されているので、いずれの環境用のフォルダを開いたかで確認することができる。
また、今回の更新対象のそれぞれバージョンごとにアップデート情報ファイル「update.ini」1204に記載して、そこから判断するようにしてもよい。
たとえばバージョン番号に加えてそれぞれのOS用であることを示す添え字などを付加しておくとよい(添え字は、32ビットアーキテクチャー用は「×86」、64ビットアーキテクチャー用は「×64」などである)。このような添え字に代えて直接OSの名称をバージョン番号と共に記載しておいてもよい。これによりバージョン情報を表示するためにはアップデート情報ファイルの内容を取得するだけで、更新前後のバージョン情報を簡単に表示することができる。
続いて、CPU11は、他OS用のバージョン情報を表示する必要があるか否かを判断する(S32)。この処理はS5において他OS用のプリンタドライバの存在が一時記憶されている場合に、他OS用のバージョン情報を表示すると判断する。したがって、S5において他OS用のプリンタドライバの存在が一時記憶されていない場合には、他OS用のプリンタドライバのバージョン情報は表示しない。
そして、CPU11は、取得したバージョン情報に基づいて、S32において他OS用のバージョン情報を表示する必要がないと判断されれば、自OS用のバージョン情報を表示する(S33)、一方、S32において他OS用のバージョン情報を表示する必要があると判断されれば、自OS用と共に他OS用のバージョン情報も表示する(S34)。
図8はバージョン情報の表示例を示す図面である。図8(a)は自OS用のみのバージョン情報表示例である。すなわち、S32において他OS用のプリンタドライバが存在しないことが確認されたときの表示例である。図示するように、このプリンタドライバ更新プログラムが入っている更新パッケージのバージョン「vesion0.9.9.9」、パッケージ詳細バージョン「LOC:1.0.0.0」と「EXE:1.0.0.0」が表示された下に、対象UPDバージョン(UPDはユニバーサルプリンタドライバの略)として、更新対象バージョン「1.0.0.0」と更新後バージョン「1.5.0.0」が表示される。
図8(b)は、他OS用のバージョン情報も表示される場合である。すなわち、S32において他OS用のプリンタドライバが存在することが確認されたときの表示例である。図示するように、自OS用に加えて他OS用のプリンタドライバの現バージョンおよび更新後バージョンの情報を表示する。自OSをx86環境、他OSをx64環境として、更新対象バージョン「1.0.0.0(×86)」および「1.7.0.0(×64)」と、更新後バージョン「1.5.0.0(×86)」および「1.10.0.0(×64)」がそれぞれ表示される。
表示後、CPU11は、ユーザからバージョン表示の終了命令(図8における[閉じる]ボタンが押される)があれば(S35:YES)、バージョン情報の画面の表示を終了して、メインルーチンへリターンする(S8へ進む)。
このように、自OS用のプリンタドライバだけでなく、他OS用のプリンタドライバについてもバージョン情報を表示することで、サーバコンピュータ上で自OS用と他OS用の両方のバージョンを確認することができる。これによって、クライアントコンピュータを確認するといった作業無しに、サーバコンピュータ上だけで容易に自OS用と他OS用両方のバージョンを確認して管理することが可能となる。
上述したように表示例としては、自OS用のみの存在が確認にされたときは自OS用のバージョン情報のみが表示され(上記図8(a)の例)、自OS用と他OS用の両方のバージョンが確認されたときにはそれら両方のバージョン情報が表示される(上記図8(b)の例)場合を説明した。
ただし、バージョン情報の表示は、これらに限らず、自OS用と他OS用の両方のプリンタドライバが確認された場合に、更新されるのが他OS用のみというような場合には、他OS用のバージョン情報のみを表示するようにしてもよい。ここで更新されるのが他OS用のみというような場合とは、たとえば、新旧バージョン情報として他OS用のバージョンについてのみ更新後のバージョンが記載されているような場合である。またそのほかにはたとえば、この表示を行う段階を前述のS8以降で行うようにして、更新方法として表3中のNo14〜16の場合であると判断された後、その判断結果から実質的に他OS用のみが更新される場合である。あるいは表3中のNo10のような場合に他OS用のみ更新可能としてもよい、とするような場合である。
以上説明した本実施形態によれば以下の効果を奏する。
本実施形態では、プリントサーバコンピュータにインストールされた複数の異なるオペレーティングシステム用のプリンタドライバの存在と、それぞれの更新対象となるバージョンを確認して、適切な更新を行うこととした。これによりプリントサーバコンピュータにインストールされた複数の異なるオペレーティングシステム用のプリンタドライバを一度に更新(アップデート)することができる。
また、プリンタドライバ更新プログラムの入っている更新パッケージとして、複数のバージョンに対応できるようにしているので、更新の際には各プリンタドライバのバージョンを判断して、それら更新対象のバージョンに適した更新ファイルを書き換えたり追加したりすることができるようになる。
また、自OS用、他OS用の両方を同じバージョンとなるように更新することとしたので、双方でバージョン違いによる不整合を起こしたり、管理上の問題を起こすことがない。
また、更新の際には、更新対象のプリンタドライバを構成するフォルダやファイル単位で、書き換えや追加を行うこととしているので、必要最小限の変更ですむようになり、オペレーティングシステムの再起動をなるべく減らすことができる。
以上、本発明の実施形態を説明したが、本発明はこのような実施形態に限定されるものではない。たとえば、上記実施形態では、ユニバーサルプリンタドライバを例に説明したが、これに限ったことではなく通常のプリンタドライバの更新に際しても、上記処理を行うことで、自OS用、他OS用の両方を更新することができる。
また、上記実施形態では、自OS用、他OS用として、アーキテクチャーの異なるコンピュータ用のOS違いを例に説明したが、コンピュータのアーキテクチャーが同じであって、そこで実行されているオペレーティングシステムが異なる場合にも適用可能である。たとえば、自OSとしてWindows、他OSとしてUNIXなどの場合も、上記実施形態と同じ処理により、両方のOS用のプリンタドライバの更新が可能である。もちろんそのほかさまざまなオペレーティングシステム用のプリンタドライバの更新を行うことができる。
また、上記実施形態では、更新方法を記載したアップデート情報ファイルは、プリンタドライバ更新プログラムが入っているパッケージに入れて、プリンタドライバ更新プログラムと一緒に提供することとした。これにより更新を行うプリンタドライバ更新プログラムと常に一緒に更新方法が得られるようになる。
しかしこれに限らず、更新方法の内容は、たとえば、プリンタドライバ更新プログラムそのものの中にプログラムコードとして記載しておいてもよい。このようにしてもプリンタドライバ更新プログラムが実行されることで、適切な更新方法に従って更新することができる。
また、プリンタ更新プログラムと、アップデート情報ファイル(更新方法を含む)および更新用フォルダ(または更新用ファイル)を別々に提供することも可能である。たとえば、プリンタ更新プログラムだけ先に提供し(またはプリンタドライバと共に提供してコンピュータ内に常駐させておき)、アップデート情報ファイルおよび更新用フォルダは外部のサーバに記憶しておく。そしてプリンタ更新プログラムを実行して、たとえばS3でYESとなった後から〜S8の前までの間のいずれかの段階で、外部サーバにアップデート情報ファイルおよび更新用フォルダをとりに行くようにしてもよい(なお、外部サーバとは、プリントサーバコンピュータ100以外のコンピュータであってネットワーク50を介してデータの送受信可能なコンピュータをいう)。このようにしてもプリンタドライバ更新プログラムが実行されることで、適切な更新方法に従って更新することができる。
そのほか、本発明は上記実施形態のみに限定されるものではなく、特許請求の範囲内において、種々改変することができる。
本実施形態にかかる処理手順および方法は、専用のハードウェア回路、またはプログラムされたコンピュータのいずれによっても実現することが可能である。また上記プリンタドライバ更新プログラムおよびそれに必要なファイル群は、たとえば、フレキシブルディスクやCD−ROM、DVD、フラッシュメモリ等のコンピュータ読み取り可能な記録媒体によって提供されてもよいし、インターネット等のネットワークを介してオンラインで提供されてもよい。この場合、コンピュータ読み取り可能な記録媒体に記録されたプログラムは、通常、ハードディスク等の記憶部に転送され記憶される。また、上記プリンタドライバ更新プログラムおよびそれに必要なファイル群は、更新パッケージ単独のアプリケーションとして提供されてもよいし、プリンタなどの印刷機器に添付されたアプリケーションなどとして提供されてもよい。
10 コンピュータ、
11,21 CPU、
12,22 ROM、
13,23 RAM、
14,25 ハードディスク(HDD)、
15,26 通信インタフェース(NIC)、
16 入力装置、
17 ディスプレイ、
18,28 バス、
20,20A〜20C プリンタ、
50 ネットワーク、
100 プリントサーバコンピュータ、
110,120 クライアントコンピュータ、
200 プリンタドライバ、
201 共通機能部、
202 機種別機能部、
203 プリンタ切替部、
204 バージョン情報記憶部、
500 オペレーティングシステム、
1201 プリンタドライバ更新プログラムパッケージのルートフォルダ、
1202 プリンタドライバ更新プログラム「update.exe」、
1204 アップデート情報ファイル「update.ini」、
1205,1209〜1212 更新用フォルダ。

Claims (19)

  1. コンピュータ上で動作しているオペレーティングシステム用のプリンタドライバである自OS用プリンタドライバが存在するか否かを確認する手順(a)と、
    前記コンピュータ上で動作しているオペレーティングシステムとは異なるオペレーティングシステム用のプリンタドライバである他OS用プリンタドライバが存在するか否かを確認する手順(b)と、
    前記手順(a)で存在確認された自OS用プリンタドライバおよび前記手順(b)で存在確認された他OS用プリンタドライバのそれぞれのバージョンを取得する手順(c)と、
    前記手順(c)で取得した前記バージョンに対応してあらかじめ決められた更新方法に従い前記自OS用および/または前記他OS用のプリンタドライバを更新するか否かを選択する手順(d)と、
    前記手順(d)で更新することが選択された前記プリンタドライバを更新する手順(e)と、
    を有する各手順をコンピュータに実行させることを特徴とするプリンタドライバ更新プログラム。
  2. 前記更新方法は、自OS用プリンタドライバが存在しているが更新対象のバージョンではなくかつ他OS用のプリンタドライバが存在して更新対象のバージョンである場合、または自OS用プリンタドライバが存在して更新対象のバージョンであっても他OS用のプリンタドライバが存在しているが更新対象のバージョンではない場合は、更新処理を行わないことが規定されていることを特徴とする請求項1記載のプリンタドライバ更新プログラム。
  3. 前記更新方法は、自OS用プリンタドライバが存在しかつ更新対象のバージョンであ、他OS用のプリンタドライバが存在していない場合は更新処理を行うことが規定されていることを特徴とする請求項1または2記載のプリンタドライバ更新プログラム。
  4. 前記更新方法は、自OS用および他OS用のプリンタドライバが共に存在しかつ共に更新対象のバージョンである場合は、自OS用および他OS用の両方のプリンタドライバの更新処理を行うことが規定されていることを特徴とする請求項1〜3のいずれか一つに記載のプリンタドライバ更新プログラム。
  5. 前記更新方法は、自OS用および他OS用のいずれか一方のみが更新対象となっている場合に、更新対象となっているOS用のみの更新処理を行うことが規定されていることを特徴とする請求項1に記載のプリンタドライバ更新プログラム。
  6. 前記プリンタドライバは、複数の機能に対応したそれぞれのファイルによって構成され、
    前記更新は、プリンタドライバ更新プログラムと共に提供されるファイルを用いて、前記プリンタドライバを構成するファイルごとに書き替えまたは追加することを特徴とする請求項1〜5のいずれか一つに記載のプリンタドライバ更新プログラム。
  7. 前記手順(d)において更新対象となるバージョンのプリンタドライバを更新する前に、更新するか否かをユーザに確認する手順(f)をさらに有することを特徴とする請求項1〜6のいずれか一つに記載のプリンタドライバ更新プログラム。
  8. 前記手順(f)は、前記手順(c)で取得した前記バージョンが、あらかじめ決められた特別仕様であることを示している場合にのみ実行することを特徴とする請求項7に記載のプリンタドライバ更新プログラム。
  9. 前記プリンタドライバは、機能の異なる複数のプリンタに対応させたユニバーサルプリンタドライバであり、前記プリンタドライバを構成する前記ファイルは、当該ユニバーサルプリンタドライバを構成する複数のプリンタに共通の機能を実行させるための共通機能部のファイルと、プリンタの機種ごとの個別の機能を実行させるための機種別機能部のファイルであることを特徴とする請求項6〜8のいずれか一つに記載のプリンタドライバ更新プログラム。
  10. 請求項1〜9のいずれか一つに記載のプリンタドライバ更新プログラムを記録したコンピュータ読み取り可能な記録媒体。
  11. コンピュータ上で動作しているオペレーティングシステム用のプリンタドライバである自OS用プリンタドライバが存在するか否かを確認するステップ(a)と、
    前記コンピュータ上で動作しているオペレーティングシステムとは異なるオペレーティングシステム用のプリンタドライバである他OS用プリンタドライバが存在するか否かを確認するステップ(b)と、
    前記ステップ(a)で存在確認された自OS用プリンタドライバおよび前記ステップ(b)で存在確認された他OS用プリンタドライバのそれぞれのバージョンを取得するステップ(c)と、
    前記ステップ(c)で取得した前記バージョンに対応してあらかじめ決められた更新方法に従い前記自OS用および/または前記他OS用のプリンタドライバを更新するか否かを選択するステップ(d)と、
    前記ステップ(d)で更新することが選択された前記プリンタドライバを更新するステップ(e)と、
    を有する各ステップをコンピュータに実行させることを特徴とするプリンタドライバ更新方法。
  12. 前記更新方法は、自OS用プリンタドライバが存在しているが更新対象のバージョンではなくかつ他OS用のプリンタドライバが存在して更新対象のバージョンである場合、または自OS用プリンタドライバが存在して更新対象のバージョンであっても他OS用のプリンタドライバが存在しているが更新対象のバージョンではない場合は、更新処理を行わないことが規定されていることを特徴とする請求項11記載のプリンタドライバ更新方法。
  13. 前記更新方法は、自OS用プリンタドライバが存在しかつ更新対象のバージョンであ、他OS用のプリンタドライバが存在していない場合は更新処理を行うことが規定されていることを特徴とする請求項11または12記載のプリンタドライバ更新方法。
  14. 前記更新方法は、自OS用および他OS用のプリンタドライバが共に存在しかつ共に更新対象のバージョンである場合は、自OS用および他OS用の両方のプリンタドライバの更新処理を行うことが規定されていることを特徴とする請求項11〜13のいずれか一つに記載のプリンタドライバ更新方法。
  15. 前記更新方法は、自OS用および他OS用のいずれか一方のみが更新対象となっている場合に、更新対象となっているOS用のみの更新処理を行うことが規定されていることを特徴とする請求項11に記載のプリンタドライバ更新方法。
  16. 前記プリンタドライバは、複数の機能に対応したそれぞれのファイルによって構成され、
    前記更新は、プリンタドライバ更新方法と共に提供されるファイルを用いて、前記プリンタドライバを構成するファイルごとに書き替えまたは追加することを特徴とする請求項11〜15のいずれか一つに記載のプリンタドライバ更新方法。
  17. 前記ステップ(d)において更新対象となるバージョンのプリンタドライバを更新する前に、更新するか否かをユーザに確認するステップ(f)をさらに有することを特徴とする請求項11〜16のいずれか一つに記載のプリンタドライバ更新方法。
  18. 前記ステップ(f)は、前記ステップ(c)で取得した前記バージョンが、あらかじめ決められた特別仕様であることを示している場合にのみ実行することを特徴とする請求項17に記載のプリンタドライバ更新方法。
  19. 前記プリンタドライバは、機能の異なる複数のプリンタに対応させたユニバーサルプリンタドライバであり、前記プリンタドライバを構成する前記ファイルは、当該ユニバーサルプリンタドライバを構成する複数のプリンタに共通の機能を実行させるための共通機能部のファイルと、プリンタの機種ごとの個別の機能を実行させるための機種別機能部のファイルであることを特徴とする請求項16〜18のいずれか一つに記載のプリンタドライバ更新方法。
JP2010186642A 2010-08-18 2010-08-23 プリンタドライバ更新プログラム、およびプリンタドライバ更新方法 Expired - Fee Related JP5531858B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2010186642A JP5531858B2 (ja) 2010-08-23 2010-08-23 プリンタドライバ更新プログラム、およびプリンタドライバ更新方法
US13/211,528 US8804172B2 (en) 2010-08-18 2011-08-17 Non-transitory computer readable recording medium stored with printer driver updating program and printer driver updating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010186642A JP5531858B2 (ja) 2010-08-23 2010-08-23 プリンタドライバ更新プログラム、およびプリンタドライバ更新方法

Publications (2)

Publication Number Publication Date
JP2012043381A JP2012043381A (ja) 2012-03-01
JP5531858B2 true JP5531858B2 (ja) 2014-06-25

Family

ID=45899564

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010186642A Expired - Fee Related JP5531858B2 (ja) 2010-08-18 2010-08-23 プリンタドライバ更新プログラム、およびプリンタドライバ更新方法

Country Status (1)

Country Link
JP (1) JP5531858B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6024279B2 (ja) * 2012-08-13 2016-11-16 株式会社リコー デバイス制御プログラム、情報処理装置および情報処理システム
JP6648915B2 (ja) * 2015-07-21 2020-02-14 キヤノン株式会社 情報処理装置、方法およびプログラム
JP6787055B2 (ja) * 2016-07-21 2020-11-18 株式会社リコー プログラム、情報処理装置、および情報処理システム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006244009A (ja) * 2005-03-02 2006-09-14 Seiko Epson Corp ダウンロードシステム、サーバ装置およびドライバ提供方法
JP2010044700A (ja) * 2008-08-18 2010-02-25 Ricoh Co Ltd 電子機器、ソフトウェア更新方法、ソフトウェア更新プログラム、および記録媒体
JP4693911B2 (ja) * 2009-02-13 2011-06-01 キヤノン株式会社 情報処理システム及びその制御方法及びサーバ装置とその制御プログラム

Also Published As

Publication number Publication date
JP2012043381A (ja) 2012-03-01

Similar Documents

Publication Publication Date Title
US8804172B2 (en) Non-transitory computer readable recording medium stored with printer driver updating program and printer driver updating method
KR100876022B1 (ko) 화상 처리 장치 및 그 제어 방법
US20110242565A1 (en) Printer control system, printing method, and storage medium
JP4164467B2 (ja) 画像処理装置、画像処理制御方法、及びプログラム
JP2004326603A (ja) 印刷制御システム、印刷制御装置、機能提供装置、印刷機能表示方法、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体
JP5783679B2 (ja) 印刷装置、印刷システム、制御方法、及び、プログラム
JP2012003627A (ja) 印刷設定プログラム、及び印刷設定装置
JP2006164240A (ja) データ処理装置および印刷設定処理方法およびコンピュータが読み取り可能な制御プログラムを格納した記憶媒体および制御プログラム
JP4481800B2 (ja) 情報処理装置、情報処理方法及びプログラム
JP4590341B2 (ja) データ処理装置および設定処理方法および情報処理装置および制御プログラム
JP2006139675A (ja) データ処理装置および印刷設定処理方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラム
JP5531858B2 (ja) プリンタドライバ更新プログラム、およびプリンタドライバ更新方法
US20110242564A1 (en) Printer control system, printing method, and storage medium
JP2010176639A (ja) 印刷制御装置、印刷制御方法、およびプログラム
JP2006268586A (ja) 処理態様指定情報変換プログラム及び処理態様指定情報変換方法
JP5605076B2 (ja) プリンタドライバ更新プログラムおよびプリンタドライバ更新方法
US20130258377A1 (en) Printer control system, printing method, and storage medium
JP2005267088A (ja) 周辺機器ドライバ、周辺機器制御装置および周辺機器ドライバの更新方法
JP4425808B2 (ja) 印刷情報処理装置、印刷情報処理プログラム及び記録媒体
US20110242582A1 (en) Printer control system, printing method, and storage medium
JP2012043382A (ja) プリンタドライバ更新プログラム、およびプリンタドライバ更新方法
JP7215127B2 (ja) 情報処理装置、記憶媒体及び情報処理方法
JP3817500B2 (ja) 情報処理装置、制御方法、制御プログラム
JP2019164447A (ja) 情報処理装置、情報処理方法、プログラム、及び画像形成システム
JP3817499B2 (ja) 情報処理装置、制御方法、制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130205

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20130415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131218

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140213

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140407

R150 Certificate of patent or registration of utility model

Ref document number: 5531858

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees