JP6377026B2 - 情報処理装置、制御方法、及びプログラム - Google Patents
情報処理装置、制御方法、及びプログラム Download PDFInfo
- Publication number
- JP6377026B2 JP6377026B2 JP2015148344A JP2015148344A JP6377026B2 JP 6377026 B2 JP6377026 B2 JP 6377026B2 JP 2015148344 A JP2015148344 A JP 2015148344A JP 2015148344 A JP2015148344 A JP 2015148344A JP 6377026 B2 JP6377026 B2 JP 6377026B2
- Authority
- JP
- Japan
- Prior art keywords
- driver
- information
- printer
- processing apparatus
- device driver
- 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.)
- Active
Links
Images
Landscapes
- Facsimiles In General (AREA)
Description
(第1実施形態)
図1は、本実施形態におけるプリントシステムの全体構成の一例を示す図である。
プリントシステムは、少なくともホストコンピュータ1000、サーバコンピュータ1500、及びプリンタ2000を備える。ホストコンピュータ1000、サーバコンピュータ1500、及びプリンタ2000は、LAN(Local Area Network)、WAN(Wide Area Network)等のネットワーク3000を介して通信可能に接続されている。なお、本発明の機能が実行されるのであれば、ホストコンピュータ1000、サーバコンピュータ1500、及びプリンタ2000の接続形態は、これに限定されるものではなく、ローカル接続であってもよい。また、ホストコンピュータ1000、サーバコンピュータ1500、及びプリンタ2000は、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであってもよい。
図2において、ホストコンピュータ1000は、ROM3のプログラム用ROMあるいは外部メモリ11に記憶された文書処理プログラム等に基づいて文書や画像の処理を行うCPU1を備える。また、システムバス4に接続される各プリンタ2000をCPU1が総括的に制御する。
プラグアンドプレイ検出部100は、ユニバーサルシリアルバス(USB)やWeb Service on Devices(WSD)等のインターフェースを介して接続されたプリンタ2000の検知を行う。機器ID取得部101は、プラグアンドプレイで検出されたプリンタ2000に機器ID取得要求を送り、機器IDを取得する。機器IDについては後述する。
サーバコンピュータ1500は、ホストコンピュータ1000のドライバ検索部102に応答するためのドライバ管理部150を備える。ドライバ管理部150を介して、サーバコンピュータ1500は、ホストコンピュータ1000にデバイス制御アプリ200やプリンタドライバ201を提供する。サーバコンピュータ1500の外部メモリ11には、ホストコンピュータ1000上で動作する複数種類のOSに対応するデバイス制御アプリ200やプリンタドライバ201が格納される。
なお、サーバコンピュータ1500は、各プリンタベンダが提供する最新のデバイス制御アプリやプリンタドライバを保持しておくことで、最新のデバイス制御アプリやプリンタドライバをホストコンピュータ1000に提供することが可能になる。
図5に示すように、機器IDは、主な要素として次に示す要素で構成され、文字列情報の形で表現される。機器の製造者情報を示す“MANUFACTURER”(以下MFG)。機器が対応しているコマンドセットを示す“COMMAND SET”(以下CMD)。機器のモデル識別情報を示す“MODEL”(以下MDL)。機器のクラス情報を示す“CLASS”(以下CLS)。機器の属するファミリーやクラスの互換識別情報を示す“COMPATIBLE ID”(以下CID)。なお、IEEE1284の規定では、MFG、MDL、CMDの提供は必須とされているが、CLS、CIDの提供は任意となっている。
ステップS601にて、OSのドライバ分類判別部104は、ホストコンピュータ1000にインストールされているプリンタドライバの有無を確認する。インストールされているプリンタドライバが存在する場合にはステップS602へ進み、存在しない場合は処理を終了する。
ステップS602にて、ドライバ分類判別部104は、ステップS601で確認したプリンタドライバが対応する機器ID、及びドライバ名の情報を取得する。
ステップS604にて、ドライバ情報保持部105は、ステップS602〜S603で取得した情報を更新前ドライバ情報として特定の領域、例えばROM3のデータ用ROMあるいは外部メモリ11に保持する。なお、更新前ドライバ情報は、S602〜S603で取得した情報を全て含んでいる必要はなく、例えば、機器IDまたはドライバ名の少なくともいずれかを含んでいればよい。
この処理は、図6を用いて説明した、あらかじめ保持したドライバ情報を参照して行われる。また、この処理は、OS更新直後にOSによって実行される。
ステップS702にて、ドライバ分類判別部104は、ステップS701でリストされたプリンタドライバ201それぞれに対して、現在動作中のOS上で動作可能か否かの判断を行う。具体的には、プリンタドライバ201が動作するOSのシステムの種類や、構成されるファイル、対応するAPI(アプリケーションプログラミングインターフェース)等のアーキテクチャの情報と、現在動作中のOSのバージョンから判断を行う。プリンタドライバ201があるバージョンのOSで動作するか否かは、OSの仕様により予めわかっており、その比較において判断を行う。
ステップS704にて、ドライバ分類判別部104は、ステップS702で現在動作中のOS上で動作不可能であると判断されたプリンタドライバ201に対応する機器IDとドライバ名を取得する。
ステップS705にて、ドライバ分類判別部104は、ステップS704で取得した機器IDとドライバ名をインストールドライバ候補リストへ追加する。
ステップS707にて、ドライバ分類判別部104は、ステップS706で比較した結果、OS更新により削除されたプリンタドライバ201があるか否かを判断する。具体的には、ドライバ分類判別部104は、更新前ドライバ情報に挙げられたプリンタドライバ201が、ステップS701でリストしたプリンタドライバ201の中に存在するか否かを判断する。そして、ドライバ分類判別部104は、存在しなかったプリンタドライバ201が削除されたと判断する。ステップS707で削除されたプリンタドライバがあると判断された場合には、ステップS708に進む。一方、更新前ドライバ情報に保持されたすべてのプリンタドライバ201が、ステップS701でリストしたプリンタドライバ201の中に存在する場合、すなわち削除されたプリンタドライバがないと判断された場合には、ステップS710に進む。
ステップS709にて、ドライバ分類判別部104は、ステップS708で取得した機器IDとドライバ名をインストールドライバ候補リストへ追加する。
ステップS711にて、ドライバ検索部102は、インストールドライバ候補リストに保持されている機器IDまたはドライバ名に対応するプリンタドライバ201の検索を実行する。検索処理は、ドライバ検索部102が、サーバコンピュータ1500のドライバ管理部150に問い合わせることによって行われる。検索処理の詳細については後述する。また、ドライバ検索部102は、検索したプリンタドライバ201をホストコンピュータ1000へダウンロードする。
ステップS713にて、ドライバインストール処理部103は、ステップS712でインストールしたプリンタドライバ201に関連付けるプリンタキューの設定を行う。具体的には、ドライバインストール処理部103は、ステップS712でインストールしたプリンタドライバ201を検索する際に使用した機器IDとドライバ名から、設定を行うプリンタキューを特定する。また、プリンタキューの特定には、前述した更新前ドライバ情報を参照する。
ドライバ検索部102は、ドライバ管理部150への問い合わせに際して、ホストコンピュータ1000のOSのバージョン、検索を行うプリンタドライバ201に対応する機器ID、及びドライバ名を通知する。機器IDとドライバ名は、インストールドライバ候補リスト(表B)に挙げられたものである。ドライバ管理部150は、通知されたホストコンピュータ1000のOSのバージョン、機器ID、及びドライバ名をもとにプリンタドライバ201の検索処理を行う。
ステップS1103にて、ドライバ管理部150は、通知されたOSのバージョン、及びモデル識別情報(MDL)に対応するプリンタドライバ201がサーバコンピュータ1500に存在するか否かを確認する。具体的には、ドライバ管理部150が、サーバコンピュータ1500の外部メモリ11に該当するプリンタドライバ201が存在するか否かを確認(検索)することにより実現する。
ステップS1105にて、ドライバ管理部150は、通知されたOSのバージョン、及び互換識別情報(CID)に対応するプリンタドライバ201がサーバコンピュータ1500に存在するか否かを確認する。
ステップS1108にて、ドライバ管理部150は、S1107で検索したプリンタドライバ201が存在するか否かを判断する。すなわち通知されたOSのバージョン及びドライバ名と対応するプリンタドライバ201が存在するか否かを判断する。合致するプリンタドライバ201が存在していた場合はステップS1109へ進み、存在していない場合はステップS1110へ進む。
一方、S1110にて、ドライバ管理部150は、ドライバ検索部102の問い合わせに該当するプリンタドライバ201がサーバコンピュータ1500内に存在しない場合は、該当するプリンタドライバが存在しないことをドライバ検索部102に通知する。これは、ホストコンピュータ1000で動作可能であり、かつモデル識別情報(MDL)または互換識別情報(CID)またはドライバ名に対応するプリンタドライバ201が見つからなかったことを意味する。
次に、本発明の第2実施形態に係る情報処理装置について説明する。
本実施形態におけるプリントシステムの全体構成、ホストコンピュータ及びプリンタのハードウェア構成、ホストコンピュータのソフトウェア構成、サーバコンピュータのソフトウェア構成、及び機器IDの構成は、第1実施形態で示した構成と同様とする。具体的には、プリントシステムの全体構成は図1、ホストコンピュータ及びプリンタのハードウェア構成は図2、ホストコンピュータのソフトウェア構成は図3、サーバコンピュータのソフトウェア構成は図4、機器IDの構成は図5で示した構成と同一とする。
ステップS801にて、デバイス制御アプリ200は、動作しているOSのバージョン情報を保持する。OSのバージョン情報は、OSが用意しているバージョン情報取得のためのAPIを用いて取得することが可能である。
ステップS803にて、デバイス制御アプリ200は、ステップS802で確認したプリンタドライバが対応する機器ID、及びドライバ名の情報を取得する。
ステップS805にて、デバイス制御アプリ200は、ステップS803〜S804で取得した情報を更新前ドライバ情報として保持する(表A)。
ドライバインストール処理部103は、ホストコンピュータ1000にインストールされているプリンタドライバ201の有無を確認する。プリンタドライバ201が存在する場合、そのプリンタドライバ201に対応する機器IDの情報を取得する。ドライバ検索部102は、取得した機器IDに対応するデバイス制御アプリ200の検索をサーバコンピュータ1500に対して行う。ドライバインストール処理部103は、ドライバ検索部102が検索したデバイス制御アプリ200のインストール処理を行う。
この処理は、図9を用いて説明した、あらかじめ保持したドライバ情報を参照して行われる。また、この処理は、OS更新後に初めてデバイス制御アプリ200が起動した際にデバイス制御アプリ200によって実行される。
ステップS902にて、デバイス制御アプリ200は、ホストコンピュータ1000にインストールされているプリンタドライバ201をリストする。
ステップS905にて、デバイス制御アプリ200は、ステップS903で現在動作中のOS上で動作不可能であると判断されたプリンタドライバ201に対応する機器IDとドライバ名を取得する。
ステップS907にて、デバイス制御アプリ200は、ステップS902でリストしたインストールされているプリンタドライバ201と、図9に示した処理のステップS805にて保持された更新前ドライバ情報(表A)との比較を行う。
ステップS910にて、デバイス制御アプリ200は、ステップS909で取得した機器IDとドライバ名をインストールドライバ候補リストへ追加する。
ステップS912にて、デバイス制御アプリ200は、インストールドライバ候補リストに保持されている機器IDまたはドライバ名に対応するプリンタドライバ201の検索を実行する。検索処理は、デバイス制御アプリ200がドライバ検索部102に問い合わせることにより行われる。処理の詳細は、前述した図13の処理と同様であるため、その説明は省略する。
ステップS916にて、デバイス制御アプリ200は、OSの更新前では使用できていたプリンタドライバ201のうち、OSの更新後に使用できなくなったプリンタドライバ201が存在することをユーザに通知する。図12は、通知するメッセージの一例である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
Claims (12)
- 特定のアーキテクチャのデバイスドライバしか動作しない第1OSに更新することが可能な情報処理装置であって、
前記第1OSへの更新前に、更新前の第2OS上で利用されていた前記第1OSで動作しないアーキテクチャのデバイスドライバのハードウェアID及び機種情報の少なくともいずれかを含むドライバ情報を、特定の領域で保持する保持手段と、
前記第1OSへの更新が行われた後に、前記保持されたドライバ情報に対応する特定のアーキテクチャのデバイスドライバのインストールを行うドライバ管理手段と、を有する
ことを特徴とする情報処理装置。 - 前記保持手段は、前記第2OSの機能として実現されることを特徴とする請求項1に記載の情報処理装置。
- 前記保持手段は、前記第2OS上で動作するデバイスドライバを管理するアプリケーションの機能として実現されることを特徴とする請求項1に記載の情報処理装置。
- 前記アプリケーションは、前記デバイスドライバと同じベンダから提供されることを特徴とする請求項3に記載の情報処理装置。
- 前記アプリケーションの機能としての前記保持手段は、さらに前記ドライバ情報とともにOSの情報も保持し、
前記アプリケーションの機能として、起動時に、現在のOSの情報と前記保持されたOSの情報とにより、前記第1OSへの更新を検知する検知手段を更に有する
ことを特徴とする請求項3または4に記載の情報処理装置。 - 前記保持手段は、さらに、プリンタ名、ポート情報、及び印刷設定情報を保持し、
前記ドライバ管理手段は、前記デバイスドライバのインストールを行った後に、前記保持されたプリンタ名、ポート情報、及び印刷設定情報に基づき該デバイスドライバに関連付けるプリンタキューの設定を行う
ことを特徴とする請求項1ないし5のいずれか1項に記載の情報処理装置。 - 前記ハードウェアIDには、モデル識別情報、及び互換識別情報が含まれることを特徴とする請求項1ないし5のいずれか1項に記載の情報処理装置。
- 前記インストールされるデバイスドライバは、前記モデル識別情報、前記互換識別情報、または前記機種情報で検索されたデバイスドライバであることを特徴とする請求項7に記載の情報処理装置。
- 更新前の第2OS上で利用されていたデバイスドライバのうち、前記第1OSへの更新が行われたことに伴い削除されたデバイスドライバがあるか否か、を判断する判断手段をさらに備え、
前記ドライバ管理手段は、前記判断手段が削除されたと判断したデバイスドライバのドライバ情報に対応する特定のアーキテクチャのデバイスドライバのインストールを行う
ことを特徴とする請求項1ないし8のいずれか1項に記載の情報処理装置。 - 前記ドライバ管理手段は、前記保持されたドライバ情報に対応する特定のアーキテクチャのデバイスドライバが存在しない場合に、前記第1OSへの更新が行われた後に、動作しないデバイスドライバが存在することをユーザに通知する
ことを特徴とする請求項1ないし9のいずれか1項に記載の情報処理装置。 - 特定のアーキテクチャのデバイスドライバしか動作しない第1OSに更新することが可能な情報処理装置の制御方法であって、
前記第1OSへの更新前に、更新前の第2OS上で利用されていた前記第1OSで動作しないアーキテクチャのデバイスドライバのハードウェアID及び機種情報の少なくともいずれかを含むドライバ情報を、特定の領域で保持する工程と、
前記第1OSへの更新が行われた後に、前記保持されたドライバ情報に対応する特定のアーキテクチャのデバイスドライバのインストールを行う工程と、を有する
ことを特徴とする制御方法。 - 請求項1乃至10のいずれか1項に記載の情報処理装置が備える各手段としてコンピュータを機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015148344A JP6377026B2 (ja) | 2015-07-28 | 2015-07-28 | 情報処理装置、制御方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015148344A JP6377026B2 (ja) | 2015-07-28 | 2015-07-28 | 情報処理装置、制御方法、及びプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018138424A Division JP6545332B2 (ja) | 2018-07-24 | 2018-07-24 | 情報処理装置、制御方法、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017027538A JP2017027538A (ja) | 2017-02-02 |
JP6377026B2 true JP6377026B2 (ja) | 2018-08-22 |
Family
ID=57949748
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015148344A Active JP6377026B2 (ja) | 2015-07-28 | 2015-07-28 | 情報処理装置、制御方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6377026B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7493947B2 (ja) * | 2020-01-31 | 2024-06-03 | キヤノン株式会社 | 情報処理装置、情報処理装置の制御方法、プログラム、および記憶媒体 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004234056A (ja) * | 2003-01-28 | 2004-08-19 | Ricoh Co Ltd | ソフトウェア更新方法、管理サーバプログラム、ソフトウェア更新プログラム、及びプリンタユーティリティプログラム |
JP2014203268A (ja) * | 2013-04-04 | 2014-10-27 | キヤノン株式会社 | 情報処理装置及び制御方法 |
-
2015
- 2015-07-28 JP JP2015148344A patent/JP6377026B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017027538A (ja) | 2017-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4371693B2 (ja) | 印刷制御装置、印刷制御方法及びコンピュータプログラム | |
EP2284696B1 (en) | File printing by means of drag-and-drop | |
JP4551784B2 (ja) | カスタムプリンタドライバインストーラ | |
CN110659003B (zh) | 信息处理装置、控制方法和存储介质 | |
JP2006065839A (ja) | 情報処理装置及び印刷情報処理方法、並びにコンピュータプログラム | |
JP2020004158A (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム | |
JP5527992B2 (ja) | 印刷制御方法、印刷制御装置、及びコンピュータプログラム | |
JP2006164240A (ja) | データ処理装置および印刷設定処理方法およびコンピュータが読み取り可能な制御プログラムを格納した記憶媒体および制御プログラム | |
US9170763B2 (en) | Information processing apparatus and control method | |
JP6545332B2 (ja) | 情報処理装置、制御方法、及びプログラム | |
KR101763018B1 (ko) | 시스템, 인쇄 장치, 제어 방법 및 컴퓨터 판독가능한 기록 매체 | |
JP5581793B2 (ja) | 情報処理装置、プログラムおよび記憶媒体 | |
JP5522952B2 (ja) | 印刷制御装置、印刷制御方法、およびプログラム | |
EP1811368A2 (en) | Information processing apparatus, information processing method, and information processing program | |
JP2010262448A (ja) | 情報処理装置、プリンタドライのバインストール方法、及び、プログラム | |
US20150029527A1 (en) | Printing system, control method for information processing apparatus, and non-transitory computer-readable medium | |
JP2011257881A (ja) | 印刷制御装置及びその表示方法 | |
JP6377026B2 (ja) | 情報処理装置、制御方法、及びプログラム | |
US8995002B2 (en) | System and method for printing independent of location and using a universal print module | |
JP5812769B2 (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 | |
JP2010033360A (ja) | 情報処理装置、ジョブ処理方法、記憶媒体及びプログラム | |
JP2019128857A (ja) | デバイスドライバー | |
JP6834716B2 (ja) | 印刷管理プログラム、印刷管理方法、印刷管理装置及び印刷管理システム | |
JP2006209195A (ja) | 印刷制御装置、印刷制御方法、及び記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171218 |
|
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: 20180626 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180629 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180724 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6377026 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |