(57)【特許請求の範囲】
【請求項１】
各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを選択する選択手段と、
前記選択手段による選択に基づきプリンタポートの一覧を作成する作成手段と、
前記プリンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定手段と
を有することを特徴とする情報処理装置。
【請求項２】
各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを含むプリンタポートの一覧を表示する表示手段と、
前記プリンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定手段と
を有することを特徴とする情報処理装置。
【請求項３】
各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを選択する選択ステップと、
前記選択ステップによる選択に基づきプリンタポートの一覧を作成する作成ステップと、
前記プリンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定ステップと
を有することを特徴とする設定方法。
【請求項４】
各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを含むプリンタポートの一覧を表示する表示ステップと、
前記プリンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定ステップと
を有することを特徴とする設定方法。
【請求項５】
各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを選択する選択手順と、
前記選択手順による選択に基づきプリンタポートの一覧を作成する作成手順と、
前記プリンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定手順と
をコンピュータに実行させることを特徴とするプログラム。
【請求項６】
各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを含むプリンタポートの一覧を表示する表示手順と、
前記プリンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定手順と
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置、プリンタの設定方法およびプログラムに関し、より詳細には、複数の通信インターフェースを装備し、かつそれぞれの通信インターフェースを介して相互に通信可能なデバイスおよびホスト機器間の通信選択方法に関する。
【背景技術】
【０００２】
複数の通信インターフェースを持つデバイスにおいては、同様の複数の通信インターフェースを持つホストコンピュータとそれらの通信インターフェースのいずれかを用いて通信を行なうことが可能である。それぞれの通信経路がOS・デバイス間の論理通信ポートとして確立する。このため、プリンタ機器は物理的に１つであろうと複数であろうと、同様に通信インターフェース毎に論理通信ポートが作成され、ホストコンピュータはいずれかのポートを経由してデバイスと通信可能となる。
【０００３】
ホストコンピュータ上のアプリケーションがデバイスにアクセスする場合、論理通信ポートを指定することで通信を行なう。この際、所定の方法により該当する機能を持ったデバイスに対して通信可能な論理通信ポートを検出し、ポートが複数検出された場合はそれらをユーザーに選択可能な状態で表示し、その選択を受けること等により適当な論理通信ポートを特定する。
【０００４】
例えばホストコンピュータ上で実行されているワードプロセッサアプリケーションにおいて印刷を行なう場合、アプリケーションは所定の方法でホストコンピュータに接続されているプリンタの論理通信ポートの検索を行なう。次いで、その検索結果を論理通信ポートのリスティングとしてユーザーに提示する。そして、その論理通信ポートの選択を受けることで、ユーザーが意図するプリンタへの印刷を実現している。
【０００５】
一例として、IEEEで標準化されている規格802.11bに対応した無線機器、例えば無線LANアクセスポイント、ルーターなどがある。また、無線インターフェースとして、PC（パーソナルコンピュータ）に内蔵されたものや、PCMCIAカード形式で後付けできるものなども広く販売されている。プリンタに関しても今まではPCとUSBなどのローカルインターフェースで１対１の接続が一般的であったが、家庭などでも複数のPCから印刷するようなニーズに応えられるネットワークへの要望が増している。
【０００６】
無線LANを使って印刷を行なうような場合には、プリンタ内の無線LANの設定を行いアクセスポイントと接続出来る状態にした上、PCでは無線LANでの印刷を可能とするソフトウエアをインストールし、プリンタに適した設定にしておく必要がある。従来のプリンタドライバのインストールでは、ネットワーク接続を行なうためのデバイス設定にそれなりのネットワークに関する知識が必要となる。また、無線インターフェース接続の場合は同様に無線インターフェースに関する知識も必要となる。このため、これら無線・ネットワークデバイスを使用する際、それら機器と通信を行い無線設定やネットワーク設定を変更するためにホストコンピュータ側で実行されユーザーを支援するユーティリティアプリケーションといったものが存在する。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、このアプリケーションも対象デバイスと通信を行なうことが可能な論理通信ポート全てを設定用通信ポートの選択肢としてユーザーに提示してしまうことが多い。例えばUSBインターフェースと無線ネットワークインターフェースの両方を具備するプリンタが複数台ホストコンピュータに接続され、両インターフェースが使用可能な状態にある場合、このプリンタの設定ユーティリティアプリケーションが通信可能な論理通信ポート全てを設定用通信ポートの選択肢としてユーザーに提示するため、それぞれのプリンタのUSB、無線両方の論理通信ポートが表示されてしまう。
【０００８】
したがって、ユーザーはどの２つの論理通信ポートが同一プリンタのものであるかの判別が困難である上に、どの論理通信ポートを使用すれば設定変更に伴う通信に影響を受けないか、といった判断を行なうことが困難である。
【０００９】
また、このようなユーティリティアプリケーションを使って無線インターフェースの動作設定やネットワークの設定変更を行なう場合にも、通信可能な論理通信ポート全てが設定用通信ポートの選択肢としてユーザーに提示される。このため、設定変更を行なおうとしている通信インターフェース、ネットワークそのものを介して変更を行い、その変更内容によって前述のように以降通信を行なうことが出来なくなる場合がある。結局、ユーティリティアプリケーションを使用しても、連続した設定変更や通信状態の確認を行なうことが出来なくなるケースがある。
【００１０】
本発明は、上述の課題の少なくともひとつを解決する手段を開示するものである。本発明の目的は、複数の論理通信ポートで通信が確立されているプリンタを設定する場合、特定種類のポート経由での設定を優先的に可能とし、設定動作が確認出来なくなるおそれを解消した情報処理装置、プリンタの設定方法およびプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
上記目的を達成するために、本発明の第１の態様によれば、本発明の情報処理装置は、各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを選択する選択手段と、選択手段による選択に基づきプリンタポートの一覧を作成する作成手段と、プリンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定手段とを有することを特徴とする。
【００１４】
また、本発明の情報処理装置は、各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを含むプリンタポートの一覧を表示する表示手段と、プリンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定手段とを有することを特徴とする。
【００１６】
また、本発明の第２の態様によれば、本発明の設定方法は、各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを選択する選択ステップと、選択ステップによる選択に基づきプリンタポートの一覧を作成する作成ステップと、プリンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定ステップとを有することを特徴とする。
【００１９】
また、本発明の第３の態様によれば、本発明の設定方法は、各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを含むプリンタポートの一覧を表示する表示ステップと、プリンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定ステップとを有することを特徴とする。
【００２０】
本発明の第４の態様によれば、本発明に係るプログラムは、各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを選択する選択手順と、選択手順による選択に基づきプリンタポートの一覧を作成する作成手順と、リンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定手順とをコンピュータに実行させる。
本発明の第５の態様によれば、本発明に係るプリンタの設定方法は、各ポートを経由して通信可能なプリンタのＭＡＣアドレスの情報を取得し、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報を取得した場合、異なるポートへの通信にも関わらず同一のＭＡＣアドレス情報が取得されたプリンタに対して無線ポートではなく有線ポートを含むプリンタポートの一覧を表示する表示手順と、プリンタポートの一覧の中から選択されたプリンタに無線の設定を行なう設定手順とをコンピュータに実行させる。
【発明の効果】
【００２１】
本発明により、ネットワーク設定アプリケーションは、設定可能な論理通信ポートが複数存在する周辺機器のネットワーク設定に際し、唯一のポートを選択肢としてユーザーに提示するため、設定用ポートの選択に迷うことがなくなる。
【００２２】
また、本発明により、ネットワーク設定アプリケーションは、設定可能な論理通信ポートが複数存在する周辺機器のネットワーク設定に際し、ネットワークポート以外のローカルインターフェースポートが検出された場合にはそれを提示するため、安定した設定動作を行なうことが可能となる。
【００２３】
本発明の他の特徴および利点は、添付の図面に関連して後述の説明から明らかになるが、その添付の図面を通して、同様の参照符号が同じまたは同様の部分を指している。
【発明を実施するための最良の形態】
【００２４】
以下、図面を参照して本発明に係る一発明の実施の形態を詳細に説明する。以降、図３を用いて本発明の前提となるプリンタドライバのインストールについて説明し、その後、本発明の実施形態の一例であるユーティリティの動作を説明する。
【００２５】
ホストコンピュータにプリンタを接続して印刷を行なう際、プリンタ制御を行なうためのソフトウエアが必要となる。このソフトウエアは、プリンタハードウェアデバイスを動かすためにホストコンピュータのオペレーティングシステム上で印刷アプリケーションからの印刷命令を理解した上で、印刷制御コマンドおよび印刷データをプリンタハードウェアにデータ転送する。このプリンタ機器の制御を行なうソフトウエアをプリンタ(デバイス）ドライバと称する。プリンタドライバに代表されるように、ホストコンピュータに接続される全てのハードウェアはデバイスドライバを介してアプリケーションからの制御命令を受取る仕組みで制御される。デバイスドライバはオペレーティングシステム上で起動されている特定の上位アプリケーション専用のものではない。このため、デバイスがホストコンピュータに接続されている間は一種の常駐プログラムとして特定のメモリ領域を占有して常駐している。
【００２６】
マイクロソフト社のWindows（登録商標）(Ｒ)に代表される最近のオペレーティングシステム（以降「OS」という）は、デバイスをホストコンピュータに接続したときに自動的にそのデバイスに対応した適切なデバイスドライバを組み込む機能を有している。以下、この機能をプラグ・アンド・プレイという。
【００２７】
デバイスを初めてホストコンピュータに接続した際のプラグ・アンド・プレイ処理の場合、OSが標準に備えているデバイスドライバの中に最適なものがなければ、デバイス購入時にフロッピー（登録商標）ディスクやCD-ROMといったコンピュータ読取可能なメディアで添付されるデバイスドライバをOSに組み込む必要がある。この専用ドライバの組み込み作業を「ドライバのインストール作業」と称する。
【００２８】
以下にプラグ・アンド・プレイに対応したOSにおける一般的なデバイスドライバのインストール処理を説明する。プラグ・アンド・プレイ対応インターフェースの代表的なものとしてUSB(Universal Serial Bus)が挙げられる。ここではUSBを使ったプリンタのインストールを例に挙げて説明を行なう。ユーザーのためにホストコンピュータのディスプレイ上に表示されるメッセージを図１に、シーケンスフローを図２に示す。なお、ここで説明するシーケンスフロー、または示すメッセージ等はプラグ・アンド・プレイが正常に行なわれた場合のみとする。プラグ・アンド・プレイが失敗した場合のエラーシーケンスは別途存在することはいうまでもない。まず、ユーザーがプラグ・アンド・プレイ対応インターフェースであるUSBを使用し、プリンタを初めてホストコンピュータに接続する。ホストコンピュータ上で動作しているOSはUSBインターフェース経由でデバイスがホストコンピュータに接続されたことを検出する(ステップS300)。OSは画面2-1を表示し、USBで定められた所定の方法でUSB機器の基本情報であるデバイス・ディスクリプタをプリンタから読み出す(ステップS301)。デバイス・ディスクリプタにはデバイスの種類を示すデバイス・クラス情報を始め、その機器に関する基本機能情報が含まれている。OSはディスクリプタを読み出し解析することにより、接続されたデバイスがプリンタ・クラスに属するデバイス、すなわちプリンタであることを認識する (ステップS302)。
【００２９】
一般的には、プリンタのデバイスドライバは大きく分けてレベルの異なる２つのドライバから構成される。１つは、プリンタが接続される通信インターフェース毎に、その通信インターフェース上で該当デバイスとのデータ通信を行なうためのプロトコルを制御するための下位レベルドライバであるポートドライバである。２つ目は、ポートドライバの上位層に位置し、実際の印刷アプリケーションデータを個々のプリンタに適した記録データ、プリンタ言語に変換する上位プリンタドライバである。上位プリンタドライバはプリンタの動作状態、すなわちステータスをプリンタから取得してプリンタ状態表示アプリケーションに引き渡すといったことも行なっている。
【００３０】
OSが接続されたデバイスをUSBプリンタクラス・デバイスと認識すると、OSは予め定められた方法を使用し適切な下位ポートドライバをロードして使用可能な状態にする。さらに、ポートドライバの制御により通信インターフェース上に検出された特定のデバイスとホストコンピュータ間で１対１のデータ通信を行なうための論理コネクションであるポートインスタンスが用意される。USBプリンタの場合、プリンタクラス・デバイスであることがディスクリプタ読み出しにより検出され、USB印刷用のポートドライバがロードされたのちに、そのプリンタとホストコンピュータ間の通信を行なうための論理通信路、ポートインスタンスが作成される(ステップS303およびS304)。このとき、画面2-4が表示される。
【００３１】
下位ポートドライバがロードされ、初期化処理を経て動作可能状態になると、所定の方法で接続されたプリンタ機器の詳細情報を取得する。USBプリンタの場合、これはUSBプリンタ・クラス規格にて定義されたデバイスIDの読み出しコマンド(GET_CAPABILITIES）を、ポートドライバ経由でプリンタ機器に発行することにより行なわれる。その応答として返送されるデバイスIDにはプリンタの製造元（メーカー）情報、モデル名、サポートされるプリンタ言語情報などプリンタモデル固有の情報が含まれている(ステップS305)。
【００３２】
デバイスIDの情報を解析することによりOSは接続されたUSBプリンタ機器のメーカー・モデル名等の詳細情報を得る(ステップS306)。その情報に基づき、最適な上位プリンタドライバを検索する。OSの標準検索範囲内に該当する上位ドライバが存在しない場合、ユーザーに対してそのドライバの保存先などを問い合わせる旨のメッセージ等を表示することにより、該当上位ドライバのOSへのコピーを促す。このような場合、ユーザーはデバイス購入時に同梱されるフロッピー（登録商標）ディスクやCD-ROMといったメディア内、またはインターネットを経由してメーカーのファイルサーバーからダウンロードされたデバイスドライバ、またはデバイスドライバの初期化情報が所定の規則で記述されたファイルを指定することにより、該当上位ドライバのOSへの組み込みが実行される(ステップS307)。
【００３３】
上位ドライバの組み込み時、所定の手順に従って上位ドライバがホストコンピュータ上の所定の位置(ディレクトリ)にコピーされる。次にOSが標準で備える設定データベース上に現在インストールを行なっているデバイスに関する項目(エントリ)が追加される (ステップS308) 。このデータベースには、デバイス毎の制御用設定パラメータ、デバイスドライバ構成、デバイスインスタンスに関連付けられた下位ポートドライバとポートインスタンス情報、そしてユーザーによる設定情報といった情報が保存される。マイクロソフト社製のOSであるWindows（登録商標）(Ｒ) 2000やWindows（登録商標）(Ｒ) XPでは、この標準設定データベースを一般的にレジストリと称しており、本説明でも以下レジストリと呼ぶ。図３は、レジストリがユーザーに認識出来る形に表示されたウインドウ4-1の一例を示す。
【００３４】
このエントリはインストールされる上位ドライバに対し、OSのデバイス検出により作成されたポートインスタンス経由で通信を行なうデバイス、すなわち論理デバイス毎に作成される。すなわちOS・デバイス間の論理接続毎にエントリが用意され、対応するポートインスタンス情報が保存されることにより関連付けられる。例えば複数の接続インターフェースを具備するプリンタをそれぞれの通信インターフェース経由でOSに接続した場合、通信インターフェース毎にポートインスタンスが作成される。同一プリンタで使用される上位プリンタドライバは共通であるものの、通信インターフェース毎、論理接続毎に異なる論理デバイスとして、レジストリ上にエントリが作成される。
【００３５】
上記のように、ドライバのコピー、レジストリへのエントリ追加を含めたドライバ起動準備が完了すると、OSのユーザーインターフェースのプリンタリストに、データベースの情報に従いプリンタがエントリ毎に論理デバイスとして表示され、インストールが完了する(ステップS309)。このとき、画面2-6が表示される。GUIを備えた一般的なOSのプリンタ一覧画面では、あるプリンタに対するポートインスタンスはプリンタアイコンという形で視覚的に表示される。この一例を図４に示す。すなわち、あるプリンタに対して複数の通信インターフェースを経由した複数のポートインスタンスが作成された場合、所定のウインドウ5-1内に各出力ポートに対するプリンタアイコンが表示される。このプリンタアイコンとポートの関連付けに関する情報も上記ポート毎に作成されるレジストリのエントリに記述される。このため、各ポートがどのプリンタアイコンによって視覚的に代表されているかといった情報も管理される。
【００３６】
以上プラグ・アンド・プレイに対応したOSにおける一般的なデバイスドライバのインストール処理についてUSBプリンタを例に説明した。無論OSの種類により異なる方法でドライバのインストールが行なわれる場合もあるが、概ね説明した手順と同様なシーケンスでプラグ・アンド・プレイデバイスのインストールが行なわれる。
【００３７】
ところで、コンピュータがプリンタとの無線インターフェースおよび有線インターフェースにそれぞれ対応する論理通信ポートを有する場合、通常は通信の信頼性・確実性の観点から有線インターフェースの論理通信ポートを使用することが望ましい。しかしながら、従来のようにコンピュータにおいて検出したプリンタを全て印刷用プリンタの候補として提示すると、どの論理通信ポートを選択するのが最適なのか判断出来ない。すなわち、無線周辺デバイス、またはネットワークデバイスをアプリケーションから使用する場合、どのデバイスを使用するかの判断においてユーザーが混乱することが多い。
【００３８】
本発明に係る情報処理装置の一実施形態としてのコンピュータについて説明する。図５は、プリンタ制御システムの構成を示すハードウェアブロック図である。なお、特に断らない限り、本発明の機能が実行されるのであれば、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ,ＷＡＮ等のネットワークを介して接続が為され処理が行われるシステムであっても本発明を適用できることは言うまでもない。
【００３９】
図において、ホストコンピュータ３０００は、ＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１に記憶された文書処理プログラム等に基づいて図形、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行するＣＰＵ１を備え、システムバス４に接続される各デバイスをＣＰＵ１が総括的に制御する。ホストコンピュータ３０００は、図６のノートPC１−１に相当する。
【００４０】
また、このＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１には、ＣＰＵ１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等を記憶し、ＲＯＭ３のフォント用ＲＯＭあるいは外部メモリ１１には上記文書処理の際に使用するフォントデータ等を記憶し、ＲＯＭ３のデータ用ＲＯＭあるいは外部メモリ１１には上記文書処理等を行う際に使用する各種データを記憶する。
【００４１】
ＲＡＭ２は、ＣＰＵ１の主メモリ、ワークエリア等として機能する。キーボードコントローラ（ＫＢＣ）５は、キーボード９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）６は、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。ホストコンピュータ３０００がノートPCの場合は、CRTのかわりに、液晶ディスプレイパネルを用いた方がより軽量で好適である。ディスクコントローラ（ＤＫＣ）７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、プリンタ制御コマンド生成プログラム（以下プリンタドライバ）等を記憶するハードディスク（ＨＤ）、フロッピー（登録商標）（Ｒ）ディスク（ＦＤ）等の外部メモリ１１とのアクセスを制御する。ここで、HDには、無線LAN設定ユーティリティに係わる制御プログラムが記憶され、CPU１によって、RAM２に読み出され、実行される。そして、当該無線LAN設定ユーティリティは、図８、図１２、図１６、図１７、図２３などの各ステップを実行する。そして、図１，図３，図４，図７，図９、図１０，図１１，図１５、図１９，図２０，図２１，図２２の画面は、ホストコンピュータ３０００に備えられた表示部の一例であるＣＲＴ１０や液晶ディスプレイパネルに表示するとよい。
【００４２】
プリンタコントローラ（ＰＲＴＣ）８は、所定の双方向性インターフェース２１を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。なお、本実施例ではプリンタとの通信を行なうインターフェースが複数経路存在する。例えば、USBインタフェース経由２１と、無線LANインタフェース経由２２である。PTRCおよび、入力部１５は、それぞれのインタフェースを制御する複数のユニットからなる。また、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行し、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。プリンタ１５００は、後述する図６のプリンタ１−２に相当する。
【００４３】
また、ＣＰＵ１は、ＣＲＴ１０上の不図示のマウスカーソル等で指示されたコマンドに基づいて登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行える。
【００４４】
プリンタ１５００において、プリンタＣＰＵ１２は、ＲＯＭ１３のプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ１４に記憶された制御プログラム等に基づいてシステムバス１５に接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。
【００４５】
また、このＲＯＭ１３のプログラムＲＯＭには、ＣＰＵ１２の制御プログラム等を記憶する。ＲＯＭ１３のフォント用ＲＯＭには上記出力情報を生成する際に使用するフォントデータ等を記憶し、ＲＯＭ１３のデータ用ＲＯＭにはハードディスク等の外部メモリ１４がないプリンタの場合には、ホストコンピュータ上で利用される情報等を記憶している。
【００４６】
ＣＰＵ１２は入力部１８を介してホストコンピュータとの通信処理が可能となっており、プリンタ内の情報等をホストコンピュータ３０００に通知可能に構成されている。ＲＡＭ１９はＣＰＵ１２の主メモリ、ワークエリア等として機能し、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。なお、ＲＡＭ１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）、ＩＣカード等の外部メモリ１４は、メモリコントローラ（ＭＣ）２０によりアクセスを制御される。
【００４７】
外部メモリ１４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等を記憶する。また、入力部１８は前述した操作パネルで操作のためのスイッチおよびＬＥＤ表示器等が配されている。また、前述した外部メモリは１個に限らず、少なくとも１個以上備え、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていてもよい。さらに、図示しないＮＶＲＡＭを有し、操作パネル１５０１からのプリンタモード設定情報を記憶するようにしてもよい。
【００４８】
図６は、本発明の一実施形態による印刷システムの構成を示す。図中ノートPC1-1は有線ローカルインターフェースとしてUSBを有し、無線インターフェースとしてPCMCIAカードタイプの無線LANカード1-4を装着することが出来る。プリンタ1-2も、PC1-1と同様に有線ローカルインターフェースと無線インターフェースの両者を備える。有線ローカルインターフェースはPC1-1とUSBケーブル1-5で接続することが出来る。無線インターフェースとしてはPCMCIAカードタイプの無線LANカード1-4を装着することが出来る。アクセスポイント1-3は無線インターフェースのアクセスポイントで無線機器同士を仲介する役割を果たす。これもPCMCIAカードタイプの無線LANカード1-4を装着することが出来る。
【００４９】
PC1-1はプリンタ1-1による印刷を制御するホストコンピュータとして機能する。PC1-1とプリンタ1-2との間では、有線ローカルインターフェースUSBを使用し印字を行なうことも可能であり、また無線LANインターフェースを用いてアクセスポイント1-3を経由してプリンタ1-2へ印刷データを送ることも可能である。本図では1台のPCのみが図示されているが、複数のPCが1つのアクセスポイントに接続可能であり、1つのプリンタを複数のPCで共有して印刷を行なうことも可能である。
【００５０】
無線LANにはアクセスポイントを経由して複数の無線LAN機器と接続可能なモードがあり、インフラストラクチャモードと呼ばれる。インフラストラクチャモードではアクセスポイント1-3に設定されたID（SSID）と同じIDを無線LAN機器にも設定することで複数の無線LAN機器からアクセスポイント1-3を経由してLANを構成することが出来る。
【００５１】
無線LAN機器としてプリンタを使用する場合、プリンタ1-2がアクセスポイント1-3に接続出来るように設定する必要がある。本実施形態ではPC1-1とアクセスポイント1-3との間の設定は既になされていてインフラストラクチャモードでアクセスポイント1-3と通信出来る状態になっているものとする。プリンタ1-2に関してはまだ無線LANの設定が行なわれておらず、初期状態としてインフラストラクチャモードでIDは設定されていないものとする。無線LANの装備されていないプリンタでは、一般的にUSBでPCと接続されて印刷を行なうものが主流となっている。プリンタ1-2もUSBを有し、通常のプリンタと同様に印刷が可能である。
【００５２】
本発明に係る印刷制御方法では、PC1-1をUSBで無線LANプリンタと接続し、PCにおいて無線LAN設定ユーティリティ（コンピュータプログラム）を起動する。設定ユーティリティはホストにインストール済みのポートをスキャンして、PC1-1と通信が確立されているプリンタ（該当プリンタ）を検索する。上記検索中に該当プリンタ1-2を発見したときには、そのポート経由でMACアドレス情報を取得する。そして、検索の結果、異なるポート経由で同一MACアドレスの該当プリンタ1-2が検出された場合、設定可能ポート一覧に上記該当プリンタの有線ポートを候補として挙げる。
【００５３】
すなわち、同一プリンタ1-2に対する無線ポートと有線ポートが複数存在する場合はUSBポート（有線I/F）経由での設定を優先し、該当プリンタ1-2に対する設定可能ポートとしてユーザーに提示する。あるいは、設定動作を自動的にUSBポート経由で行なう。
【００５４】
以降、本実施形態においてUSBを使ったプリンタドライバのインストール、USBを使った無線LANのインストールを説明する。
【００５５】
図７は、印刷機器を操作するためのソフトウエア(プリンタドライバ)を図６のPC1-1にインストールする手順の中で、PCの画面上に表示されユーザーに指示を行なう画面表示を表している。図７は現在一般的に行なわれているUSBインターフェースでのインストールの手順である。まず、プリンタドライバインストール開始の画面6-1が表示される。ユーザーがインストール用のソフトを起動することでこのインストールが開始される。画面6-1上には実行するか、それともやめるかを選択する選択アイコンとして「実行」ボタン6-2、「キャンセル」ボタン6-3があり、マウスなどで選択することが出来る。「実行」ボタン6-2を選択するとインストールが開始され、画面6-4が表示される。実行される内容については図８のフローチャートで説明する。「キャンセル」ボタン6-3を選択した場合、プリンタドライバのインストールは行なわれずに終了する。
【００５６】
画面6-4ではユーザーにUSBインターフェースを接続する旨の指示が表示され、ユーザーはその指示に従ってプリンタのUSBインターフェースにUSBケーブルを接続する。プリンタの電源が入っていない場合ユーザーはプリンタの電源を入れる。画面6-4でも「キャンセル」ボタン6-5でインストールを中止することが出来る。USBケーブルを接続してプリンタの電源を入れるとプラグ・アンド・プレイによりプリンタドライバのインストール、プリンタの内部設定が完了する。プラグ・アンド・プレイによるプリンタドライバのインストールは、前述した手順で行なわれる。
【００５７】
インストールに成功すると画面6-6が表示され、インストールが完了する。「OK」ボタン6-7を選択することでソフトウエアが終了する。何らかの理由によりプリンタドライバのインストールが失敗した場合、画面6-8が表示され、インストールに失敗したことをユーザーに知らせる。画面6-6と同様に、「OK」ボタン6-9でインストールを終了することが出来る。
【００５８】
以上説明したように、画面6-1→画面6-4→画面6-6と指示に従って操作することでUSBを使ったプリンタドライバのインストールが完了し、USBでの印刷が可能となる。USBを使ったプリンタドライバのインストールはソフトを起動しケーブルを接続するだけで簡単に行なうことが出来る。
【００５９】
図８は図７の画面で説明した内容を詳細に説明したフローチャートで、まず図７の画面6-1に対応した画面表示を行なう(ステップS700）。画面6-1で実行が選択されるとステップS701へ進み、プリンタドライバ実行ファイルをシステムにコピーする。一般的にはOSによりプリンタドライバ実行ファイルおよび情報ファイルが配置されるシステム内の場所が決まっており、それに従ってプリンタドライバの実行ファイルをコピーしておく。前述したように、OSは予め決まったドライバの情報ファイルの保存場所から適切なドライバを探し出してそれを使用出来るように登録・設定の作業を行なう。この作業が正しく行なわれるためにプリンタドライバ関連のファイルを指定の場所へコピーするのがこの処理である。
【００６０】
次に図７の画面6-4を表示する(ステップS702）。この画面を表示したのち一定の時間内でUSBの接続が行なわれ正しくプリンタの電源が投入されたことを確認し、一定時間経過したかをチェックする(ステップS703）。タイムアウトでない場合、ステップS704へ進みプリンタの認識が完了したかどうかをチェックする。これはプラグ・アンド・プレイで正しくプリンタが発見されたどうかの確認で、前述したプリンタドライバのインストール手順で詳細が述べられている。ステップS703でタイムアウトした場合インストールに失敗したことを表す画面6-8を表示する(ステップS707）。ステップS704でプリンタがプラグ・アンド・プレイで確認完了した場合ステップS705へ進み、プリンタ情報の設定を行なう(ステップS705）。次に正常にインストールが終わったことを示す画面6-6を表示する(ステップS706）。これでUSBを使ったプリンタドライバのインストールが完了する。これは従来どおりのインストール方法で、USBでのプリンタドライバのインストールを行なうものである。
【００６１】
図９および図１０は図７，８で説明したプリンタドライバのインストールが終了した後、引き続き無線LANのインストールを行なう場合の画面表示を示したものである。USBのみのインストールの場合、図７の画面6-6では完了となっていたが、画面6-6に代えて図９の画面8-1が表示される。すなわち、USBのみを有するプリンタでは図７の画面6-6で完了し、USBと無線LANの両者を有するプリンタでは画面6-6に代えて画面8-1が表示される。画面8-1で「OK」ボタン8-2を選択した場合、ここで完了となり無線LANのインストールは行なわれない。
【００６２】
画面8-1で「ネットワークインストール」ボタン8-3を選択すると、引き続きネットワークのインストール画面8-4となる。まずアクセスポイントと接続するためにアクセスポイントを選択する操作になる。PCからプリンタに装着された無線LANカードを使用し、プリンタから発見されるアクセスポイントの一覧を表示するために、USB経由でアクセスポイントサーチのコマンドを送り、その結果得られたアクセスポイントの情報をUSB経由で取得する。画面8-4はアクセスポイント一覧を表示した状態を示している。
【００６３】
まず、リストボックス8-5はプリンタから見つかったアクセスポイントの一覧を表示している部分で、この例では3つのアクセスポイントA,B,Cがプリンタから見つかったことを示している。無線電波の届く範囲内で稼動しているアクセスポイントを全て示しているので、必ずしも自分が使っているものだけが表示されるとは限られない。複数のアクセスポイントから所望のアクセスポイントを選択出来るように、リストボックス8-5内のハイライトされた行を移動することで別のアクセスポイントを選択することが出来る。
【００６４】
選択したアクセスポイントが暗号化されている場合、暗号を解読するための暗号キーを入力エリア8-6に入力することが出来、暗号化されたアクセスポイントにも対応することが出来る。一般的に無線LANでは盗聴やデータの漏洩を防止するために暗号化の技術が採用されている。代表的なものにＷＥＰ(Wired Equivalent Privacy)がある。これは同じ暗号化用のキーと呼ばれる情報が暗号化と復号化のために使われる対称的なアルゴリズムで、このキーを設定することで他の機器からのデータの隠蔽を実現する。暗号化された環境で無線LANを使用している場合、プリンタにも同じ暗号キーを設定する必要がある。画面8-4で「戻る」ボタン8-7を選択すると、前の画面8-1へ戻ることが出来る。「次へ」ボタン8-8を選択することで、リストボックス8-5で選択したアクセスポイントを指定して次に進むことが出来る。「キャンセル」ボタン8-9でインストールを中止することが出来る。画面8-4で自分が現在使っているアクセスポイントを選択し指定することが出来、誤って他のアクセスポイントに接続することが防止出来る。
【００６５】
次に、画面8-4で指定したアクセスポイントを経由して接続することが指定されると、プリンタの無線LANのアクセスポイントの設定が行なわれ、プリンタがアクセスポイントから認識出来るようになる。プリンタが正しく接続されたかどうかを確認するために無線LAN経由でプリンタの検索を行なうが、その詳細は図１２のフローチャートで説明する。
【００６６】
画面8-10はアクセスポイント経由で発見されたプリンタの一覧を表示する画面である。プリンタの一覧はPCの無線LANからアクセスポイントを経由して送信されたプリンタサーチコマンドを受取ったプリンタがその返答を戻すことで行なわれる。サーチコマンドはブロードキャストでネットワーク上の全ての機器に送信され、サーチコマンドを受取りかつこのコマンドを理解出来る機器(この場合は特定のプリンタやプリンタアダプタ)がコマンドを送信したホストに対してコマンドに対する予め決められた情報を戻す。この情報にはプリンタの名称やID、アドレスなどが含まれており、これら情報を基に接続したいプリンタを特定することが出来る。画面8-10ではリストボックス8-11で発見されたプリンタの一覧が表示される、この例では1,2,3の3つのプリンタが発見された。アクセスポイントの選択と同様にハイライトで示されたプリンタが選択出来る。画面8-10で「戻る」ボタン8-12を選択すると前画面8-4へ戻り、「次へ」ボタン8-13を選択すると、接続相手をリストボックス8-11で選択したプリンタに決めることが出来る。「キャンセル」ボタン8-14でインストールを中止することが出来る。画面8-10で「次へ」ボタン8-13が選択されると、ポート名を入力するための図１０に示す画面8-15が表示され、入力エリア8-16に入力したいポート名を入力することが出来る。
【００６７】
ポート名は、同じ機能（例えば無線LAN）を有する複数のプリンタを１つのPC上で区別するために用いられ、初期値としてこの場合WLAN01が設定される。WLANは無線LANのプリンタを示すための識別名で、01はシステムに登録されている最終の番号を表している。複数の同じ機能を有するプリンタを区別して扱うために順番に番号をつける。一般的にプリンタドライバではこのポート名を指定して印刷するプリンタを特定するのに使われる。画面8-15で「戻る」ボタン8-17を選択すると前画面8-10へ戻り、「次へ」ボタン8-18を選択すると、入力エリア8-16で入力したポート名を決めることが出来る。「キャンセル」ボタン8-19でインストールを中止することが出来る。
【００６８】
画面8-15で「次へ」ボタン8-18が選択されると、図１０の画面8-20が表示され、ネットワークのインストールが完了したことが示される。この画面には2つの選択肢があり、無線LANのプリンタアイコンのみを作成する場合のオプションボタン8-21と無線LAN、USBの両方のアイコンを作成する場合のオプションボタン8-22のいずれかを選択することが出来る。オプションボタンはマウスなどで変更することが可能であり、図中●で示されている項目が現在選択されているものである。「OK」ボタン8-23を選択すると、オプションボタン8-21,8-22のいずれか選択された内容に従ってプリンタアイコンが作成される。プリンタアイコンはユーザーが登録されているプリンタを確認、区別あるいは現在準備可能なプリンタを識別するのに利用され、アプリケーションからの印刷ではこのアイコンが選択される。
【００６９】
図１１は図９で説明したネットワークのインストールに際してアクセスポイントが１つのみ発見され、またプリンタも１つのみが発見され、ポート名の入力画面が省略された場合の画面の変化をあらわしている。この場合、図９の画面8-4,8-10,図１０の画面8-15の表示に関わる処理が省略され、画面8-1に対応する画面9-1と、画面8-20に対応する画面9-4のみの表示となる。画面8-4,8-10,8-15の表示に関わる処理が省略されること以外は前述と同様の動作なので、図１１の各表示内容の説明は省略する。表示内容が省略された部分の処理は前述と同様の動作なので、説明は省略する。1つのアクセスポイントで1つのプリンタのみ存在する環境で、ポート名も自動に作成されるものでよい場合に、ユーザーは図１１の画面9-1での選択アイコンである「ネットワークインストール」ボタン9-3と画面9-4の完了画面での「OK」ボタン9-7の2つの指示を行なうだけで無線ネットワークのインストールが完了することになる。詳細については図１２のフローチャートで説明する。
【００７０】
図１２は図９，１０で示した画面の表示に関わる処理を詳細に説明したフローチャートである。PCはアクセスポイントのサーチを行い、見つかったアクセスポイントの情報をUSBを経由してPCへ戻す（ステップS1000）。アクセスポイントをサーチするためにPCはUSBでプリンタへアクセスポイントサーチコマンドを送信する。USBで送られる無線LANインストールのためのコマンドは図１３で示される3つのコマンドが用意されている。その内のアクセスポイントサーチコマンドをプリンタへ送ることでプリンタは無線LANモジュールを使用しアクセスポイントサーチのための設定を無線LANモジュールに行なう。アクセスポイントサーチの設定がなされた無線LANモジュールはアクセスポイントサーチの信号を発信する。この信号を受取ったアクセスポイントは自分アクセスポイントの情報（ID、電波状態、アドレス、チャネルなど）をサーチ信号を発信した相手に返信する。無線LANモジュールはアクセスポイントから送り返されてきた情報を受信し、受信した情報をプリンタがPCへ返送する。この時プリンタは見つかった分全てのアクセスポイントの情報をPCへ返信する。
【００７１】
次にステップS1001でプリンタから戻されたアクセスポイントの情報からアクセスポイントがいくつ見つかったかをチェックする。アクセスポイントが２つ以上見つかった場合、ステップS1002へ進みアクセスポイント一覧の画面8-4を表示しユーザーにアクセスポイントを選択させる。アクセスポイントが1つだけ見つかった場合ステップS1002をスキップしてステップS1003へ進む。次にステップS1003でアクセスポイント設定を行なう。これはステップS1000で見つかったアクセスポイントの情報を基に図１３で示した情報設定コマンドをUSBで送ることにより行なう。情報設定コマンドではアクセスポイントのアドレス、暗号化キーなどアクセスポイント利用するために必要な情報を設定することで特定のアクセスポイントにプリンタを接続することが出来る。
【００７２】
次に、ステップS1004でネットワークのコマンドを使用しプリンタのサーチを行なう。これは図１４に示されており、ネットワークインストール用コマンドとして2つのコマンドが用意されている。これらは2つともサーチのコマンドで、1つが相手を指定しないプリンタサーチコマンド（ブロードキャスト）、もう1つが特定の相手を指定したプリンタサーチコマンド（アドレス指定）で、ここではブロードキャストのサーチコマンドを送信する。これは無線LAN上に発信され、このコマンドを無線LANから受取ったプリンタはプリンタの情報（ID,名称、アドレス、モデル名など）をコマンドを送信したPCへ返信する。このコマンドはブロードキャストで送信されるため、このコマンドを理解出来るプリンタは全てこのコマンドに返信する可能性がある。PCはプリンタから送り返された情報から、自分が今インストールしようとしている機種を選別する必要がある。
【００７３】
そこで、プリンタから送り返された情報からプリンタが1つであるかどうかをチェックする(ステップS1005)。プリンタが２つ以上見つかった場合ステップS1006へ進み、プリンタの一覧を含む画面8-10を表示しユーザーにプリンタを選択させる。見つかったプリンタが１つの場合、ステップS1006をスキップしてステップS1007へ進む。ステップS1007でポート名の表示が必要かどうかのチェックを行い、必要であればステップS1007へ進み、ポート名の入力画面8-15を表示しユーザーに入力をさせる。ポート名の入力が必要ない場合、ステップS1008をスキップしてステップS1009へ進む。ポート名の入力をユーザーに行なわせるかどうかは、その必要性によりインストールソフトを構成するかどうかで決めることが出来る。より簡単な少ない画面でのインストールを実現する場合には省略することも選択出来る。ステップS1009でネットワーク情報の設定を行い無線LANが利用出来る状態になる。ネットワーク情報はプリンタのアドレス、名称など印刷に必要となる情報を示している。次にネットワークインストール完了画面を表示する（ステップS1010）。アイコンの作成方法に関しては後述する。
【００７４】
図１３はUSBでプリンタへ送られるインストールのためのコマンドを示しており、本実施形態では３つのコマンドが用意されている。この他にも印刷データを送るコマンド、各種プリンタの設定を行なうコマンドなどがあるが、本実施形態に直接関係するインストールコマンドだけを挙げている。1つ目が図１２のステップS1000で説明を行なったアクセスポイントをサーチするコマンドである。2つ目が情報取得コマンドで、プリンタに設定されている無線LANに関する情報をプリンタから取得するのに用いられる。3つ目は情報設定コマンドで、プリンタへ設定する無線LANに関する情報、例えばアクセスポイントのアドレス、モード、チャネルなどである。これは、図１２ステップS1003でアクセスポイントの指定のために使用したコマンドである。
【００７５】
図１４はネットワークコマンドの内インストールに使用されるコマンドである。これは無線LANを介してプリンタへ送信されるもので、2つのコマンドが用意されている。この他にも印刷データを送るコマンド、各種プリンタの設定を行なうコマンドなどがあるが、本実施形態に直接関係するインストールコマンドだけを挙げている。共にプリンタサーチのコマンドで、全てのプリンタが受取るもの（ブロードキャスト）と、特定のプリンタが受取るもの（アドレス指定）とが用意されている。このコマンドを使用しネットワーク上にあるプリンタが正しく見つかり設定されているかどうかを判断することが出来る。これらコマンドはネットワーク上で一般的なTCP/IP、UDPなどのプロトコルを介して転送、返信が行なわれる。
【００７６】
図１５は、図１４までで説明したPCのプリンタドライバインストールを実行しプリンタの無線LANの設定が完了した後、別のPC（プリンタドライバ・ネットワーク共にインストールされていない）でのプリンタドライバのインストール画面を示している。既にプリンタ側の無線LAN設定は完了しているためPC側の設定だけが行なわれることになる。プリンタドライバのインストールは図７，８で説明した内容と同じなので説明は省略する。プリンタドライバインストール完了後の画面13-1が表示され、ネットワークインストールを行なう場合、「ネットワークインストール」ボタン13-3を選択する。選択後ネットワークインストール完了画面13-4あるいはネットワークインストール失敗画面13-7が表示される。画面13-4の内容は画面9-4と同じなので省略する。ネットワークインストール失敗画面13-7は何らかの理由で接続したプリンタが無線LANで発見出来なかった場合表示される。
【００７７】
図１６および図１７は図１５で説明したネットワークインストールを2台目以降のPCで行なった場合の詳細なフローチャートである。まず、図１６のステップS1400でプリンタの設定情報を取得する。これは図１３で示した情報取得コマンドをプリンタへUSBで送ることで実行され、プリンタは設定されている情報をPCへUSB経由で戻す。プリンタに設定されている情報には無線LANに関する情報が含まれており、その中にアクセスポイントが設定されているかどうかの情報がある。アクセスポイントの設定は１台目のPCでプリンタドライバのインストール後設定されたもので、図１２のステップS1003で設定されたものである。既にアクセスポイントが設定されている場合は改めてアクセスポイントの設定を行なう必要がなく既に設定された情報を使うことが出来る。ステップS1401でアクセスポイントが設定済みかどうかをプリンタからの情報でチェックする。アクセスポイントが設定されていない場合とは、このPCが１台目のPCであることを意味している。この場合はアクセスポイント設定から行なう必要があり、図９，１０，１１で示した処理を行なう必要がある。ステップS1402〜S1412でプリンタのアクセスポイント設定とPC側のネットワーク設定が行なわれるが、これは図１２のステップS1000〜S1010と同様なので説明は省略する。
【００７８】
ステップS1401でアクセスポイントが設定済みと判断された場合、図１７のステップS1413へ進み特定プリンタのサーチ処理を行なう。ステップS1400でプリンタから得られた情報には既に設定されているプリンタのアドレス、IDが含まれており、この情報を基に、図１４で示したプリンタサーチコマンド（アドレス指定）を無線LAN上に送信する。この２台目のPCもアクセスポイントとの間の設定は完了しているものとしているので、無線LAN上でのコマンドを発行することが出来る。このコマンドはアドレスの指定を行なっているサーチコマンドなので、現在USBで接続してインストールを行なっているプリンタのみへ到着する。このコマンドが到着したプリンタはコマンド送信したPCに対して無線LAN経由でプリンタの情報を返送する。PC側はプリンタからの返信が到着することと到着した情報が正しいことをチェックする（ステップS1414）。無線LAN経由でプリンタからの情報が戻され、かつUSB経由で得た情報と比較し両者が一致した場合、所望のプリンタが正しく発見されたことになる。何らかの理由でプリンタからの情報が戻らない場合、情報が一致しなければステップS1419へ進み、ネットワークインストール失敗の画面を表示する。ステップS1414でプリンタが正しく見つかった場合ステップS1415へ進む。ステップS1415〜S1418はステップS1409〜S1412と同じ処理なので説明は省略するが、ここでの処理により２台目のPCの無線LANインストールが完了し、無線LANでの印刷が行なえるようになる。図１６および図１７のフローチャートは1台目のPCでの無線LAN、プリンタの設定に加え、2台目以降のPCでの無線LAN、プリンタの設定も行なえるように構成されている。
【００７９】
上記説明の手順により、USBと無線LANの２つの通信インターフェースを備えたプリンタをPCと使用するためのセットアップを行なうことが可能となる。PC-プリンタ間をUSBインターフェース経由で通信することにより、無線LANでプリンタを使用するためのセットアップを行なうことが可能となり、その結果PCには該当プリンタと通信する経路としてUSBのポートインスタンス、無線LANのポートインスタンスと２つのポートが作成される。
【００８０】
＜ネットワーク設定アプリケーション＞
本実施形態においてプリンタの無線LANインストールを行なう過程で、無線ネットワーク設定ユーティリティアプリケーション（無線LAN設定ユーティリティ）がPCにインストールされる。
【００８１】
このアプリケーションはインストール後にユーザーにより起動されるコンピュータプログラムであり、本アプリケーションにより、既にインストールされた該当無線LANプリンタについて無線LAN並びにネットワークの設定変更を行なうことが可能である。設定変更はインストール時にセットアップされたプリンタのポートインスタンスを介した通信により、アプリケーションで指定された設定内容がPCからプリンタに通信されることにより行なわれる。図１８はネットワーク設定のためにプリンタへ送られるコマンドを示しており、本実施形態では６つのコマンドが用意されている。
【００８２】
本アプリケーション起動時のウインドウを図１９に示す。図で示されるように、初期ウインドウでは設定可能なプリンタが接続されているポートの一覧表示が行なわれる。ユーザーはここで設定を行なうプリンタを選択後、「詳細設定」ボタン16-2を押下することで選択されたプリンタの設定画面を呼び出すことが可能となる。
【００８３】
図２０から図２２に詳細設定ウインドウを示す。
詳細設定画面は大項目毎にタブで別れており、ユーザーはタブのタイトル部分をクリックすることによりタブ間を移動し、項目毎の設定変更を行なうことが可能である。
【００８４】
各タブにはこれら項目とその詳細設定内容が表示されるが、この内容はプリンタの設定可能項目、ネットワーク構成に応じたものが表示される。
【００８５】
図１９の「詳細設定」16-2ボタンが押下されると、アプリケーションは所定の通信手順に従い選択されたポートを経由して該当プリンタのネットワークコントロール部にコマンドを発行することにより、各種情報の取得、設定を行なう。
【００８６】
詳細設定表示時、アプリケーションはまず設定可能値取得コマンドを発行し、通信相手であるプリンタのネットワークコントロール部のネットワーク構成、設定可能項目、そして設定可能値に関する情報を取得する。これにより、表示するタブ（大項目）、並びに各タブにおいて設定可能とする項目を判断する。
【００８７】
次に、アプリケーションはプリンタに対して現在値取得コマンドを発行し、各設定項目に関して現在の設定値が何であるかを問い合わせる。コマンドを受信したネットワークコントローラは現在設定値を応答する。
【００８８】
本実施形態のプリンタの場合は以下の設定項目が詳細設定画面に表示される。
- 無線LAN関連項目
無線LANの使用状態選択（使用・未使用）
無線LANの動作モード（インフラストラクチャ/アドホック）
IPアドレスの取得方法（自動化/マニュアル）
IPアドレス
サブネットマスク
デフォルト・ゲートウエイ
- 管理パスワード
管理パスワードの使用状態選択（使用・未使用）
管理パスワード入力
- アクセス制限
アクセス制限の使用状態選択（使用・未使用）
アクセス制限を行なうMACアドレス
上記無線LAN関連項目、管理パスワード、アクセス制限が大項目となり、タブ見出しとなってそれぞれ図２０、図２１および図２２に示すウインドウ17-1,18-1,19-1として表示される。
【００８９】
各設定項目に応じて、設定の選択肢を選ぶためのラジオボタン、または値を入力することが出来るエディットボックスが用意される。プリンタに設定された現在値は各項目の選択肢、エディットボックスに反映されて表示される。
【００９０】
ユーザーは設定を変更したい項目について、変更値の選択、または入力を行った後に「OK」ボタンを押下することで設定変更がプリンタに反映される。
【００９１】
「OK」が押下されるとアプリケーションはプリンタから取得した現在値と、ユーザーの設定変更に伴う設定内容と比較を行なう。そしてその差分、すなわち設定変更が行なわれた設定内容をプリンタに対する設定値書き込みコマンドの発行により通信し、プリンタのネットワークコントロール部への設定内容変更を完了する。
【００９２】
次に、本発明に係るアプリケーションの初期ウインドウにおける設定可能プリンタの表示方法について説明する。
【００９３】
初期ウインドウでは本ユーティリティを使用して設定可能なプリンタが接続されていてアプリケーション起動時点でアクティブ、すなわち通信可能なポートがリストアップされる。設定可能なプリンタが接続されているか否かの判定は、該当ポートに対して実際に通信を行なってみることにより行なわれる。プリンタの機器情報が記述されているDeviceIDをPCから問い合わせるDeviceID取得コマンドを発行し、
- 同コマンドに対して応答があること
- 取得されるDeviceID情報を解析した結果、本アプリケーションで使用されるネットワーク設定コマンドによる通信が可能であることを表すIDが付加されていること。
の条件に合致したプリンタが接続されているポートインスタンスがリストアップの初期候補となる。アプリケーションはPCにインストールされたプリンタ用のポートインスタンス全てに対して上記判定を行なう。PCに複数の該当プリンタが接続されている場合はそれらが検出される。
【００９４】
本実施形態に係るプリンタは無線LANのセットアップを行なうためUSBを介してホストコンピュータを接続することによりUSBのポートインスタンスが作成される。同時に、当然ながらセットアップの結果無線LANのポートインスタンスも作成される。本プリンタがPCとUSB、無線LANの双方を介して接続されている場合、この両方のポートインスタンスがアクティブとなり、上記DeviceID取得コマンドへの応答があるのでUSBポートインスタンス、無線LANポートインスタンスがリストアップ対象候補となる。
【００９５】
次に、検出されたポートインスタンスについて複数の通信インターフェースを持つ同一プリンタのものである場合の処理について説明する。
【００９６】
設定用の通信が可能なポートインスタンスが全て列挙される場合、複数のポートインスタンスが存在する同一プリンタに対してユーザーはどのポート同士が同一プリンタのものであるかの判別が困難である。また、同一プリンタのポートが判別可能であった場合でも、どのポートインスタンスを使用すれば設定変更に伴う通信に影響を受けないか、といった判断を行なうことが困難である。
【００９７】
例えば無線インターフェースの設定変更を行なう際、設定変更を行なおうとしている無線インターフェースを介して変更を行った場合にはその変更内容によっては以後通信を行なうことが出来なくなる可能性がある。このようなケースでは、連続した設定変更や通信状態の確認を行なうことが出来なくなるので、こうした弊害を解消する必要がある。一方で、これら変更を設定変更対象の通信インターフェースとは別の通信インターフェースを介して行った場合、使用中の通信路は影響を受けることがないため、変更に伴う通信断は発生しない。
【００９８】
本アプリケーションは同一プリンタに対する複数ポートインスタンスの特定並びに同一プリンタのポートインスタンスの中から設定通信に適したポートインスタンスを選択する手段を具備している。
【００９９】
設定可能なプリンタが接続されているか否か判定する際、OSにより検出されたプリンタポートに対してDeviceID取得コマンドを発行する。アプリケーションがサポートするネットワーク設定コマンドによる通信が可能である（アクティブポートである）ことが判定された場合、アプリケーションはそのポートに対してネットワーク設定コマンドに基づいたネットワークインターフェースカード（NIC）情報取得コマンドを発行する。
【０１００】
本コマンドは該当NICの基本的なネットワーク情報を問い合わせるコマンドである。その応答としてNICの具備するネットワークインターフェースのタイプ、そしてそれぞれの通信インターフェースに付加されている固有の物理アドレスであるMACアドレスや現在のIPアドレス情報が取得可能である。本コマンドを利用することにより、アプリケーションは該当ポートと接続されているプリンタNICのMACアドレス情報の対応付けが可能となる。また、MACアドレスは機器メーカーが重複することのない独自の番号で管理を行い、その結果世界で唯一のアドレスが割り当てられるため、このMACアドレス情報を利用することにより固有のプリンタを特定することが可能となる。
【０１０１】
上記のようにアプリケーションは検出されたネットワーク設定コマンドで通信可能なポートインスタンスについて（NIC）情報取得コマンドを発行する。これにより、各ポートを経由して通信可能なプリンタのネットワークMACアドレスの情報を取得する。そして、複数のポートに対して同様にMACアドレス情報の取得を行った結果、異なるポートへの通信にも関わらず同一のMACアドレス情報を取得する場合がある。これは、そのポートが同一プリンタへの異なる論理通信ポートであることに他ならない。
【０１０２】
ここで同一プリンタに対していずれもネットワーク設定用通信可能な複数の論理通信ポートが見つかった場合、対象論理通信ポート全てを提示してしまうと、ユーザーはどちらを選べばいいのか迷ってしまう。ユーザーにはそのうちひとつのポートを選択肢として提示すれば十分である。また、他のプリンタの論理通信ポートと同列に提示してしまうと、どの論理通信ポート同士が同一のプリンタのものであるかわかりづらくなり、同様に混乱を招く。
【０１０３】
そこで、アプリケーションは同一のプリンタに対する論理通信ポートが複数検出された場合、そのうちの代表的なひとつのみをアプリケーション上、設定可能ポート一覧に提示する。
【０１０４】
このポート検出から同一デバイスへのポート検出、並びに設定可能ポート一覧の作成までのフローを図２３に示す。
【０１０５】
本実施形態でインストールを行なったプリンタはUSBポートと無線LANポートを具備している。このプリンタにおいてネットワーク設定は上記いずれの通信インターフェース経由、すなわちUSB論理通信ポート、無線ネットワークポートのいずれからも可能である。
【０１０６】
ここで無線の設定変更、ネットワークの設定変更を行なう際、設定変更を行なおうとしている通信インターフェース、ネットワークそのものを介して変更を行った場合に、その変更内容によっては以降通信を行なうことが出来なくなるケースある。この場合、連続した設定変更や通信状態の確認を行なうことが出来なくなる。例えば、現在無線LANの暗号化方式のひとつであるＷＥＰを無効の状態として無線LAN経由の通信を行なっているホストPCと本プリンタにおいて、無線論理通信ポート経由の設定により、プリンタ側のＷＥＰの有効化を設定すると仮定する。この場合、以降ホストPC側の無線LAN設定も同様に変更しない限り、無線LAN通信は途絶えてしまうので、以降の設定は継続出来ない。
【０１０７】
一方で、これら変更を設定変更対象の通信インターフェースとは別のインターフェース、本実施形態では上記設定の変更をUSBを介して行った場合、使用中の通信路は設定による影響を受けることがないため、ＷＥＰ暗号化を設定した後も変更に伴うUSBの通信断は発生しない。このため、USB経由の設定動作は引き続き行なうことが可能となる。
【０１０８】
ユーティリティが起動されると、ステップS2001で未検出ポートがあるか判断する。未検出のポートがなければステップS2005へ進み、同一MACアドレスのポートがあるか判断する。同一MACアドレスのポートがあれば、ステップS2006でそのプリンタの有線ポートを選択する。同一MACアドレスのポートがなければステップS2006の処理をスキップする。次いで、ステップS2007で該当するプリンタポート（設定可能ポート）の一覧を作成する。このとき、無線ポートは一覧から排除されることになる。
【０１０９】
ステップS2001で未検出のポートがあればステップS2002へ進み、次のポートを検出し、ステップS2003で該当するプリンタポートかどうかを判断する。そして、該当するプリンタポートであればステップS2004でMACアドレスを取得する。本実施形態のネットワーク設定アプリケーションでは同一のプリンタに対する論理通信ポートが複数検出され、そのうちの代表的なひとつのみを設定可能ポートとして提示する際に、USBやセントロニクスといったローカルインターフェースの論理通信ポートが存在する場合には、ネットワークインターフェースの論理通信ポートに優先してユーザーに提示する。
【０１１０】
これにより、ユーザーは複数論理通信ポートが存在するプリンタのネットワーク設定に際し、その設定用ポート選択に迷うことなく、安定した設定動作を行なうことが可能となるポートを自動的に選択することが可能となる。
【０１１１】
本実施形態では無線LANポートとローカルポートであるUSBを具備したプリンタを取り上げたが、無線LANと有線LANのポートを備えたプリンタの場合、無線LANの設定を行う際には有線LANを経由して設定変更を行った方が同様に設定変更の影響を受けない点は自明である。このように、本発明はローカルインターフェースポートのみならず、有線LANインターフェースと無線LANインターフェース間でも同様の制御を行なうことで同様の効果を得ることが可能である。
【０１１２】
以上、本発明の実施の形態について説明したが、本発明はプリンタの他、複写機、ファクシミリ装置、デジタルカメラ、モデム、ＭＩＤＩ機器などの種々の周辺機器の制御に適用してもよい。
【０１１３】
また、本発明は、前述した実施形態の機能を実現する、各図のフローチャートの手順を実現するプログラムコードを記憶した記憶媒体を、システムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても達成される。
【０１１４】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１１５】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。
【０１１６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１１７】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【０１１８】
【図１】USBを用いたプリンタドライバの一般的なインストール手順で表示される画面を示す図である。
【図２】USBを用いたプリンタドライバの一般的なインストール手順を示すフローチャートである。
【図３】OSにおける標準設定データベースの一例を示す図である。
【図４】OSにおけるプリンタ一覧の画面の一例を示す図である。
【図５】本発明の一実施形態によるプリンタ制御システムの構成を説明するブロック図である。
【図６】本発明の一実施形態による印刷システムの概略構成を示す図である。
【図７】USBを用いたプリンタドライバのインストール手順の画面を示す図である。
【図８】USBを用いたプリンタドライバのインストールのフローチャートを示す図である。
【図９】USBを用いた無線ネットワークのインストール手順で表示される画面の一例を示す図である。
【図１０】USBを用いた無線ネットワークのインストール手順で表示される画面の一例を示す図である。
【図１１】USBを用いた無線ネットワークのインストール手順で表示される画面の一例を示す図である。
【図１２】USBを用いた無線ネットワークのインストール手順の一例を示すフローチャートである。
【図１３】USBを用いた無線ネットワークインストールコマンドの一例を示す図である。
【図１４】無線ネットワークで用いられるコマンドの一例を示す図である。
【図１５】USBを用いた無線ネットワークのPCにおけるインストール手順で表示される画面の一例を示す図である。
【図１６】USBを用いた無線ネットワークのPCにおけるインストール手順の一例を示すフローチャートである。
【図１７】USBを用いた無線ネットワークのPCにおけるインストール手順の一例を示すフローチャートである。
【図１８】無線ネットワークユーティリティで用いられるコマンドの一例を示す図である。
【図１９】本実施形態におけるネットワーク設定アプリケーションが表示されるウインドウの一例を示す図である。
【図２０】ネットワーク設定アプリケーションにおける詳細設定ウインドウ中無線LAN関連項目の一例を示す図である。
【図２１】ネットワーク設定アプリケーションにおける詳細設定ウインドウ中管理パスワード関連項目の一例を示す図である。
【図２２】ネットワーク設定アプリケーションにおける詳細設定ウインドウ中アクセス制限関連項目の一例を示す図である。
【図２３】ネットワーク設定アプリケーションにおける設定可能ポート選択処理の一例を示すフローチャートである。
【符号の説明】
【０１１９】
１−１  ノートPC
１−２  プリンタ
１−３  アクセスポイント
１−４  無線LANカード
１−５  USBケーブル
【図１】
0004673018.tif 000002
【図２】
0004673018.tif 000003
【図３】
0004673018.tif 000004
【図４】
0004673018.tif 000005
【図５】
0004673018.tif 000006
【図６】
0004673018.tif 000007
【図７】
0004673018.tif 000008
【図８】
0004673018.tif 000009
【図９】
0004673018.tif 000010
【図１０】
0004673018.tif 000011
【図１１】
0004673018.tif 000012
【図１２】
0004673018.tif 000013
【図１３】
0004673018.tif 000014
【図１４】
0004673018.tif 000015
【図１５】
0004673018.tif 000016
【図１６】
0004673018.tif 000017
【図１７】
0004673018.tif 000018
【図１８】
0004673018.tif 000019
【図１９】
0004673018.tif 000020
【図２０】
0004673018.tif 000021
【図２１】
0004673018.tif 000022
【図２２】
0004673018.tif 000023
【図２３】
0004673018.tif 000024