JP5454441B2 - ユニバーサルデバイスドライバ、及び、デバイス制御方法 - Google Patents

ユニバーサルデバイスドライバ、及び、デバイス制御方法 Download PDF

Info

Publication number
JP5454441B2
JP5454441B2 JP2010219617A JP2010219617A JP5454441B2 JP 5454441 B2 JP5454441 B2 JP 5454441B2 JP 2010219617 A JP2010219617 A JP 2010219617A JP 2010219617 A JP2010219617 A JP 2010219617A JP 5454441 B2 JP5454441 B2 JP 5454441B2
Authority
JP
Japan
Prior art keywords
port
device driver
dedicated
driver
universal
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
Application number
JP2010219617A
Other languages
English (en)
Other versions
JP2012073918A (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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2010219617A priority Critical patent/JP5454441B2/ja
Publication of JP2012073918A publication Critical patent/JP2012073918A/ja
Application granted granted Critical
Publication of JP5454441B2 publication Critical patent/JP5454441B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Systems (AREA)

Description

本発明は、複数機種のデバイスを制御するユニバーサルデバイスドライバ、及び、デバイス制御方法に関する。
従来、デバイスを制御するプリンタドライバにおいて、機種依存性の低い所謂ユニバーサルプリンタドライバが知られている(例えば、特許文献1参照)
特開2008−27153号公報
ところで、特定の機種に対応して開発されたデバイスドライバ(専用デバイスドライバ)は機種依存性が高い反面、対応する機種のデバイスが備えるほぼ全ての機能を制御できる。
これに対し、ユニバーサルデバイスドライバは機種依存性が低いので複数の機種のデバイスを制御できる反面、制御できる機能は複数の機種に共通する一般的な機能に限られることが多い。そのため、ユニバーサルデバイスドライバではデバイスの機種固有の機能を利用できない場合がある。
本発明は上記のような事情に基づいて完成されたものであって、ユニバーサルデバイスドライバでユーザが指定したデバイスに対応する専用デバイスドライバがインストールされている場合に、当該指定したデバイスを専用デバイスドライバから制御できるようにするためのユーザの負担を軽減する技術を提供することを目的とする。
本明細書によって開示されるユニバーサルデバイスドライバは、1以上のデバイスと通信可能に接続されている情報処理装置で実行されるユニバーサルデバイスドライバであって、前記1以上のデバイスの中からいずれかのデバイスをユーザに指定させる第1の指定処理と、前記第1の指定処理によって指定されたデバイスの機種に対応する専用デバイスドライバが前記情報処理装置にインストールされているか否かを判定する第1の判定処理と、前記第1の判定処理によって前記対応する専用デバイスドライバがインストールされていると判定された場合に、前記指定されたデバイスと通信するためのポートを、前記対応する専用デバイスドライバで使用するポートとして設定するか、又は前記対応する専用デバイスドライバで使用するポートとして設定するよう前記対応する専用デバイスドライバに指示する第1のポート設定処理と、前記第1の判定処理によって前記対応する専用デバイスドライバがインストールされていると判定された場合に、前記対応する専用デバイスドライバを使用できることをユーザに報知する第1の報知処理と、前記第1の判定処理によって前記対応する専用デバイスドライバがインストールされていないと判定された場合に、前記指定されたデバイスと通信するためのポートを、当該ユニバーサルデバイスドライバで使用するポートとして設定する第2のポート設定処理と、前記第2のポート設定処理によってポートが設定された後に、当該設定されたポートを介して前記指定されたデバイスを制御する第1の制御処理と、を前記情報処理装置に実行させる。
また、本明細書によって開示されるユニバーサルデバイスドライバは、前記第1の報知処理において、前記第1の指定処理で指定されたデバイスの機種に対応する専用デバイスドライバを呼び出して制御条件を設定するための画面を表示させることにより、当該専用デバイスドライバを使用できることをユーザに報知する。
また、本明細書によって開示されるユニバーサルデバイスドライバは、1以上のデバイスと通信可能に接続されている情報処理装置で実行されるユニバーサルデバイスドライバであって、デバイスの機種に対応する専用デバイスドライバが前記情報処理装置にインストールされているか否かを判定する第2の判定処理と、前記第2の判定処理で前記専用デバイスドライバがインストールされていると判定された場合に、前記1以上のデバイスの中から当該インストールされている専用デバイスドライバに対応する機種のデバイスを検索する検索処理と、前記検索処理によってデバイスが見つかった場合に、見つかったデバイスの中からいずれかのデバイスをユーザに指定させる第2の指定処理と、前記第2の指定処理によって指定されたデバイスと通信するためのポートを、当該指定されたデバイスの機種に対応する前記専用デバイスドライバで使用するポートとして設定するか、又は前記対応する専用デバイスドライバで使用するポートとして設定するよう前記対応する専用デバイスドライバに指示する第3のポート設定処理と、前記第2の指定処理によって指定されたデバイスに対応する専用デバイスドライバを使用できることをユーザに報知する第2の報知処理と、前記第2の判定処理で専用デバイスドライバがインストールされていないと判定された場合、又は、前記検索処理でデバイスが見つからなかった場合に、前記1以上のデバイスの中からいずれかのデバイスをユーザに指定させる第3の指定処理と、前記第3の指定処理によって指定されたデバイスと通信するためのポートを、当該ユニバーサルデバイスドライバで使用するポートとして設定する第4のポート設定処理と、前記第4のポート設定処理によってポートが設定された後に、当該設定されたポートを介して前記指定されたデバイスを制御する第2の制御処理と、を前記情報処理装置に実行させる。
また、本明細書によって開示されるユニバーサルデバイスドライバは、前記情報処理装置にインストールされている専用デバイスドライバに対応するデバイスを検索するか否かをユーザに指定させる第4の指定処理を前記情報処理装置に実行させ、前記検索処理において、前記第4の指定処理で前記対応するデバイスを検索するよう指定されている場合に、前記1以上のデバイスの中から前記インストールされている専用デバイスドライバに対応する機種のデバイスを検索し、前記第3の指定処理において、前記第2の判定処理で専用デバイスドライバがインストールされていないと判定された場合、前記第4の指定処理で前記対応するデバイスを検索するよう指定されていない場合、又は、前記検索処理でデバイスが見つからなかった場合に、前記1以上のデバイスの中からいずれかのデバイスをユーザに指定させる。
また、本明細書によって開示されるユニバーサルデバイスドライバは、デバイスに実行させる機能をユーザに指定させる機能指定処理を前記情報処理装置に実行させ、前記第2の判定処理において、前記機能指定処理によって指定された機能を制御可能な前記専用デバイスドライバが前記情報処理装置にインストールされているか否かを判定する。
また、本明細書によって開示されるデバイス制御方法は、1以上のデバイスと通信可能に接続されており、少なくともユニバーサルデバイスドライバがインストールされている情報処理装置を用いたデバイス制御方法であって、前記1以上のデバイスの中からいずれかのデバイスをユーザに指定させる第1の指定段階と、前記第1の指定段階で指定されたデバイスの機種に対応する専用デバイスドライバが前記情報処理装置にインストールされているか否かを判定する第1の判定段階と、前記第1の判定段階で前記対応する専用デバイスドライバがインストールされていると判定された場合に、前記指定されたデバイスと通信するためのポートを、前記対応する専用デバイスドライバで使用するポートとして設定するか、又は前記対応する専用デバイスドライバで使用するポートとして設定するよう前記対応する専用デバイスドライバに指示する第1のポート設定段階と、前記第1の判定段階で前記対応する専用デバイスドライバがインストールされていると判定された場合に、前記対応する専用デバイスドライバを使用できることをユーザに報知する第1の報知段階と、前記第1の判定段階で前記対応する専用デバイスドライバがインストールされていないと判定された場合に、前記指定されたデバイスと通信するためのポートを、前記ユニバーサルデバイスドライバで使用するポートとして設定する第2のポート設定段階と、前記第2のポート設定段階でポートが設定された後に、前記ユニバーサルデバイスドライバを実行し、当該設定されたポートを介して前記指定されたデバイスを制御する第1の制御段階と、
を含む。
また、本明細書によって開示されるデバイス制御方法は、前記第1の判定段階において前記専用デバイスドライバがインストールされていると判定された場合に、前記第1のポート設定段階の前に、当該専用デバイスドライバで使用するポートとして設定されている元のポートのポート識別情報を取得する第1の取得段階と、前記専用デバイスドライバによる前記指定されたデバイスの制御が終了した後に、前記専用デバイスドライバで使用するポートを、前記ポート識別情報によって識別される元のポートに戻す復元段階と、を含む。
また、本明細書によって開示されるデバイス制御方法は、前記専用デバイスドライバで使用するポートを元のポートに戻すか否かをユーザに指定させる第2の指定段階を含み、前記復元段階において、前記第2の指定段階で元のポートに戻すよう指定されている場合は前記専用デバイスドライバで使用するポートを元のポートに戻し、前記第2の指定段階で元のポートに戻すよう指定されていない場合は元のポートに戻さない。
また、本明細書によって開示されるデバイス制御方法は、前記第1の指定段階において、USB接続されているデバイス以外の1以上のデバイスの中からいずれかのデバイスをユーザに指定させ、前記復元段階において、前記元のポートの種類がUSBポートである場合は前記専用デバイスドライバで使用するポートを元のポートに戻し、それ以外の種類である場合は元に戻さない。
また、本明細書によって開示されるデバイス制御方法は、前記第1の判定段階において前記対応する専用デバイスドライバがインストールされていると判定された場合に、前記第1の指定段階で指定されたデバイスと通信するためのポートのポート識別情報を取得する第2の取得段階と、前記復元段階において前記専用デバイスドライバで使用するポートを元のポートに戻した後に、当該元のポートを介してデバイスと通信可能か否かを判定する通信判定段階と、前記通信判定段階において通信不能と判定された場合に、前記第2の取得段階で取得したポート識別情報によって識別されるポートを、前記専用デバイスドライバで使用するポートとして再設定する再設定段階と、を含む。
また、本明細書によって開示されるデバイス制御方法は、1以上のデバイスと通信可能に接続されており、少なくともユニバーサルデバイスドライバがインストールされている情報処理装置を用いたデバイス制御方法であって、デバイスの機種に対応する専用デバイスドライバが前記情報処理装置にインストールされているか否かを判定する第2の判定段階と、前記第2の判定段階において前記専用デバイスドライバがインストールされていると判定された場合に、前記1以上のデバイスの中から当該インストールされている専用デバイスドライバに対応する機種のデバイスを検索する検索段階と、前記検索段階でデバイスが見つかった場合に、見つかったデバイスの中からいずれかのデバイスをユーザに指定させる第3の指定段階と、前記第3の指定段階で指定されたデバイスと通信するためのポートを、当該指定されたデバイスの機種に対応する前記専用デバイスドライバで使用するポートとして設定するか、又は前記対応する専用デバイスドライバで使用するポートとして設定するよう当該専用デバイスドライバに指示する第3のポート設定段階と、前記第3の指定段階で指定されたデバイスに対応する専用デバイスドライバを使用できることをユーザに報知する第2の報知段階と、前記第2の判定段階で専用デバイスドライバがインストールされていないと判定された場合、又は、前記検索段階でデバイスが見つからなかった場合に、前記1以上のデバイスの中からいずれかのデバイスをユーザに指定させる第3の指定段階と、前記第3の指定段階で指定されたデバイスと通信するためのポートを、前記ユニバーサルデバイスドライバで使用するポートとして設定する第4のポート設定段階と、前記第4のポート設定段階でポートが設定された後に、当該設定されたポートを介して前記指定されたデバイスを制御する第2の制御段階と、を含む。
本発明によれば、ユニバーサルデバイスドライバでユーザが指定したデバイスに対応する専用デバイスドライバがインストールされている場合に、当該指定したデバイスを専用デバイスドライバから制御できるようにするためのユーザの負担を軽減できる。
実施形態1に係る印刷システムの構成を示す模式図。 ポートの生成、及び切り替えを概念的に説明するための模式図。 プリンタ3を選択する際の画面遷移図。 アプリケーションから呼び出されたときのユニバーサルプリンタドライバの処理の流れを示すフローチャート。 メッセージ画面の一例を示す模式図。 印刷命令が出力されたときの専用プリンタドライバの処理の流れを示すフローチャート。 印刷終了後の専用プリンタドライバの処理の流れを示すフローチャート。 実施形態2に係る印刷終了後の専用プリンタドライバの処理の流れを示すフローチャート。 実施形態3に係るアプリケーションから呼び出されたときのユニバーサルプリンタドライバの処理の流れを示すフローチャート。 実施形態4に係るアプリケーションから呼び出されたときのユニバーサルプリンタドライバの処理の流れを示すフローチャート。
<実施形態1>
本発明の実施形態1を図1ないし図7によって説明する。
(1)印刷システムの構成
図1は、実施形態1に係る印刷システム1の構成を示す模式図である。印刷システム1は、パーソナルコンピュータ2(情報処理装置の一例)と1以上のプリンタ3(デバイスの一例)とを備えて構成されている。パーソナルコンピュータ(PC)2とプリンタ3とはLAN(Local Area Network)やインターネットなどの通信ネットワーク5を介して通信可能に接続されている。
(1−1)パーソナルコンピュータの構成
PC2は、CPU21、ROM22、RAM23、記憶部24、ディスプレイ駆動回路(駆動回路)25、USBインタフェース(USB I/F)26、ネットワークインタフェース(NW I/F)27などを備えて構成されている。
CPU21は、ROM22や記憶部24に記憶されている各種のプログラムを実行することによってPC2の各部を制御する。ROM22にはCPU21によって実行される各種のプログラムやデータなどが記憶されている。RAM23はCPU21が各種の処理を実行するための主記憶装置として用いられる。
記憶部24は、ハードディスクやフラッシュメモリなどの不揮発性のメモリを用いて各種のプログラムやデータを記憶する装置である。記憶部24には、オペレーティングシステム(OS)29、アプリケーションプログラム30(ワードプロセッサ、表計算ソフト、画像編集ソフトなど)、ユニバーサルプリンタドライバプログラム31(ユニバーサルデバイスドライバの一例)、専用プリンタドライバプログラム32(専用デバイスドライバの一例)などが記憶される。
本実施形態ではOS29としてMicrosoft社のWINDOWS(登録商標)を例に説明する。なお、OS29はWINDOWS(登録商標)に限られるものではない。
ディスプレイ駆動回路25は、CRTや液晶ディスプレイなどの表示装置28を駆動する回路であり、ケーブルを介して表示装置28と接続されている。
USBインタフェース26はUSBホストインタフェースとして構成されており、USBケーブルを介してマウスやキーボードなどの入力装置29と接続される。
ネットワークインタフェース27は、通信ネットワーク5を介してプリンタ3などの外部の装置と通信可能に接続されている。上述したアプリケーション30やユニバーサルプリンタドライバ31などのプログラムは通信ネットワーク5を介して外部のサーバからダウンロードすることができる。
(1−2)プリンタ
複数のプリンタ3(プリンタ3A〜3D)は、紙などの被記録媒体に電子写真方式、インクジェット方式などで画像を形成する装置である。複数のプリンタ3は互いに異なる機種であってもよいし、互いに同じ機種であってもよい。以降の説明において単にプリンタ3というときはプリンタ3A〜3Dのいずれか一つのことをいう。
(2)ポートの生成、及び切り替え
図2は、ユニバーサルプリンタドライバプログラム31を実行するCPU21(以下、単に「ユニバーサルプリンタドライバ31」という)によるポートの生成、及び切り替えを概念的に説明するための模式図である。
ここではポートとしてTCP/IPポートを例に説明する。TCP/IPポートは通信ネットワーク5を介してプリンタ3と通信するための論理的なインタフェースである。例えばWINDOWSではTCP/IPポートは「StandardTCP/IPポート」と呼ばれている。
なお、ポートはTCP/IPポートに限られるものではなく、シリアルポートを介してプリンタ3と通信するための論理ポート、パラレルポートを介してプリンタ3と通信するための論理ポート、USBを介してプリンタ3と通信するための論理ポート(USBポート)などであってもよい。
WINDOWSではポートの生成や切り替えを行うためには管理者権限(アドミニストレータ権限、root権限など)が必要とされており、管理者権限を持たないユーザはポートの生成や切り替えを行うことができない。
そこで、ユニバーサルプリンタドライバ31は、ポート切替ツール35を用いてポートの生成や切り替えを行う。ポート切替ツール35は常駐プログラムであり、管理者権限又は、それよりも高いシステム権限で実行される。従って、管理者権限を持たないユーザであってもポートの生成や切り替えを行うことができる。
ポート切替ツール35はユニバーサルプリンタドライバプログラム31の一部であるが、便宜上、ここではユニバーサルプリンタドライバプログラム31とは別プログラムとして説明する。
ポートの設定では、ユニバーサルプリンタドライバ31は、先ず、生成するポートのポート名と、通信するプリンタ3のIPアドレス(通信ネットワーク5上の所在を示す所在情報)とを指定して、ポート切替ツール35にポートの生成を指示する。
ポート切替ツール35を実行するCPU21(以下、単に「ポート切替ツール35」という)は、ユニバーサルプリンタドライバ31からポートの生成が指示されると、OS29(具体的には例えばOS29のポートモニタ29a)にポート生成命令を出力する。OS29はポート生成命令が出力されるとそのポート生成命令で指定されているIPアドレスが設定されているTCP/IPポート40を生成し、生成したTCP/IPポート40にそのポート生成命令で指定されているポート名(ポート識別情報の一例)を付与する。なお、ポート名はOS29によって自動で生成される構成であってもよい。
次に、ユニバーサルプリンタドライバ31は、ポートを設定する対象がユニバーサルプリンタドライバ31であることを示す情報と、上述したポート名とを指定して、ポート切替ツール35にポートの切り替えを指示する。
ポート切替ツール35は、ポートの切り替えが指示されると、OS29(具体的には例えばOS29のポートモニタ29a)にポート切替命令を出力する。
OS29は、ポート切替命令が出力されるとそのポート切替命令で指定されているポート名によって識別されるTCP/IPポート40を、ユニバーサルプリンタドライバ31で使用するTCP/IPポート40として設定する。
このように、ユニバーサルプリンタドライバ31はポート切替ツール35を介してOS29にポートの生成や切り替えを指示することにより、ユーザ権限で実行されてもポートの生成や切り替えを行うことができる。
なお、ここではユニバーサルプリンタドライバ31がポート切替ツール35を用いてポートの生成や切り替えを行う場合を例に説明したが、本実施形態に係る専用プリンタドライバ32もポート切替ツール35を用いてポートの生成や切り替えを行うように構成されている。
また、ここではポート切替ツール35を用いてポートの生成や切り替えを行う場合を例に説明するが、ユーザが管理者権限を持っている場合や、管理者権限を持たないユーザでもポートの生成や切り替えを行えるOSの場合には、ポート切替ツール35を用いなくてもよい。
(3)プリンタの選択
図3は、ユニバーサルプリンタドライバ31でプリンタ3を選択する際の画面遷移図である。アプリケーションプログラム30を実行するCPU21(以下、単に「アプリケーション30」という)によって表示されるメニューでユーザが印刷を選択すると、アプリケーション30によって印刷画面50が表示され、ユーザは印刷画面50でプリンタ3を選択することができる。
ユニバーサルプリンタドライバ31は特定の1機種のプリンタ3にのみ対応しているのではないので、ユニバーサルプリンタドライバ31を用いて印刷する場合は、ユーザはプリンタ3ではなくユニバーサルプリンタドライバ31を直接選択する。ここではユニバーサルプリンタドライバ31が選択されたものとする。
ユニバーサルプリンタドライバ31が選択されて[プロパティ]ボタン50aがクリックされると、アプリケーション30からユニバーサルプリンタドライバ31が呼び出される。
図4は、アプリケーション30から呼び出されたときのユニバーサルプリンタドライバ31の処理の流れを示すフローチャートである。ここでは、ユーザによって指定されたプリンタ3と通信するためのポートをそのプリンタ3の機種に対応する専用デバイスドライバで使用するポートとして設定するよう、ユニバーサルプリンタドライバ31が当該対応する専用デバイスドライバに指示する場合を例に説明する。
S101では、ユニバーサルプリンタドライバ31は、PC2と同じサブネットに接続されているプリンタ3にデバイス情報(プリンタ名、IPアドレス、対応する専用プリンタドライバ32のドライバ名、実行可能な機能の情報など)を要求するデータをブロードキャストによって送信し、その返答として得られたデバイス情報に基づいて、ネットワーク上のプリンタ3を検索する。
S102では、ユニバーサルプリンタドライバ31は見つかったプリンタ3のプリンタ名をプリンタ選択画面51(図3参照)に一覧表示し、ユーザにいずれかのプリンタ3を指定させる(第1の指定処理、第1の指定段階の一例)。
S103では、ユニバーサルプリンタドライバ31はユーザによって指定されたプリンタ3に対応する専用プリンタドライバ32がPC2にインストールされているか否か(あるか否か)を判定する(第1の判定処理、第1の判定段階の一例)。
この判定は、例えばPC2にインストールされている専用プリンタドライバ32のドライバ名の一覧をOS29から取得することによって行うことができる。
具体的には例えば、ユニバーサルプリンタドライバ31は、ユーザによって指定されたプリンタ3から取得したデバイス情報に含まれているドライバ名が、OS29から取得したドライバ名の一覧に含まれているか否かを判定し、含まれていれば専用プリンタドライバ32がインストールされていると判断する。
ユニバーサルプリンタドライバ31は、専用プリンタドライバ32がインストールされている場合はS104に進み、インストールされていない場合はS106に進む。
S104では、ユニバーサルプリンタドライバ31は、指定されたプリンタ3に対応する専用プリンタドライバ32のドライバ名と、指定されたプリンタ3のIPアドレスとを、OS29のレジストリ(システム情報)の所定のセクションに書き込む。詳しくは後述するが、ドライバ名とIPアドレスとをレジストリに書き込むことは、専用デバイスドライバにポートの設定を指示する一例である。(第1のポート設定処理、第1のポート設定段階の一例)。
S105では、ユニバーサルプリンタドライバ31はメッセージ画面53(図3、図5参照)を表示装置28に表示させ、専用プリンタドライバ32を使用できることをユーザに報知する(第1の報知処理、第1の報知段階の一例)。
メッセージ画面53でユーザが[OK]ボタンをクリックすると印刷画面50に戻る。印刷画面50はユニバーサルプリンタドライバ31が選択されたままの状態であるので、専用プリンタドライバ32を使用して印刷を行わせる場合は、ユーザは印刷画面50でプリンタ3(S102で指定したプリンタ3)を指定し直して[印刷]ボタン50bをクリックする。
印刷画面50で[印刷]ボタン50bをクリックすると、アプリケーション30から、印刷画面50で指定されたプリンタ3に対応する専用プリンタドライバ32に印刷命令が出力される。
S106では、ユニバーサルプリンタドライバ31は、S102で指定されたプリンタ3と通信するためのTCP/IPポート40を、ユニバーサルプリンタドライバ31で使用するポートとして設定する(第2のポート設定処理、第2のポート設定段階の一例)。
具体的には、ユニバーサルプリンタドライバ31は、先ず、所定の命名規則に従ってポート名を生成し、S102で指定されたプリンタ3のIPアドレスと生成したポート名とを指定してポート切替ツール35にTCP/IPポート40の生成を指示する。この指示はポート切替ツール35によってポート生成命令としてOS29に出力され、OS29はそのポート生成命令で指定されているポート名のポートが存在していなければ、そのポート生成命令に従ってTCP/IPポート40を生成する。
次に、ユニバーサルプリンタドライバ31は、ポートを設定する対象がユニバーサルプリンタドライバ31であることを示す情報と、生成したポート名とを指定して、ポート切替ツール35にポートの切り替えを指示する。この指示はポート切替ツール35によってポート切替命令としてOS29に出力され、OS29はそのポート切替命令で指定されているポート名のポートを、ユニバーサルプリンタドライバ31で使用するポートとして設定する。
S107では、ユニバーサルプリンタドライバ31は印刷条件設定画面52(図3参照)を表示し、プリンタ3に実行させる機能をユーザに指定させる。
印刷条件設定画面52では、ユーザはカラー/モノクロ、高画質/低画質などの一般的な印刷機能について、プリンタ3にその印刷機能を実行させるか否かを指定することができる。
印刷条件設定画面52で図示しない[OK]ボタンをクリックすると印刷画面50に戻り、印刷画面50でユーザが[印刷]ボタン50bをクリックすると、アプリケーション30からユニバーサルプリンタドライバ31に印刷命令が出力される。
ユニバーサルプリンタドライバ31は、アプリケーション30から印刷命令が出力されると、出力された印刷命令に基づいて印刷データを生成し、生成した印刷データを、ユニバーサルプリンタドライバ31で使用するポートとして設定されているTCP/IPポート40を介してプリンタ3に出力する(第1の制御処理、第1の制御段階の一例)。
(3−2)印刷命令が出力されたときの専用プリンタドライバの処理
図6は、印刷命令が出力されたときの専用プリンタドライバ32の処理の流れを示すフローチャートである。
S201では、専用プリンタドライバ32はポートの変更指示があるか否かを判定する。
具体的には、専用プリンタドライバ32は、S104の処理でユニバーサルプリンタドライバ31によりレジストリの所定のセクションに自身のドライバ名が書き込まれているか否かを判定し、書き込まれている場合はポートの変更指示があると判定してS202に進み、書き込まれていない場合はポートの変更指示がないと判定してS205に進む。
S202では、専用プリンタドライバ32は現在自身に設定されているTCP/IPポート40(「元のポート」という)のポート名をOS29から取得し、取得したポート名を記憶部24に記憶させる(第1の取得段階の一例)。これは、印刷終了後にTCP/IPポート40を現在のTCP/IPポート40(元のポート)に戻すためである。
S203では、専用プリンタドライバ32はレジストリに書き込まれているIPアドレスによって特定されるプリンタ3(すなわちS102で指定されたプリンタ3)と通信するためのTCP/IPポート40を、当該専用プリンタドライバ32で使用するポートとして設定する。この設定の手順はS106で説明した手順と同様であるので説明は省略する。
S204では、専用プリンタドライバ32はS203で設定したTCP/IPポート40(変更後のポート)のポート名を記憶部24に記憶させる(第2の取得段階の一例)。
S205では、専用プリンタドライバ32はアプリケーション30から出力された印刷命令に基づいて印刷データを生成し、生成した印刷データを、当該専用プリンタドライバ32で使用するTCP/IPポート40として設定されているTCP/IPポート40を介してプリンタ3に送信する。
(3−3)印刷終了後の専用プリンタドライバの処理
図7は、印刷終了後の専用プリンタドライバ32の処理の流れを示すフローチャートである。本処理はS205で生成した印刷データをプリンタ3に送信した後で開始される。
S301では、専用プリンタドライバ32はS203で設定したポートをS202で記憶した元のポートに戻すか否かを判断する(第2の指定段階の一例)。
具体的には例えば、S202で元のポートのポート名を記憶部24に記憶させた場合に、専用プリンタドライバ32は元のポートに戻すか否かをユーザに指定させるための図示しない画面を表示し、その画面でユーザが「元に戻す」を指定した場合に、元のポートに戻すと判断する。
専用プリンタドライバ32は、元のポートに戻すと判断した場合はS302に進み、元のポートに戻さないと判断した場合は本処理を終了する。
なお、元のポートに戻すか否かをユーザに選択させるのではなく、無条件に元のポートに戻すようにしてもよい。その場合は、S301の判定は不要であり、常にS302に進むことになる。
S302では、専用プリンタドライバ32は当該専用プリンタドライバ32で使用するポートを元に戻す(復元段階の一例)。
具体的には、専用プリンタドライバ32はS202で記憶したポート名(元のポートのポート名)を指定してポート切替ツール35にTCP/IPポート40の切り替えを指示する。この指示はポート切替ツール35からOS29にポート切替命令として出力され、ポート切替命令が出力されたOS29は、指定されたポート名のTCP/IPポート40を、当該専用プリンタドライバ32で使用するTCP/IPポート40として設定する。
S303では、専用プリンタドライバ32は元のポートを介してプリンタ3と通信可能であるか否かを判断し、通信可能である場合は本処理を終了し、通信不能である場合はS304に進む(通信判定段階の一例)。
S304では、専用プリンタドライバ32はS204で記憶したポート名によって識別されるTCP/IPポート40(変更後のポート)を、当該専用プリンタドライバ32で使用するポートとして再設定する(再設定段階の一例)。この設定の手順はS106で説明した手順と同様であるので説明は省略する。
(4)実施形態の効果
ユニバーサルプリンタドライバ31でユーザがプリンタ3を指定した場合に、指定されたプリンタ3に対応する専用プリンタドライバ32がインストールされている場合は、指定されたプリンタ3を専用プリンタドライバ32から制御するようにすると、指定されたプリンタ3が備える機能をほぼ全て制御できるようになる。
ところで、指定されたプリンタ3を専用プリンタドライバ32から制御するためには、指定されたプリンタ3と通信するためのポートが専用プリンタドライバ32で使用するポートとして設定されていることが条件である。
しかしながら、専用プリンタドライバ32には必ずしも指定されたプリンタ3と通信するためのポートが専用プリンタドライバ32で使用するポートとして設定されているとは限らず、設定されていない場合には、指定されたプリンタ3と通信するためのポートを、専用プリンタドライバ32で使用するポートとして設定しなければならない。
しかしながら、この設定をユーザに手動で行わせることはユーザにとって負担である。また、ポートの変更に不慣れなユーザにとっては変更が難しい場合もある。
実施形態1に係るユニバーサルプリンタドライバ31によると、指定されたプリンタ3の機種に対応する専用プリンタドライバ32がインストールされている場合は、指定されたプリンタ3と通信するためのポートを、専用プリンタドライバ32で使用するポートとして設定するよう専用プリンタドライバ32に指示する。このため、指定したプリンタ3を専用プリンタドライバ32から制御できるようにするためのユーザの負担を軽減でき、ユーザの使い勝手が向上する。
更に、実施形態1に係るプリンタ制御方法によると、専用プリンタドライバ32によるプリンタ3の制御が終了した後に、専用プリンタドライバ32で使用するポートを元のポートに戻すことができる。
更に、実施形態1に係るプリンタ制御方法によると、専用プリンタドライバ32によるプリンタ3の制御が終了した後に専用プリンタドライバ32で使用するポートを元のポートに戻すか否かをユーザが指定できる。
更に、実施形態1に係るプリンタ制御方法によると、専用プリンタドライバ32で使用するポートを元のポートに戻した場合に元のポートを介してプリンタ3と通信不能な場合は、ユニバーサルプリンタドライバ31で指定されたプリンタ3と通信するためのポートを当該専用プリンタドライバ32で使用するためのポートに再設定するので、専用プリンタドライバ32からプリンタ3を制御できなくなってしまうことを低減できる。
<実施形態2>
次に、本発明の実施形態2を図8によって説明する。
ユニバーサルプリンタドライバはLANなどの通信ネットワーク5に接続されているプリンタを検索の対象としており、USB接続などのローカル接続されているプリンタを検索の対象にしないように構成されている。そこで、実施形態2では専用プリンタドライバの元のポートの種類がUSBポート(ローカル接続のポート)である場合は元のポートに戻し、それ以外の種類である場合は元に戻さない。
図8は、実施形態2に係る印刷終了後の専用プリンタドライバ32の処理の流れを示すフローチャートである。
S401では、実施形態2に係る専用プリンタドライバ(以下、「専用プリンタドライバ」という)はS202で記憶したポート名(元のポートのポート名)によって識別されるポートがUSBポートであるか否かを判定する。
この判定は、例えばポート名に「USB」という文字列が含まれているか否かによって行うことができる。
専用プリンタドライバは、記憶したポート名に「USB」という文字列が含まれている場合は元のポートがUSBポートであると判断してS402に進み、含まれていない場合はUSBポートではないと判断して本処理を終了する。
S402では、専用プリンタドライバは元のポートを当該専用プリンタドライバで使用するポートとして設定するようOS29に指示する。
以下、実施形態2に係るユニバーサルプリンタドライバの効果について説明する。
USB接続などのローカル接続されているプリンタと同じ機種のプリンタがLANなどの通信ネットワーク5にも接続されている状況を考えると、USB接続されているプリンタがユニバーサルプリンタドライバの検索の対象にならない場合は、ローカル接続されているプリンタと通信するためのポート(USBポート)が「使用するポート」として設定されている専用プリンタドライバに、通信ネットワーク5に接続されているプリンタ3と通信するためのポートが「使用するポート」として設定されると、その後ローカル接続されているプリンタ3を使用できなくなる。
なぜなら、ローカル接続されているプリンタは検索の対象にならないので、ユニバーサルプリンタドライバは、ローカル接続されているプリンタと通信するためのポート(USBポート)を、対応する専用プリンタドライバで使用するポートとして設定するよう当該対応する専用プリンタドライバに指示することができないからである。
一方、ネットワークに同じ機種のプリンタ3が複数接続されている状況を考えると、これらのプリンタ3の間でポートが切り替わったとしても、プリンタ3の制御が終了した後に元のポートに戻さなくても影響は小さい。なぜなら、その後S102で、専用プリンタドライバに設定されていた元のポートに対応するプリンタ3を指定することにより、ユニバーサルプリンタドライバは、そのプリンタ3と通信するためのポートを、対応する専用プリンタドライバで使用するポートとして設定するよう当該対応する専用プリンタドライバに指示することができるからである。
実施形態2に係るユニバーサルプリンタドライバによると、元のポートの種類がUSBポートである場合は、専用プリンタドライバで使用するポートを元のポートに戻すので、プリンタ3の制御が終了した後も、USB接続されているプリンタを使用できる。
<実施形態3>
次に、本発明の実施形態3を図9によって説明する。
実施形態1では先にプリンタ3を検索し、その後に専用プリンタドライバがインストールされているか否かを判定しているが、実施形態3では先に専用プリンタドライバ32がインストールされているか否かを判定し、その後にプリンタ3を検索する。
図9は、実施形態3に係る「アプリケーションから呼び出されたときのユニバーサルプリンタドライバの処理」の流れを示すフローチャートである。ここでは実施形態1と実質的に同一の処理には同一の符号を付して説明を省略する。
S501では、実施形態3に係るユニバーサルプリンタドライバ(以下、単に「ユニバーサルプリンタドライバ」という)は、PC2に専用プリンタドライバ32がインストールされているか否か(あるか否か)を判定する(第2の判定処理、第2の判定段階の一例)。
具体的には例えば、ユニバーサルプリンタドライバは、各専用プリンタドライバ32のドライバ名の情報(専用プリンタドライバ情報)を有しているものとする。ユニバーサルプリンタドライバは、PC2にインストールされているプリンタドライバのドライバ名の一覧をOS29から取得し、取得した一覧に含まれているいずれかのドライバ名が専用プリンタドライバ情報に含まれていれば、専用プリンタドライバ32がインストールされていると判定する。
なお、専用プリンタドライバ情報は通信ネットワーク5を介してアップデートされるようにしてもよい。
ユニバーサルプリンタドライバは、専用プリンタドライバ32がインストールされている場合はS502に進み、インストールされていない場合はS101に進む。
S502では、ユニバーサルプリンタドライバはインストールされている専用プリンタドライバ32に対応するプリンタ3を優先して検索するか否かをユーザに指定させるための画面を表示し、ユーザが「優先して検索する」を指定した場合はS503に進み、「優先して検索する」を指定しなかった場合はS101に進む(第4の指定処理の一例)。
S503では、ユニバーサルプリンタドライバはインストールされている専用プリンタドライバ32に対応する機種のプリンタ3を検索する(検索処理、検索段階の一例)。
ユニバーサルプリンタドライバは、対応する機種のプリンタ3が見つかった場合はS504に進み、見つからなかった場合はS101に進む。
S504では、ユニバーサルプリンタドライバはプリンタ選択画面を表示し、見つかったプリンタ3の中からいずれかのプリンタ3をユーザに指定させる(第2の指定処理、第3の指定段階の一例)。
実施形態3において、S104は第3のポート設定処理、及び第3のポート設定段階の一例である。S105は第2の報知処理、及び第2の報知段階の一例である。S102は第3の指定処理、及び第3の指定処理の一例である。S106は第4のポート設定処理、及び第4のポート設定段階の一例である。S107は、第2の制御処理、第2の制御段階の一例である。
以上説明した実施形態3に係るユニバーサルプリンタドライバによると、指定したプリンタ3を専用プリンタドライバ32から制御できるようにするためのユーザの負担を軽減でき、ユーザの使い勝手が向上する。
更に、実施形態3に係るユニバーサルプリンタドライバによると、PC2にインストールされている専用プリンタドライバ32に対応するプリンタ3を検索するか否かをユーザに指定させるので、専用プリンタドライバ32に対応するプリンタ3を検索するか否かをユーザが指定できる。
<実施形態4>
次に、本発明の実施形態4を図10によって説明する。
実施形態4は実施形態3の変形例である。実施形態4では、プリンタ3に実行させる印刷機能をユーザに指定させ、指定された印刷機能がユニバーサルプリンタドライバから制御できないプリンタ固有の印刷機能である場合に、専用プリンタドライバ32がインストールされているか否かを判定する。
図10は、実施形態4に係る「アプリケーションから呼び出されたときのユニバーサルプリンタドライバの処理」の流れを示すフローチャートである。ここでは実施形態1と実質的に同一の処理には同一の符号を付して説明を省略する。
S601では、実施形態4に係るユニバーサルプリンタドライバ(以下、単に「ユニバーサルプリンタドライバ」という)は、プリンタ固有の印刷機能で検索を行うか否かを選択させるための図示しない画面を表示し、プリンタ固有の印刷機能で検索を行うか否かをユーザに選択させる。
ユニバーサルプリンタドライバは、ユーザがプリンタ固有の印刷機能での検索を選択した場合はS602に進み、プリンタ固有の印刷機能での検索を選択しなかった場合はS101に進む。
S602では、ユニバーサルプリンタドライバは実施形態4に係る印刷条件設定画面を表示し、プリンタ3に実行させる印刷機能をユーザに指定させる(機能指定処理の一例)。
実施形態4に係る印刷条件設定画面では、ユーザはカラー/モノクロ、高画質/低画質などの一般的な印刷機能に加えて、両面印刷、セキュアプリントなどのプリンタ3に固有の印刷機能を実行させるか否かを指定することができる。
S603では、ユニバーサルプリンタドライバは両面印刷やセキュアプリントなどのプリンタ固有の印刷機能を実行させるよう指定されているか否かを判定し、指定されている場合はS604に進み、指定されていない場合はS101に進む。
S604では、ユニバーサルプリンタドライバは、指定された印刷機能を制御できる専用プリンタドライバ32がインストールされているか否かを判定する。
具体的には例えば、ユニバーサルプリンタドライバは、各専用プリンタドライバ32のドライバ名と各専用プリンタドライバ32が制御可能な印刷機能とを対応付けたプリンタドライバ機能情報を有しているものとする。ユニバーサルプリンタドライバは、PC2にインストールされているプリンタドライバのドライバ名の一覧をOS29から取得し、取得した一覧に含まれているいずれかのドライバ名に対応付けられている印刷機能にS602で指定されたプリンタ固有の印刷機能が含まれていれば、プリンタ固有の印刷機能を制御できる専用プリンタドライバ32がインストールされていると判定する。
なお、プリンタドライバ機能情報は通信ネットワーク5を介してアップデートされるようにしてもよい。
ユニバーサルプリンタドライバは、指定されたプリンタ固有の印刷機能を制御できる専用プリンタドライバ32がインストールされている場合はS605に進み、インストールされていない場合はS101に進む。
S605では、ユニバーサルプリンタドライバは指定されたプリンタ固有の印刷機能を制御できる専用プリンタドライバ32に対応する機種のプリンタ3を検索し、見つかった場合はS606に進み、見つからなかった場合はS101に進む。
S606では、ユニバーサルプリンタドライバは図示しないプリンタ選択画面を表示し、見つかったプリンタ3の中からいずれかのプリンタ3をユーザに指定させる。
以上説明した実施形態4に係るユニバーサルプリンタドライバによると、プリンタ3の固有の機能を使う場合に専用プリンタドライバのポートを設定するように指示するので、ユーザは目的の機能を実行可能なプリンタ3の指定が容易になる。
<他の実施形態>
本発明は上記記述及び図面によって説明した実施形態に限定されるものではなく、例えば次のような実施形態も本発明の技術的範囲に含まれる。
(1)上記実施形態1では専用プリンタドライバ32によるプリンタ3の制御が終了した後にポートを元に戻しているが、ポートを元に戻さないようにしてもよい。この場合は、ユニバーサルプリンタドライバを用いた次回の印刷の際に元のポートに接続されていたプリンタ3を選択することで、結果として元のポートに戻すことができる。
(2)上記実施形態ではデバイスとしてプリンタ3を例に説明したが、デバイスはスキャナであってもよいし、ファクシミリ装置であってもよい。また、プリント機能、スキャン機能、コピー機能、ファクシミリ機能などを備えた所謂複合機であってもよい。
(3)上記実施形態では、専用デバイスドライバを使用できることを、メッセージ画面53を表示することによってユーザに報知する場合を例に説明したが、指定されたプリンタ3の機種に対応する専用プリンタドライバ32を呼び出して印刷条件(制御条件の一例)を設定するための画面(例えば印刷条件設定画面と同様の画面)を表示させてもよい。専用プリンタドライバ32によって表示される画面が表示されることで、ユーザは専用プリンタドライバ32を使用できることを理解できるからである。
なお、メッセージ画面53を表示し、更に、印刷条件を設定するための画面を表示させるようにしてもよい。
(4)上記実施形態ではユニバーサルプリンタドライバが専用プリンタドライバ32にポートの設定を指示し、指示された専用プリンタドライバ32が自身でポートを設定する場合を例に説明したが、専用プリンタドライバ32で使用するポートをユニバーサルプリンタドライバが設定する構成であってもよい。
具体的には例えば、指定されたプリンタ3と通信するためのポートを専用プリンタドライバ32で使用するポートとして設定するよう、ユニバーサルプリンタドライバがOS29に指示してもよい。
また、その場合に、専用プリンタドライバ32によるプリンタ3の制御が終了した後に、専用プリンタドライバ32のポートを元のポートに戻すよう、ユニバーサルプリンタドライバがOS29に指示してもよい。
(5)上記実施形態ではユニバーサルプリンタドライバ31又は専用プリンタドライバ32は、使用するポートを設定する場合にポートを生成する生成命令を出力してから、使用するポートを生成したポートに切替える切り替え命令を出力していた。しかしながら、元のポートも切替えるポートも同じ種類(例えばTCP/IPポート)であれば、ポートを切替えずに、現在設定しているポートのポート情報(IPアドレス等)を書き換えるようにしてもよい。
1・・・印刷システム
2・・・パーソナルコンピュータ
3(3A〜3D)・・・プリンタ
5・・・通信ネットワーク
30・・・アプリケーションプログラム
31・・・ユニバーサルプリンタドライバ
32・・・専用プリンタドライバ
35・・・ポート切替ツール
40・・・TCP/IPポート
50・・・印刷画面
51・・・プリンタ選択画面
52・・・印刷条件設定画面
53・・・メッセージ画面

Claims (11)

  1. 1以上のデバイスと通信可能に接続されている情報処理装置で実行されるユニバーサルデバイスドライバであって、
    前記1以上のデバイスの中からいずれかのデバイスをユーザに指定させる第1の指定処理と、
    前記第1の指定処理によって指定されたデバイスの機種に対応する専用デバイスドライバが前記情報処理装置にインストールされているか否かを判定する第1の判定処理と、
    前記第1の判定処理によって前記対応する専用デバイスドライバがインストールされていると判定された場合に、前記指定されたデバイスと通信するためのポートを、前記対応する専用デバイスドライバで使用するポートとして設定するか、又は前記対応する専用デバイスドライバで使用するポートとして設定するよう前記対応する専用デバイスドライバに指示する第1のポート設定処理と、
    前記第1の判定処理によって前記対応する専用デバイスドライバがインストールされていると判定された場合に、前記対応する専用デバイスドライバを使用できることをユーザに報知する第1の報知処理と、
    前記第1の判定処理によって前記対応する専用デバイスドライバがインストールされていないと判定された場合に、前記指定されたデバイスと通信するためのポートを、当該ユニバーサルデバイスドライバで使用するポートとして設定する第2のポート設定処理と、
    前記第2のポート設定処理によってポートが設定された後に、当該設定されたポートを介して前記指定されたデバイスを制御する第1の制御処理と、
    を前記情報処理装置に実行させるユニバーサルデバイスドライバ。
  2. 請求項1に記載のユニバーサルデバイスドライバであって、
    前記第1の報知処理において、前記第1の指定処理で指定されたデバイスの機種に対応する専用デバイスドライバを呼び出して制御条件を設定するための画面を表示させることにより、当該専用デバイスドライバを使用できることをユーザに報知する、ユニバーサルデバイスドライバ。
  3. 1以上のデバイスと通信可能に接続されている情報処理装置で実行されるユニバーサルデバイスドライバであって、
    デバイスの機種に対応する専用デバイスドライバが前記情報処理装置にインストールされているか否かを判定する第2の判定処理と、
    前記第2の判定処理で前記専用デバイスドライバがインストールされていると判定された場合に、前記1以上のデバイスの中から当該インストールされている専用デバイスドライバに対応する機種のデバイスを検索する検索処理と、
    前記検索処理によってデバイスが見つかった場合に、見つかったデバイスの中からいずれかのデバイスをユーザに指定させる第2の指定処理と、
    前記第2の指定処理によって指定されたデバイスと通信するためのポートを、当該指定されたデバイスの機種に対応する前記専用デバイスドライバで使用するポートとして設定するか、又は前記対応する専用デバイスドライバで使用するポートとして設定するよう前記対応する専用デバイスドライバに指示する第3のポート設定処理と、
    前記第2の指定処理によって指定されたデバイスに対応する専用デバイスドライバを使用できることをユーザに報知する第2の報知処理と、
    前記第2の判定処理で専用デバイスドライバがインストールされていないと判定された場合、又は、前記検索処理でデバイスが見つからなかった場合に、前記1以上のデバイスの中からいずれかのデバイスをユーザに指定させる第3の指定処理と、
    前記第3の指定処理によって指定されたデバイスと通信するためのポートを、当該ユニバーサルデバイスドライバで使用するポートとして設定する第4のポート設定処理と、
    前記第4のポート設定処理によってポートが設定された後に、当該設定されたポートを介して前記指定されたデバイスを制御する第2の制御処理と、
    を前記情報処理装置に実行させるユニバーサルデバイスドライバ。
  4. 請求項3に記載のユニバーサルデバイスドライバであって、
    前記情報処理装置にインストールされている専用デバイスドライバに対応するデバイスを検索するか否かをユーザに指定させる第4の指定処理を前記情報処理装置に実行させ、
    前記検索処理において、前記第4の指定処理で前記対応するデバイスを検索するよう指定されている場合に、前記1以上のデバイスの中から前記インストールされている専用デバイスドライバに対応する機種のデバイスを検索し、
    前記第3の指定処理において、前記第2の判定処理で専用デバイスドライバがインストールされていないと判定された場合、前記第4の指定処理で前記対応するデバイスを検索するよう指定されていない場合、又は、前記検索処理でデバイスが見つからなかった場合に、前記1以上のデバイスの中からいずれかのデバイスをユーザに指定させる、ユニバーサルデバイスドライバ。
  5. 請求項3又は請求項4に記載のユニバーサルデバイスドライバであって、
    デバイスに実行させる機能をユーザに指定させる機能指定処理を前記情報処理装置に実行させ、
    前記第2の判定処理において、前記機能指定処理によって指定された機能を制御可能な前記専用デバイスドライバが前記情報処理装置にインストールされているか否かを判定する、ユニバーサルデバイスドライバ。
  6. 1以上のデバイスと通信可能に接続されており、少なくともユニバーサルデバイスドライバがインストールされている情報処理装置を用いたデバイス制御方法であって、
    前記1以上のデバイスの中からいずれかのデバイスをユーザに指定させる第1の指定段階と、
    前記第1の指定段階で指定されたデバイスの機種に対応する専用デバイスドライバが前記情報処理装置にインストールされているか否かを判定する第1の判定段階と、
    前記第1の判定段階で前記対応する専用デバイスドライバがインストールされていると判定された場合に、前記指定されたデバイスと通信するためのポートを、前記対応する専用デバイスドライバで使用するポートとして設定するか、又は前記対応する専用デバイスドライバで使用するポートとして設定するよう前記対応する専用デバイスドライバに指示する第1のポート設定段階と、
    前記第1の判定段階で前記対応する専用デバイスドライバがインストールされていると判定された場合に、前記対応する専用デバイスドライバを使用できることをユーザに報知する第1の報知段階と、
    前記第1の判定段階で前記対応する専用デバイスドライバがインストールされていないと判定された場合に、前記指定されたデバイスと通信するためのポートを、前記ユニバーサルデバイスドライバで使用するポートとして設定する第2のポート設定段階と、
    前記第2のポート設定段階でポートが設定された後に、前記ユニバーサルデバイスドライバを実行し、当該設定されたポートを介して前記指定されたデバイスを制御する第1の制御段階と、
    を含むデバイス制御方法。
  7. 請求項6に記載のデバイス制御方法であって、
    前記第1の判定段階において前記専用デバイスドライバがインストールされていると判定された場合に、前記第1のポート設定段階の前に、当該専用デバイスドライバで使用するポートとして設定されている元のポートのポート識別情報を取得する第1の取得段階と、
    前記専用デバイスドライバによる前記指定されたデバイスの制御が終了した後に、前記専用デバイスドライバで使用するポートを、前記ポート識別情報によって識別される元のポートに戻す復元段階と、
    を含むデバイス制御方法。
  8. 請求項7に記載のデバイス制御方法であって、
    前記専用デバイスドライバで使用するポートを元のポートに戻すか否かをユーザに指定させる第2の指定段階を含み、
    前記復元段階において、前記第2の指定段階で元のポートに戻すよう指定されている場合は前記専用デバイスドライバで使用するポートを元のポートに戻し、前記第2の指定段階で元のポートに戻すよう指定されていない場合は元のポートに戻さない、デバイス制御方法。
  9. 請求項7又は請求項8に記載のデバイス制御方法であって、
    前記第1の指定段階において、USB接続されているデバイス以外の1以上のデバイスの中からいずれかのデバイスをユーザに指定させ、
    前記復元段階において、前記元のポートの種類がUSBポートである場合は前記専用デバイスドライバで使用するポートを元のポートに戻し、それ以外の種類である場合は元に戻さない、デバイス制御方法。
  10. 請求項7乃至請求項9のいずれか一項に記載のデバイス制御方法であって、
    前記第1の判定段階において前記対応する専用デバイスドライバがインストールされていると判定された場合に、前記第1の指定段階で指定されたデバイスと通信するためのポートのポート識別情報を取得する第2の取得段階と、
    前記復元段階において前記専用デバイスドライバで使用するポートを元のポートに戻した後に、当該元のポートを介してデバイスと通信可能か否かを判定する通信判定段階と、
    前記通信判定段階において通信不能と判定された場合に、前記第2の取得段階で取得したポート識別情報によって識別されるポートを、前記専用デバイスドライバで使用するポートとして再設定する再設定段階と、
    を含むデバイス制御方法。
  11. 1以上のデバイスと通信可能に接続されており、少なくともユニバーサルデバイスドライバがインストールされている情報処理装置を用いたデバイス制御方法であって、
    デバイスの機種に対応する専用デバイスドライバが前記情報処理装置にインストールされているか否かを判定する第2の判定段階と、
    前記第2の判定段階において前記専用デバイスドライバがインストールされていると判定された場合に、前記1以上のデバイスの中から当該インストールされている専用デバイスドライバに対応する機種のデバイスを検索する検索段階と、
    前記検索段階でデバイスが見つかった場合に、見つかったデバイスの中からいずれかのデバイスをユーザに指定させる第3の指定段階と、
    前記第3の指定段階で指定されたデバイスと通信するためのポートを、当該指定されたデバイスの機種に対応する前記専用デバイスドライバで使用するポートとして設定するか、又は前記対応する専用デバイスドライバで使用するポートとして設定するよう当該専用デバイスドライバに指示する第3のポート設定段階と、
    前記第3の指定段階で指定されたデバイスに対応する専用デバイスドライバを使用できることをユーザに報知する第2の報知段階と、
    前記第2の判定段階で専用デバイスドライバがインストールされていないと判定された場合、又は、前記検索段階でデバイスが見つからなかった場合に、前記1以上のデバイスの中からいずれかのデバイスをユーザに指定させる第3の指定段階と、
    前記第3の指定段階で指定されたデバイスと通信するためのポートを、前記ユニバーサルデバイスドライバで使用するポートとして設定する第4のポート設定段階と、
    前記第4のポート設定段階でポートが設定された後に、当該設定されたポートを介して前記指定されたデバイスを制御する第2の制御段階と、
    を含むデバイス制御方法。
JP2010219617A 2010-09-29 2010-09-29 ユニバーサルデバイスドライバ、及び、デバイス制御方法 Active JP5454441B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010219617A JP5454441B2 (ja) 2010-09-29 2010-09-29 ユニバーサルデバイスドライバ、及び、デバイス制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010219617A JP5454441B2 (ja) 2010-09-29 2010-09-29 ユニバーサルデバイスドライバ、及び、デバイス制御方法

Publications (2)

Publication Number Publication Date
JP2012073918A JP2012073918A (ja) 2012-04-12
JP5454441B2 true JP5454441B2 (ja) 2014-03-26

Family

ID=46170005

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010219617A Active JP5454441B2 (ja) 2010-09-29 2010-09-29 ユニバーサルデバイスドライバ、及び、デバイス制御方法

Country Status (1)

Country Link
JP (1) JP5454441B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6278628B2 (ja) 2013-07-18 2018-02-14 キヤノン株式会社 情報処理装置、情報処理方法、及びプログラム
JP5578259B1 (ja) * 2013-07-22 2014-08-27 富士ゼロックス株式会社 端末装置、画像形成システム及びプログラム
JP2024018088A (ja) * 2022-07-29 2024-02-08 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム

Also Published As

Publication number Publication date
JP2012073918A (ja) 2012-04-12

Similar Documents

Publication Publication Date Title
KR101536957B1 (ko) 정보처리장치, 정보처리방법 및 컴퓨터 판독 가능한 매체
JP6410584B2 (ja) 画像処理装置、画像処理装置の制御方法、並びにプログラム
JP5321929B2 (ja) ユニバーサルデバイスドライバ、デバイス制御プログラム、情報処理装置、サーバ装置、及び、方法
JP2012048467A (ja) デバイス、ヘルプサーバ、及びプログラム
JP2010072865A (ja) データ処理装置、データ処理方法、プログラムおよび記録媒体
US20110292424A1 (en) Computer Readable Medium Having Common Printer Driver, and Print Port Managing Method
JP5582012B2 (ja) 画像形成装置、情報処理装置、カスタマイズプログラム及び記録媒体
JP5669460B2 (ja) 情報処理装置、情報処理システム、情報処理装置の制御方法及びプログラム
JP5392201B2 (ja) ユニバーサルドライバ、及びデバイス制御方法
JP2011180681A (ja) インストーラ及びプリンタドライバのインストール方法
JP2011201024A (ja) プリンタ及び端末装置
JP5454441B2 (ja) ユニバーサルデバイスドライバ、及び、デバイス制御方法
JP2010099891A (ja) 印刷制御装置、印刷制御方法、及びコンピュータプログラム
JP2017117235A (ja) 管理プログラム、管理システム、情報処理装置
US20170185358A1 (en) Information processing apparatus and installation control method
JP2012098821A (ja) デバイス制御プログラム、及びデバイス
EP2423802B1 (en) Print control device
JP7251266B2 (ja) プログラムの組み合わせおよびプログラム
JP6618593B2 (ja) 画像処理装置、画像処理装置の制御方法、並びにプログラム
JP7000885B2 (ja) プログラム
JP6897229B2 (ja) 制御プログラム、および情報処理装置
JP4208779B2 (ja) 情報処理装置およびインストール制御方法
JP2013196259A (ja) データ処理装置、データ処理システムおよびプログラム
JP7391525B2 (ja) アプリケーションプログラム、情報処理装置、情報処理方法、および情報処理システム
US20240176561A1 (en) Information processing apparatus, method, and storage medium for storing program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130314

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

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131223

R150 Certificate of patent or registration of utility model

Ref document number: 5454441

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150