(57)【要約】【課題】  ホストコンピュータ内に具備されている通信ポートの通信状態をユーザに対して適切に通知することが可能であり、また、該ポートの状態が悪い場合にもその原因が特定できるため、ユーザはデバイスの設定を変更するために表示されるポート選択画面の情報／指示に従うだけで、通信トラブルを回避することも可能となるアプリケーションプログラムの提供。【解決手段】  デバイスと通信するための論理ポートが具備されているホストコンピュータにおいて動作するデバイスの設定値変更する為のアプリケーションプログラムであって、前記アプリケーションプログラムが、論理ポートを表示する表示画面と、前記表示画面においてデバイスの設定を変更するための通信に用いる論理ポートを選択する機能を備えている場合において、前記各論理通信ポートと前記デバイスとの通信の可否によらず、前記表示画面に全ての論理通信ポートを表示することを特徴としたアプリケーションプログラム。【選択図】        図１
2006338358.tif 000002
【特許請求の範囲】
【請求項１】
デバイスと通信するための論理ポートが具備されているホストコンピュータにおいて動作するデバイスの設定値変更する為のアプリケーションプログラムであって、
前記アプリケーションプログラムが、論理ポートを表示する表示画面と、前記表示画面においてデバイスの設定を変更するための通信に用いる論理ポートを選択する機能を備えている場合において、
前記各論理通信ポートと前記デバイスとの通信の可否によらず、前記表示画面に全ての論理通信ポートを表示することを特徴としたアプリケーションプログラム。
【請求項２】
請求項１に記載のアプリケーションプログラムであって、
前記デバイスとは、印刷装置であることを特徴としたアプリケーションプログラム。
【請求項３】
請求項１または２に記載のアプリケーションプログラムであって、
予め決められた方法で論理ポートとデバイスとの通信状態を判定し、その結果を前記表示画面に表示することを特徴としたアプリケーションプログラム。
【請求項４】
請求項３に記載のアプリケーションプログラムであって、
デバイスと通信可能な論理ポートに関しては、予め決められた情報を取得しておき、表示時や通信時にその情報を活用することを特徴としたアプリケーションプログラム。
【請求項５】
請求項３または４に記載のアプリケーションプログラムであって、
前記通信状態とは、単に通信の可否を示すだけではなく、
デバイスとホストコンピュータとの各種設定を包含することで、
設定上は通信可能である状態と、そのデバイスが提供する本来のサービスが利用可能な状態とを判別して表示することを特徴としたアプリケーションプログラム。
【請求項６】
請求項３乃至５のいずれかに記載のアプリケーションプログラムであって、
前記通信状態とは、デバイスとホストコンピュータとの各種設定を包含するだけではなく、
現時点でのデバイスの稼動状況を包含することで、
現時点で通信可能である状態と、設定上は通信可能であるが現時点では通信が一時的に失敗する状態とを判別して表示することを特徴としたアプリケーションプログラム。
【請求項７】
請求項３乃至６のいずれかに記載のアプリケーションプログラムであって、
前記表示画面に表示されているデバイスの通信状態に応じて、表示する警告等の内容を制御することを特徴としたアプリケーションプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
デバイスと通信するための論理ポートが具備されているホストコンピュータにおいて動作する、デバイスの設定値変更する為のアプリケーションプログラムにおいて、前記各論理通信ポートと前記デバイスとの通信状態を表示する手法に関するものである。
【背景技術】
【０００２】
複数のインタフェースを持つデバイスにおいては、同様の複数インタフェースを持つホストコンピュータとそれぞれのインタフェースのいずれかを用いて通信を行うことが可能である。それぞれの通信経路がＯＳ・デバイス間の論理ポートとして確立するため、物理的には一つのプリンタデバイスであっても複数のプリンタであっても同様にインタフェース毎に論理通信ポートが作成され、デバイスとはいずれのポートを経由して通信可能となる。
【０００３】
ホストコンピュータ上のアプリケーションプログラム（以下、単にアプリケーションともいう）がデバイスにアクセスする場合、論理ポートを指定することで通信を行う。この際、所定の方法により該当する機能を持ったデバイスに対して通信可能な論理ポートを検出し、ポートが複数検出された場合はそれらをユーザに選択可能な状態で表示する等で適当な論理ポートを特定する。
【０００４】
例えばホストコンピュータ上で実行されているワードプロセッサアプリケーションにおいて印刷を行う場合、アプリケーションは所定の方法でホストコンピュータに接続されているプリンタの論理ポートの検索を行い、その検索結果を論理ポートのリスティングとしてユーザに提示することでユーザが意図するプリンタへの印刷を実現している。
【０００５】
一方、従来プリンタのような周辺機器をネットワークで複数のホストＰＣから共有して使うことが広く知られている。また近年無線インタフェースを有したプリンタやプリンタアダプタといった無線周辺機器は、従来有線で行っていたネットワーク構成を無線で構成することが出来、また配線等が不要なことから広く使われようになってきている。また無線機器の低価格化に伴い一般の家庭でも無線インタフェースを家庭内のＬＡＮとして使うことも普及し始めている。一例としてＩＥＥＥで標準化されている８０２．１１ｇ規格があり、この規格に対応した無線機器例えば無線ＬＡＮアクセスポイント、ルーターなどがある。
【０００６】
またＰＣ（パーソナルコンピュータ）にも内蔵されたものや、ＰＣＭＣＩＡカード形式で後付けできるものなどが広く販売されている。プリンタに関しても今までＰＣとＵＳＢなどのローカルインタフェースで一対一の接続が一般的であったが、家庭などでも複数のＰＣから印刷するようなニーズにこたえられるネットワークへの要望が増している。
【０００７】
しかしながらネットワーク接続を行うためのデバイス設定にはそれなりのネットワークに関する知識が必要となる。また無線インタフェース接続の場合は同様に無線インタフェースに関する知識も必要となる。
【０００８】
これら無線インタフェース、ネットワーク接続を行うにあたり、無線に関する設定やネットワークに関する設定を間違えてしまうとそれ以降通信を行うことが出来ない、といったトラブルの原因となることがあり、以下に記す種々の発明がなされている。
【０００９】
印刷機器と通信可能な状態にあるか否かを検出する接続状態検出手段を有し、検出手段により実際に通信が可能であるかどうかを判定する（例えば、特許文献１参照）。
【００１０】
画像形成装置との無線接続状態がデータの授受が可能な接続状態であるか、接続できない状態かを示す表示を行う（例えば、特許文献２参照）。
【００１１】
インタフェースが複数の論理チャネルを有し、それぞれの論理チャネルでの通信状況を取得し、それらをインタフェース、論理チャネルごとに表示を行う（例えば、特許文献３参照）。
【特許文献１】特開２００１−１１１７６０号公報
【特許文献２】特開２００２−１１８６９８号公報
【特許文献３】特開２００３−３１６７１２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、ホストコンピュータやデバイスの設定や状態によっては、通信ポートとデバイスとの通信自体が可能であっても、通信ポートを使用した本来のサービスが利用できない、というケースもあり得る。印刷装置を例に挙げると、印刷ポートが生成されておりデバイスと通信可能であっても、ユーザの誤操作等によりプリンタドライバが適切な印刷ポートに関連付けられていない、というケースである。
【００１３】
また、誤操作を防ぐ等の理由により、プリンタを選択する選択画面に通信可能なポートのみを表示する事も可能であるが、何らかの状況により通信が出来なくなったような場合には、上記のプリンタ選択画面に該当プリンタは表示されない。そのため、既に何がインストールされているかを知ることが出来ないだけでなく、何の原因により通信が出来なくなっているのかを知ることが難しかった。
【００１４】
本発明は、以上の点に着目して成されたもので、ホストコンピュータ内に具備されている通信ポートの通信状態をユーザに対して適切に通知することが可能であり、また、該ポートの状態が悪い場合にもその原因が特定できるため、ユーザはデバイスの設定を変更するために表示されるポート選択画面の情報／指示に従うだけで、通信トラブルを回避することも可能となるアプリケーションプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１５】
本発明は、上記課題を解決する為、デバイスと通信するための論理ポートが具備されているホストコンピュータにおいて動作するデバイスの設定値変更する為のアプリケーションプログラムであって、前記アプリケーションプログラムが、論理ポートを表示する表示画面と、前記表示画面においてデバイスの設定を変更するための通信に用いる論理ポートを選択する機能を備えている場合において、前記各論理通信ポートと前記デバイスとの通信の可否によらず、前記表示画面に全ての論理通信ポートを表示するアプリケーションプログラムを提供する。
【００１６】
また、予め決められた方法で論理ポートとデバイスとの通信状態を判定し、その結果を前記表示画面に表示する事で、単に通信の可否を示すだけではなく、該当ポートが提供する所望のサービスが利用可能かというシステム的観点からの情報、或いは、現時点でのデバイスの稼動状況を把握し一時的に通信が確立できないという時系列的な観点からの情報を含む総合的な情報を示すアプリケーションプログラムを提供する。
【００１７】
更に、表示画面に表示されているデバイスの通信状態に応じて、表示する警告等の内容を制御するアプリケーションプログラムを提供する。
【発明の効果】
【００１８】
本発明によれば、ホストコンピュータ内に具備されている通信ポートの通信状態をユーザに対して適切に通知することが可能である。
【００１９】
また、該ポートの状態が悪い場合にもその原因が特定できるため、ユーザはデバイスの設定を変更するために表示されるポート選択画面の情報／指示に従うだけで、通信トラブルを回避することも可能となる。
【発明を実施するための最良の形態】
【００２０】
以下、図面を参照して、本発明の実施の形態例を説明する。
【実施例１】
【００２１】
図１は、本発明の第１実施形態を示す情報処理装置（ＰＣ）、プリンタ、ＩＥＥＥ８０２．１１ａ／ｂ／ｇ等の無線ＬＡＮ通信の中継局として機能するアクセスポイントを含むデータ処理システムの一例を示す図である。
【００２２】
ＰＣ１−１は有線ローカルインタフェースとしてＵＳＢインタフェースを有し、さらに、無線インタフェースとしてＰＣＭＣＩＡカードタイプの無線ＬＡＮインタフェースを備える。また、プリンタ１−２もＰＣと同様に有線ローカルインタフェースと、無線インタフェースとの両者を備える。
【００２３】
図２は、図１に示したＰＣ１−１とプリンタ１−２のハード構成を説明するブロック図であり、図１と同一のものには同一の符号を付してある。
【００２４】
ＰＣ１−１とプリンタ１−２との間では、ＵＳＢインタフェースケーブル１−５を使い印刷を行うことも可能であり、また無線ＬＡＮインタフェースを用いてアクセスポイント１−３を経由してプリンタ１−２へ印刷データを送ることも可能である。
【００２５】
図２において、ＰＣ１−１は、ＣＰＵ１を備えている。ＣＰＵ１は、ＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１に記憶された文書処理プログラム等に基づいて、図形や、イメージ、文字、表（表計算等を含む）等が混在した文書処理を実行し、システムバス４に接続される各デバイスをＣＰＵ１が総括的に制御する。
【００２６】
また、このＲＯＭ３のプログラム用ＲＯＭあるいは外部メモリ１１には、ＣＰＵ１の制御プログラムであるオペレーティングシステムプログラム（以下ＯＳ）等が記憶され、ＲＯＭ３のフォント用ＲＯＭあるいは外部メモリ１１には、上記文書処理の際に使用するフォントデータ等が記憶され、ＲＯＭ３のデータ用ＲＯＭあるいは外部メモリ１１には、上記文書処理等を行う際に使用する各種データが記憶されている。
【００２７】
ＲＡＭ２は、ＣＰＵ１の主メモリやワークエリア等として機能する。キーボードコントローラ（ＫＢＣ）５は、キーボード（ＫＢ）９や不図示のポインティングデバイスからのキー入力を制御する。ＣＲＴコントローラ（ＣＲＴＣ）６は、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。ディスクコントローラ（ＤＫＣ）７は、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、及びプリンタ制御コマンド生成プログラム（以下、プリンタドライバと記す）等を記憶する外部メモリ１１とのアクセスを制御する。外部メモリ１１は、ハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）等で構成される。
【００２８】
プリンタコントローラ（ＰＲＴＣ）８は、ＵＳＢインタフェース３２、ＵＳＢコネクタ３３、ＵＳＢインタフェースケーブル１−５、または、カードＩ／Ｆ３０、無線ＬＡＮカード１−４を介して接続するプリンタ１−２との通信制御処理を実行する。
【００２９】
ＵＳＢインタフェース３２は、ＵＳＢコネクタ３３に接続されるＵＳＢインタフェースケーブル１−５を介してプリンタ１−２と有線通信可能に接続することができる。また、無線インタフェースとしてはＰＣＭＣＩＡカードタイプの無線ＬＡＮカード１−４をカードＩ／Ｆ３０を介して装着する。アクセスポイント１−３は、無線インタフェースのアクセスポイントで無線機器同士の仲介の役割を果たす。アクセスポイント１−３は、ＰＣＭＣＩＡカードタイプの無線ＬＡＮカードを装着することができる。なお、前述した無線ＬＡＮ通信部がプリンタに内蔵されている構成であっても本発明の動作には影響ない。
【００３０】
なお、ＣＰＵ１は、例えばＲＡＭ２上に設定された表示情報のアウトラインフォントへの展開（ラスタライズ）処理を実行し、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ１は、ＣＲＴ１０上に表示されるマウスカーソル等で指示されたコマンドに基づいて、登録された種々のウインドウを開き、種々のデータ処理を実行する。
【００３１】
これによって、ユーザは、印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタ１−２の設定や、印刷モードの選択を含むプリンタドライバに対する印刷処理方法の設定を行うことができる。
【００３２】
一方、プリンタ１−２は、プリンタＣＰＵ１２を備えている。プリンタＣＰＵ１２は、ＲＯＭ１３のプログラム用ＲＯＭに記憶された制御プログラム等あるいは外部メモリ１４に記憶された制御プログラム等に基づいて、システムバス１５に接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。また、このＲＯＭ１３のプログラム用ＲＯＭには、ＣＰＵ１２の制御プログラム等が記憶されている。ＲＯＭ１３のフォント用ＲＯＭには、上記出力情報を生成する際に使用するフォントデータ等が記憶され、ＲＯＭ１３のデータ用ＲＯＭには、ハードディスク等の外部メモリ１４を用いないプリンタ１−２の場合ではホストコンピュータ１−１上で利用される情報等が記憶されている。
【００３３】
ＣＰＵ１２は、プリンタ１−２内の情報等をＰＣ１−１に通知可能に構成されている。ＲＡＭ１９はＣＰＵ１２の主メモリやワークエリア等として機能し、図示しない増設ポートに接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。
【００３４】
カードインタフェース３１は、スロットに装着される無線ＬＡＮカード１−４へのアクセスが可能に構成されている。ＵＳＢインタフェース３４は、ＵＳＢコネクタ３５にＵＳＢインタフェースケーブル１−５が接続される。
【００３５】
なお、ＲＡＭ１９は、出力情報展開領域や、環境データ格納領域、ＮＶＲＡＭ等に用いられる。前述したハードディスク（ＨＤ）や、ＩＣカード等の外部メモリ１４は、メモリコントローラ（ＭＣ）２０によりアクセスを制御される。外部メモリ１４は、オプションとして接続され、フォントデータや、エミュレーションプログラム、フォームデータ等を記憶する。さらに、操作パネル１５１には、操作のためのスイッチ及びＬＥＤ表示器等が配されている。
【００３６】
また、外部メモリ１４は、少なくとも１個以上備えられ、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていても良い。さらに、図示しない不揮発性であるＮＶＲＡＭを有し、操作パネル１５１からのプリンタモード設定情報を記憶するようにしても良い。
【００３７】
なお、図１、２では１台のＰＣのみが図示されているが、複数のＰＣが１つのアクセスポイントに接続可能で１つのプリンタを複数のＰＣで共有して印刷を行うことも可能である。無線ＬＡＮにはアクセスポイントを経由して複数の無線ＬＡＮ機器と接続可能なモードがあり、インフラストラクチャモードと呼ばれる。インフラストラクチャモードでは、アクセスポイントに設定されたＩＤ（ＳＳＩＤ）と同じＩＤを無線ＬＡＮ機器にも設定することで複数の無線ＬＡＮ機器からアクセスポイントを経由してＬＡＮを構成することができる。無線ＬＡＮとしてプリンタを使用する場合、プリンタがアクセスポイントに接続できるように設定する必要がある。
【００３８】
本実施例ではＰＣ１−１とアクセスポイント１−３との間の設定は既になされていてインフラストラクチャモードで通信できる状態になっているものとする。
【００３９】
また、プリンタ１−２に関してはまだ無線ＬＡＮの設定が行なわれておらず、初期状態としてインフラストラクチャモードでＩＤは設定されていないものとしている。無線ＬＡＮの装備されていないプリンタでは一般的にＵＳＢでＰＣと接続されて印刷を行うものが主流となっている。
【００４０】
一般的にＰＣでは何らかのＯＳが動作していて、そのＯＳ環境で印刷を行うためには印刷用ソフト（プリンタドライバ）が必要となる。プリンタドライバは、ＯＳメーカーあるいはプリンタメーカーから提供され、予めＰＣにインストールされたり、ＣＤなどの形式で提供されたりする。プリンタで印刷を行うためには、何らかの形でプリンタドライバをインストールする必要がある。
【００４１】
またさらに、無線ＬＡＮを使って印刷を行うような場合には、プリンタ内の無線ＬＡＮの設定を行い、アクセスポイントと接続できる状態にした上、ＰＣでは無線ＬＡＮでの印刷を可能とするソフトウェアをインストールしプリンタに適した設定にしておく必要がある。
【００４２】
無線ＬＡＮ機器のインストール作業には様々な方法が用いられる。例えば、無線ＬＡＮのセットアップを無線ＬＡＮインタフェースで行うセットアップ方法では、まずセットアップを行うために、ＰＣの無線ＬＡＮ通信設定をセットアップ対象機器に合わせて無線動作モードや接続ＩＤ（ＳＳＩＤ）等を変更する必要があり、それまで正常に無線通信ができていたＰＣの無線ＬＡＮ設定を一旦変更しないとセットアップが行えないという問題がある。また、機器をアクセスポイント１−３へ接続するにあたり、該当アクセスポイント１−３のＳＳＩＤをユーザが覚えておき、それを入力設定する必要があるといった不便さがある。
【００４３】
こういった問題を解決するために、無線ＬＡＮのセットアップをより動作準備が簡易な無線ＬＡＮインタフェース以外のインタフェースを使用して行うというセットアップ方法が考えられ、例えばプリンタ１−２とアクセスポイント１−３とを有線ＬＡＮインタフェースで接続して無線ＬＡＮのセットアップを行うといったセットアップ方法も出現している。
【００４４】
しかしながら、この場合、プリンタ１−２とアクセスポイント１−３を結線することで既に家庭内で使用しているアクセスポイント１−３の結線状態や設定をセットアップの為に変更してしまう可能性があり、その場合には元に戻すことが困難であったり手間がかかったりする。またこの場合、実際設定操作を行うＰＣとプリンタは相変わらず無線ＬＡＮ経由の接続となる為、正しく接続されているかどうかを確かめるのが難しいという問題が残る。
【００４５】
上記に対して、本実施形態では無線ＬＡＮのインストールをＰＣ１−１とプリンタ１−２が備えるそれぞれのＵＳＢインタフェースを使って行う。無線ＬＡＮインタフェース３１とＵＳＢインタフェース３４が備わったプリンタ１−２において、一般的なＵＳＢプリンタのインストール同様にＰＣ１−１とプリンタ１−２をＵＳＢケーブル１−５で結線し、プリンタドライバのインストールを行った後に、何らインタフェース上の通信結線状態を変更することなく無線ＬＡＮのインストールを行うことを可能としている。
【００４６】
プリンタ１−２の無線ＬＡＮ設定は、ＰＣ１−１とプリンタ１−２間のＵＳＢ通信により行なわれる為、既に正常通信設定が行われているＰＣ１−１やアクセスポイント１−３の無線ＬＡＮ設定や物理結線を変更することなくプリンタの無線ＬＡＮ設定が可能となる。
【００４７】
以降、一般的なプリンタドライバのインストールについて＜プリンタドライバのインストール処理＞で説明した後に、ＵＳＢインタフェースを使ったプリンタドライバのインストール、ＵＳＢインタフェースを使った無線ＬＡＮのインストールを説明する。
【００４８】
＜プリンタドライバのインストール処理＞
ＰＣなどのホストコンピュータにプリンタを接続して印刷を行えるようにするためには、ホストコンピュータのＯＳ上で印刷アプリケーションからの印刷命令を理解し、印刷命令に基づく印刷制御コマンド並びに印刷データをプリンタに転送し、プリンタの制御を行うためのソフトウェアが必要となる。このプリンタの制御を行うソフトウェアが前述したプリンタドライバである。
【００４９】
プリンタドライバに代表されるように、ホストコンピュータに接続される全てのハードウェアは、デバイスドライバを介してアプリケーションからの制御命令を受け取る仕組みで制御される。デバイスドライバはオペレーティングシステム（ＯＳ）上で起動されている特定の上位アプリケーション専用のものではないため、デバイスがホストコンピュータに接続されている間は一種の常駐プログラムとして特定のメモリ領域を占有して常駐している。
【００５０】
例えばＷｉｎｄｏｗｓ（登録商標）に代表される最近のＯＳは、デバイスをホストコンピュータに接続したときに自動的にそのデバイスに対応した適切なデバイスドライバを組み込むといったプラグ・アンド・プレイ機能を有している。デバイスを初めてホストコンピュータに接続した際のプラグ・アンド・プレイ処理の場合において、ＯＳが標準に備えているデバイスドライバの中に最適なものが無かった場合、デバイス購入時にフロッピー（登録商標）ディスクやＣＤ−ＲＯＭといったメディアで添付されるデバイスドライバをＯＳに組み込む必要がある。このデバイスドライバの組み込み作業をドライバのインストール作業と称する。
【００５１】
以下に、プラグ・アンド・プレイに対応したＯＳにおけるデバイスドライバのインストール処理を説明する。
【００５２】
プラグ・アンド・プレイ対応の有線インタフェースの代表的なものとしてＵＳＢインタフェースが挙げられる。ここではＵＳＢインタフェースを使ったプリンタドライバのインストールを例に挙げて説明を行う。
【００５３】
図３は、プリンタドライバをインストールする際にホストコンピュータ上に表示されるメッセージ画面であり、図４はデバイスドライバのインストール時のシーケンスフローチャートである。なお、当該シーケンスフローまたはメッセージはプラグ・アンド・プレイが正常に行われた場合のみとする。プラグ・アンド・プレイが失敗した場合のエラーシーケンスは別途存在することは言うまでもない。
【００５４】
まずユーザがプラグ・アンド・プレイ対応インタフェースであるＵＳＢインタフェースを使い、プリンタをホストコンピュータに接続する。ホストコンピュータ上で動作しているＯＳは、ＵＳＢインタフェース経由でデバイスがホストコンピュータに接続されたことを検出する（図４のステップＳ４００）。このときに、図３の３−１のような画面を表示する。
【００５５】
ユーザは、インストールを行いたい場合には、「インストール」ボタン３−２を押下する。一方、プリンタドライバのインストールをしたくない場合には、「キャンセル」ボタン３−３を押下する。つぎに、ＯＳは、ＵＳＢインタフェースで定められた所定の方法でＵＳＢ機器の基本情報であるデバイス・ディスクリプタをプリンタから読み出す（ステップＳ４０１）。デバイス・ディスクリプタには、デバイスの種類を示すデバイス・クラス情報など、その機器に関する基本機能情報が含まれている。
【００５６】
ＯＳは、デバイス・ディスクリプタを読み出して解析することにより接続されたデバイスがプリンタ・クラスに属するデバイス、すなわちプリンタであるかを判断する（ステップＳ４０２）。接続されたデバイスがプリンタである場合には、ステップＳ４０３に進み、プリンタ以外のデバイスであれば、ステップＳ４１０に進む。ステップＳ４１０では、デバイスに対応するその他の処理を行う。
【００５７】
プリンタのデバイスドライバ構成は、一般的には大きく２レベルのドライバから構成される。１つは、プリンタが接続されるインタフェース毎に、そのインタフェース上で該当デバイスとのデータ通信を行うためのプロトコルを制御する下位レベルドライバとしてのポートドライバである。２つ目は、ポートドライバの上位層に位置し、実際の印刷アプリケーションデータを個々のプリンタに適した記録データやプリンタ言語に変換する上位プリンタドライバである。上位プリンタドライバは、プリンタの動作状態、すなわちステータス情報をプリンタから取得して、当該ステータス情報をプリンタ状態表示用アプリケーションに引き渡すといったことも行っている。
【００５８】
接続されたデバイスがプリンタであると認識すると、ＯＳは予め定められた方法を使い、適切なポートドライバをインストールして使用可能な状態にする（ステップＳ４０３）。このとき、ＯＳは図３の３−４のような画面を表示する。ユーザは、ポートドライバのインストールを中止したいときには、「キャンセル」ボタン３−５を押下する。さらに、ポートドライバの制御により、インタフェース上に検出された特定のデバイスとＰＣとの間で１対１のデータ通信を行うための論理コネクションであるポートインスタンスが用意される。ＵＳＢプリンタの場合、ＵＳＢ印刷用のポートドライバがインストールされたのちに、そのプリンタとホストコンピュータとの間の通信を行うための論理通信路としてポートインスタンスが作成される（ステップＳ４０４）。
【００５９】
ポートドライバがロードされ、初期化処理を経て動作可能状態になると、ＯＳは、所定の方法で接続されたプリンタの詳細情報としてクラスディスクリプタを取得する（ステップＳ４０５）。ＵＳＢプリンタの場合、これは、ＵＳＢプリンタ・クラス規格にて定義されたＤｅｖｉｃｅＩＤの読み出しコマンド（ＧＥＴ＿ＣＡＰＡＢＩＬＩＴＩＥＳ）をポートドライバ経由でプリンタデバイスへ発行することにより行われる。その応答としてプリンタにより返送されるＤｅｖｉｃｅＩＤには、プリンタの製造元情報やモデル名、サポートされるプリンタ言語情報などプリンタモデル固有の情報が含まれている。
【００６０】
ＯＳは、接続されたＵＳＢプリンタの詳細情報を得て、その詳細情報に基づき、最適な上位プリンタドライバを検索する（Ｓ４０６）。該当する上位プリンタドライバがＯＳの標準検索範囲内に存在する場合、標準検索範囲内で見つかった上位プリンタドライバを組み込む。該当する上位プリンタドライバがＯＳの標準検索範囲内に存在しない場合、ユーザに対してそのドライバの保存先などを問い合わせる旨のメッセージ等を表示する。このような場合、ユーザは、デバイス購入時に同梱されるフロッピー（登録商標）ディスクやＣＤ−ＲＯＭといったメディア、またはインターネットを経由してメーカーのファイルサーバーからダウンロードされたデバイスドライバ等を指定することにより、該当上位ドライバがＯＳに組み込まれる（ステップＳ４０７）。上位ドライバの組み込み時に、所定の手順に従って上位プリンタドライバがＰＣの所定の位置（ディレクトリ）にコピーされる。
【００６１】
次に、ＯＳが標準で備えるデータベース上に現在インストールを行っているデバイスに関する項目（エントリ）が追加される（ステップＳ４０８）。このデータベースには、デバイス毎の制御用設定パラメータ、ドライバ・デバイス構成、デバイスインスタンスに関連付けられた下位ポートドライバに関する情報、ポートインスタンス情報、及びユーザによる設定情報、といった情報が保存される。Ｗｉｎｄｏｗｓ（登録商標）２０００やＷｉｎｄｏｗｓ（登録商標）ＸＰといったＯＳでは、この標準データベースを一般的にレジストリと称しており、本説明でも以下レジストリと呼ぶ。レジストリがユーザに認識できる形に表示された一例を図５に示す。
【００６２】
このエントリは、ＯＳにより作成されたポートインスタンス経由で通信を行うデバイス、すなわち論理デバイス毎に作成される。すなわち、ＯＳとデバイスとの間の論理接続毎にエントリが用意され、対応するポートインスタンス情報が保存されることにより関連付される。例えば複数の接続インタフェースを具備するプリンタをそれぞれのインタフェース経由でホストコンピュータに接続した場合、インタフェース毎にポートインスタンスが作成される。同一プリンタで使用される上位プリンタドライバは共通であるものの、エントリはインタフェース毎または論理接続毎にレジストリ上に作成される。
【００６３】
上記のように、プリンタドライバの起動準備が完了すると、インストールが完了した旨のメッセージを図３の３−６のように表示する（ステップＳ４０９）。
【００６４】
ＧＵＩを備えた一般的なＯＳのプリンタ一覧画面では、あるプリンタに対するポートインスタンスはプリンタ・アイコンという形で視覚的に表示される。この一例を図６に示す。すなわち、あるプリンタに対して複数のインタフェースを経由した複数のポートインスタンスが作成された場合、各インスタンスに対してそれぞれプリンタ・アイコンが表示される。このプリンタ・アイコンとポートインスタンスとの関連付けに関する情報も、上記ポートインスタンス毎に作成されるエントリに記述されるため、各ポートインスタンスがどのプリンタ・アイコンによって視覚的に代表されているかといった情報も管理される。
【００６５】
以上、プラグ・アンド・プレイに対応したＯＳにおける一般的なデバイスドライバのインストール処理についてＵＳＢプリンタを例に説明した。無論ＯＳの種類により異なる方法でデバイスドライバのインストールが行われる場合もあるが、概ね説明した手順と同様なシーケンスでプラグ・アンド・プレイデバイスのインストールが行われる。
【００６６】
＜本実施形態のプリンタドライバ・インストール＞
図７は、本実施形態に係る、ＵＳＢを用いたプリンタドライバ・インストール処理で表示される画面例を示す図である。この画面例は、図１のプリンタ１−２で印刷を行うためプリンタドライバをＰＣ１−１にインストールする際に、ＰＣ１−１の画面上に表示されるものである。
【００６７】
まず始めの画面として、画面７−１が表示される。この画面７−１は、プリンタドライバ・インストール処理の開始画面になり、ユーザがインストール用のソフトウェアを起動することで表示される。画面７−１上には、「実行」と「キャンセル」をそれぞれ選択する選択アイコン（ボタン）７−２、７−３があり、マウスなどで選択することができる。「実行」ボタン７−２を選択するとインストールが開始され、次の画面７−４が表示される。「キャンセル」ボタン７−３を選択した場合は、プリンタドライバのインストールは行われずに終了する。
【００６８】
画面７−４では、ユーザにＵＳＢインタフェースを接続する旨の指示が表示され、ユーザはその指示に従ってプリンタ１−２のＵＳＢコネクタ３３を介してＵＳＢインタフェース３２にＵＳＢケーブル１−５を接続する。プリンタ１−２の電源が入っていない場合、ユーザはプリンタ１−２の電源を入れる。画面７−４でも、「キャンセル」ボタン７−５でインストールを中止することができる。
【００６９】
ＵＳＢケーブル１−５を接続してプリンタ１−２の電源を入れると、プラグ・アンド・プレイによりプリンタドライバのインストール、及びプリンタ１−２の内部設定が完了する。プラグ・アンド・プレイによるプリンタドライバのインストールは、前述した＜プリンタドライバのインストール処理＞で説明した手順で行われる。
【００７０】
インストールに成功すると、画面７−６が表示されてインストールが完了し、「ＯＫ」ボタン７−７を選択することでソフトウェアが終了する。何らかの理由によりプリンタドライバのインストールが失敗した場合は、画面７−８が表示されてインストールに失敗したことをユーザに知らしめる。画面７−６と同様に「ＯＫ」ボタン７−９でソフトウェアが終了する。
【００７１】
以上のように、画面７−１→画面７−４→画面７−６の指示に従って操作することで、ＵＳＢインタフェースを使ったプリンタドライバのインストールが完了し、ＵＳＢインタフェースを介して印刷データを送信することが可能となる。
【００７２】
図８は、ＰＣ１−１が実行する処理を示すフローチャートであって、図７に示した画面が表示される本実施形態のプリンタドライバ・インストール処理を示すフローチャートである。
【００７３】
まず、図７に示した画面７−１の表示を行う（ステップＳ８００）。画面７−１で「実行」ボタン７−２が選択されるとステップＳ８０１へ進み、プリンタドライバ実行ファイルをシステムにコピーする。すなわち、一般的にはＯＳによりプリンタドライバ実行ファイル及び情報ファイルが配置されるシステム内の場所が決まっており、それに従ってプリンタドライバの実行ファイルをコピーしておく。前述の＜プリンタドライバのインストール処理＞で説明したように、ＯＳは予め決まったプリンタドライバの情報ファイルの保存場所から適切なプリンタドライバを探し出して、それを使用できるように登録・設定の作業を行う。この作業が正しく行われるためにプリンタドライバ関連のファイルを指定の場所へコピーするのがこの処理である。
【００７４】
次に、画面７−４を表示する（ステップＳ８０２）。この画面を表示した後、一定時間が経過したかをチェックする（ステップＳ８０３）。一定時間が経過していない、つまりタイムアウトが発生していない場合には、プリンタの認識が完了したかをチェックする（ステップＳ８０４）。これは、プラグ・アンド・プレイで正しくプリンタ１−２が発見されたどうかの確認を行うものであり、プリンタドライバのインストールが完了するとプリンタの認識が完了したものとする。詳しくは、前述した＜プリンタドライバのインストール処理＞で詳細が述べられている。
【００７５】
タイムアウトが発生したとステップＳ８０３で判定された場合は、インストールに失敗したことを画面７−８に表示する（ステップＳ８０７）。
【００７６】
ステップＳ８０４において、プリンタ１−２の認識が完了した場合は、ステップＳ８０５へ進み、プリンタ情報の設定を行う。そして、ステップＳ８０６において、正常にインストールが終わったことを示す画面７−６を表示する。画面７−６で「ＯＫ」ボタン７−７が選択された場合は、ＵＳＢインタフェースを使ったプリンタドライバ・インストール処理が完了する。
【００７７】
本実施形態のプリンタ１−２は、ＵＳＢインタフェースと無線ＬＡＮインタフェースの両者を有するので、プリンタドライバのインストールが終了した後に引き続き無線ＬＡＮの設定（無線ネットワーク・インストール）が行なわれる。
【００７８】
＜本実施形態の無線ネットワーク・インストール＞
図９は、図７、８で説明したプリンタドライバのインストールが終了した後、引き続き無線ＬＡＮのインストール行う場合の画面表示を示したものである。ＵＳＢのみのインストールの場合、図７の画面７−６で完了となっていたが、無線ＬＡＮのインストールも行う場合は、画面７−６の画面に替わりに図９の画面９−１が表示される。画面９−１で「ＯＫ」ボタン９−２をユーザが選択した場合、ここで完了となり無線ＬＡＮのインストールは行なわれない。画面９−１で「ネットワーク・インストール」ボタン９−３を選択すると引き続きネットワークのインストールが開始される。
【００７９】
本発明の効果を分かりやすく説明する為、まず、プリンタ１−２はＭＡＣアドレスフィルタリング機能を使用していない場合について全体の動作の流れを説明し、その後、＜プリンタがフィルタリングを使用している場合＞について説明する。
【００８０】
本実施例ではＰＣ１−１とアクセスポイント１−３との間の設定は既になされていて、インフラストラクチャモードで通信できる状態になっているものとする。プリンタ１−２に関してはまだ無線ＬＡＮの設定が行なわれておらず、初期状態としてインフラストラクチャモードでＩＤは設定されていないものとしている。
【００８１】
前述の通り、プリンタ１−２はフィルタリング機能を備えているものの、該当機能は使用していないものとする。
【００８２】
まず、始めにアクセスポイント１−３と接続するためにアクセスポイントを選択する操作に入る。
【００８３】
画面９−４はＰＣ１−１からプリンタ１−２に装着された無線ＬＡＮカードを使い、プリンタ１−２から発見されるアクセスポイントの一覧を表示するために、ＵＳＢケーブル１−５経由でＰＣ１−１からプリンタ１−２にアクセスポイントサーチのコマンドを送り、その結果得られたアクセスポイントの情報をＵＳＢケーブル１−５経由で取得し、その取得内容を基に画面にサーチしたアクセスポイントの一覧を表示した状態を示している。
【００８４】
画面９−５には、プリンタ１−２から見つけることができたアクセスポイントの一覧を表示していて、この例では３つのアクセスポイントＡ、Ｂ、Ｃがプリンタから見つかったことを示している。発見したアクセスポイントの表示は、無線電波の届く範囲内で稼動しているアクセスポイントを全て示しており、必ずしも自分が使っているものだけが表示されるとは限っていない。複数のアクセスポイントが表示された場合、ユーザは自分が接続したい所望のアクセスポイントを画面９−５のハイライトされた行を移動することで使用するアクセスポイントを決定する必要がある。
【００８５】
この時、ネットワーク・インストーラは無線ＬＡＮカード１−４のドライバとの通信により、現在ＰＣ１−１が接続しているアクセスポイントに関する情報を取得することにより画面９−４の表示が省略可能である事を＜自動化＞にて後述する。
【００８６】
ユーザの操作により、使用することが決定されたアクセスポイントが暗号化されている場合、暗号を解読するための暗号キーを画面９−６に入力することができ、暗号化されたアクセスポイントにも対応することができる。一般的に無線ＬＡＮでは盗聴やデータの漏洩を防止するために暗号化の技術が採用されている。代表的なものにＷＥＰ（Ｗｉｒｅｄ  Ｅｑｕｉｖａｌｅｎｔ  Ｐｒｉｖａｃｙ）があり、同じ暗号化用のキーと呼ばれる情報が暗号化と復号化のために使われる対称的なアルゴリズムでこのキーを設定することで他の機器からのデータの隠蔽を実現する。暗号化された環境で無線ＬＡＮを使用している場合、プリンタ１−２にも同じ暗号キーを設定する必要がある。
【００８７】
画面９−４で、「戻る」ボタン９−７を選択すると前の画面９−１へ戻ることができる。「次へ」ボタン９−８を選択することで、ユーザが選択したアクセスポイントを指定して次に進むことができ、「キャンセル」ボタン９−９でインストールを中止することができる。
【００８８】
画面９−４でアクセスポイントを指定し、そのアクセスポイントを経由してＰＣ１−１とプリンタ１−２が接続することが指定されると、プリンタ１−２へのアクセスポイントとの接続のための設定が行われ、プリンタ１−２がアクセスポイントから認識できるようになる。
【００８９】
その後、プリンタ１−２が正しく接続されたどうかを確認するために無線ＬＡＮ経由でプリンタの検索を行う。詳細は図１１のフローチャートで説明する。
【００９０】
画面９−１０は、アクセスポイント１−３経由で発見されたプリンタの一覧を表示する画面であり、プリンタのサーチはＰＣ１−１の無線ＬＡＮからアクセスポイント１−３を経由して送信されたプリンタサーチコマンドを受け取ったプリンタがその返答を戻し、この応答をＰＣ１−１が受信することで行なわれる。サーチコマンドはブロードキャストでネットワーク上の全ての機器に送信され、サーチコマンドを受取りこのコマンドを理解できる機器（この場合は特定のプリンタやプリンタアダプタ）がコマンドを送信したＰＣ１−１に対してコマンドに対する予め決められた情報を戻す。この情報にはプリンタの名称やＩＤ、アドレスなどが含まれていて、これら情報を基に接続したいプリンタを特定することができる。
【００９１】
画面９−１０では、発見されたプリンタの一覧９−１１が表示されていて、この例ではプリンタ１、２、３の３つのプリンタが発見されたものとする。アクセスポイントの選択と同様にハイライトで示されたプリンタが選択できる。この画面でも「戻る」ボタン９−１２を選択すると前画面９−４へ戻り、「次へ」ボタン９−１３を選択すると、選択したプリンタに接続相手を決めることができる。「キャンセル」ボタン９−１４を選択すると、インストールを中止することができる。
【００９２】
「次へ」ボタン９−１３が選択されると、画面９−１５が表示され、ポート名を入力する画面となる。ポート名入力欄９−１６に入力したいポート名を入れることができる。ポート名は１つのＰＣ上で、複数のプリンタを区別する為に用いられ、初期値としてこの場合ＷＬＡＮ０１が設定される。ＷＬＡＮは無線ＬＡＮ対応のプリンタを示すための識別名で、０１はシステムに登録されている最終の番号を表している。この番号は、複数の同じ機能を有するプリンタを区別して扱うために順番につけられる。一般的にプリンタドライバでは、このポート名を指定して印刷するプリンタを特定するのに使われる。
【００９３】
画面９−１５でも、「戻る」ボタン９−１７を選択すると前画面９−１０へ戻り、「次へ」ボタン９−１８を選択すると入力欄９−１６に入力したポート名を決めることができる。「キャンセル」ボタン９−１９を選択すると、インストールを中止することができる。画面９−１５で「次へ」ボタン９−１８が選択されると、画面９−２０が表示されネットワークのインストールが完了を示す画面となる。
【００９４】
この画面には２つの選択肢があり、無線ＬＡＮのプリンタ・アイコンのみを作成する場合に選択するラジオボタン９−２１と無線ＬＡＮとＵＳＢの両方のアイコンを作成する場合に選択するラジオボタン９−２２のいずれかを選択することができる。ラジオボタン中で「●」で示されている項目が現在選択されているもので、図示しないポインティングデバイスなどで変更することが可能となる。「ＯＫ」ボタン９−２３を選択すると、選択されたラジオボタンの内容に従ってプリンタ・アイコンが作成される。プリンタ・アイコンは、ユーザが登録されているプリンタを確認、区別あるいは現在準備可能なプリンタを識別するのに利用され、アプリケーションからの印刷ではこのアイコンが選択される。
【００９５】
なお、プリンタの名称やＩＤを取得するコマンドをＵＳＢケーブル１−５経由でＰＣ１−１からプリンタ１−２に送り、その結果得られたプリンタ情報と、上述したプリンタサーチコマンドに対する応答により発見されたプリンタのプリンタ情報とが一致したものをインストーラが自動的に選択することによりプリンタ選択のステップ、画面９−１０を省略することが可能であることを＜自動化＞にて後述する。
【００９６】
また、プリンタポートも自動作成することにより画面９−１５も省略して無線ネットワークのインストールを完了することが可能になることを＜自動化＞にて後述する。
【００９７】
＜自動化＞
ＰＣ１−１のネットワーク・インストーラは、無線ＬＡＮカード１−４のドライバとの通信により、現在ＰＣが接続しているアクセスポイントに関する情報を取得することが可能である。本実施例ではこの通信により、ＰＣ１−１が接続しているアクセスポイントがアクセスポイントＣであるという情報を取得する。
【００９８】
ネットワーク・インストーラは、これらプリンタの情報、ＰＣの情報を元に接続アクセスポイントを自動的に決定することができる。ネットワーク・インストーラは、ＰＣ１−１が現在接続しているアクセスポイントと一致するアクセスポイントを、プリンタから見つけたアクセスポイント一覧の中から探し、一致しているものが見つかった場合にはそのアクセスポイントを接続対象として決定し、かつ暗号化設定などアクセスポイント特定情報以外の情報を要することなく接続が可能な場合に自動的に接続設定を行う。
【００９９】
現在インストール作業を行っているＰＣ１−１が接続しているアクセスポイントと同じアクセスポイントをプリンタ１−２が検出した場合、プリンタ１−２がその同じアクセスポイントに接続することで、ＰＣ１−１とプリンタ１−２が無線ＬＡＮ経由で通信を行うことが可能になるのは自明である。よって、ＰＣ１−１が現在接続しているアクセスポイントと一致するアクセスポイントがプリンタから見つけられた場合には、そのアクセスポイントを接続対象として決定することができる。その上、ユーザの操作による暗号キーの入力が必要ない場合には、そのアクセスポイントへの接続指定、すなわちアクセスポイントの設定がＰＣ１−１からプリンタ１−２に対して自動的に行われる。
【０１００】
ここでは、プリンタ１−２が見つけた３つのアクセスポイントＡ、Ｂ、Ｃのうち、アクセスポイントＣはＰＣ１−１が接続しているアクセスポイントと一致する為、アクセスポイントＣが選択される。さらにアクセスポイントＣは暗号化が無効の状態で動作中であることも判るので、自動的に接続が可能であることがわかる。この場合、画面９−４は表示する必要がないので表示を省略し、画面９−１０へ進む事ができる。
【０１０１】
また、アクセスポイントへの自動接続が行なわれた後、プリンタ１−２が正しく接続されたどうかを確認するためにＰＣ１−１は無線ＬＡＮ経由でプリンタの検索を行う。本例では前述のように、ＰＣ１−１が無線ＬＡＮ通信によるプリンタサーチコマンドの応答により発見したプリンタの中に、プリンタの名称やＩＤを取得するコマンドをＵＳＢケーブル１−５経由でＰＣ１−１からプリンタ１−２に送り、その結果得られたプリンタ情報と一致するものをインストーラが自動的に選択することによりプリンタ選択のステップを自動化している。
【０１０２】
またプリンタポートも自動作成している為、プリンタ検出、ポート作成に成功すると、インストールは完了する。つまり、図１０のように、画面９−１から画面９−２０に推移する。この場合、ユーザは図１０の画面９−１で「ネットワーク・インストール」ボタン９−３の選択と、画面９−２０の完了画面でアイコン作成のためのラジオボタン９−２１、９−２２の選択、「ＯＫ」ボタン９−２３の選択を行うだけで無線ネットワークのインストールが完了することになる。詳細については図１１のフローチャートで説明する。
【０１０３】
なお、アクセスポイントが暗号化通信を行っている場合においては、暗号を解読するための暗号キーを入力する必要があるため、画面９−４が表示され、入力欄９−６に暗号キーを入力することで暗号化されたアクセスポイントに接続することができる。
【０１０４】
また、アクセスポイント一覧９−５では、ＰＣ（ネットワークインストールソフトウエア、以降ネットワーク・インストーラ）がＵＳＢ経由で取得したプリンタから見つけることができた全てのアクセスポイントの情報を表示するものの、上述の判定基準によって既に自動決定されたアクセスポイント、本実施例ではアクセスポイントＣを自動的に選択状態にしておくこともできる。暗号キー入力後、「次へ」ボタン９−８を選択することで、自動決定したアクセスポイントを指定して次に進むことができる。なお、何らかの理由により一致するアクセスポイントがなかった場合には、同様に画面９−４を表示して接続を行うアクセスポイントを選択する必要がある。
【０１０５】
図１１は、プリンタドライバのインストールが完了した後、引き続き行われる無線ＬＡＮのインストール手順を示したフローチャートである。
【０１０６】
ステップＳ１１０１では、プリンタ１−２は、ＰＣ１−１からＵＳＢケーブル１−５経由でアクセスポイントサーチのコマンドが送られてくると、アクセスポイントのサーチを行う。無線ＬＡＮインストールのためにＵＳＢケーブル１−５経由でＰＣ１−１とプリンタ１−２との間で送信されるコマンドは図１２で示され、３つのコマンドが用意されている。その内のアクセスポイントサーチコマンドＣＭＤ１２１をＰＣ１−１からプリンタ１−２へ送ることで、プリンタ１−２はアクセスポイントサーチのための設定を無線ＬＡＮカード１−４に行う。
【０１０７】
アクセスポイントサーチの設定がされたプリンタ１−２の無線ＬＡＮカード１−４は、アクセスポイントサーチの信号を発信する。この信号を受け取ったアクセスポイントは自分のアクセスポイント情報（ＩＤ、電波状態、アドレス、チャネル、暗号化状態など）を、サーチ信号を発信した相手（すなわちプリンタ１−２）に返信する。アクセスポイントから応答された情報を、無線ＬＡＮカード１−４を介してプリンタ１−２が受信すると、プリンタ１−２はその受信した情報をＰＣ１−１へ返答する。この時プリンタ１−２は、見つかった全てのアクセスポイントの情報をＰＣ１−１へ返信する。ここではプリンタ１−２の無線電波の届く範囲内で稼動しているアクセスポイント情報を全て取得しており、必ずしも自分が使っているアクセスポイントの情報のみを取得できるとは限っていない。その為、後述する方法により使用するアクセスポイントを指定する必要がある。
【０１０８】
ステップＳ１１０２では、ＰＣ１−１は、ＰＣ１−１が接続しているアクセスポイント１−３の情報をＰＣ１−１の無線ＬＡＮカードドライバと通信することにより取得する。
【０１０９】
ステップＳ１１０３では、ステップＳ１１０１とステップＳ１１０２で各々得られたアクセスポイント情報を比較する。具体的には、プリンタ１−２からのアクセスポイント情報に、ＰＣ１−１が現在接続しているアクセスポイント１−３の情報と一致するアクセスポイントがあるかどうかをチェックする。ＰＣ１−１が現在接続しているアクセスポイント１−３と一致するアクセスポイントが見つかった場合には、当該アクセスポイントを接続対象として決定しステップＳ１１０４へ進む。
【０１１０】
ステップＳ１１０４では、ステップＳ１１０３で見つけたＰＣ１−１と接続しているアクセスポイントが暗号化モードで動作しているかどうかをチェックする。暗号化モードで動作していない場合には、ユーザの操作による暗号キーの入力が必要無い為、ステップＳ１１０５、Ｓ１１０６を省略してステップＳ１１０７へ進む。
【０１１１】
ステップＳ１１０３でアクセスポイントが見つけられなかった場合には、或いはステップＳ１１０４でアクセスポイントが暗号化モードで動作していると判断した場合は、ステップＳ１１０５へ進む。
【０１１２】
ステップＳ１１０５では、ステップＳ１１０１でプリンタ１−２から通知されたアクセスポイントをアクセスポイント一覧画面に表示し、ユーザにアクセスポイントを選択させ、また、選択されたアクセスポイントによっては暗号キーを入力させる。なお、ＰＣ１−１が接続しているアクセスポイントを発見したが（ステップＳ１１０３）、発見したアクセスポイントが暗号化モードで動作していると判断した場合には（ステップＳ１１０４）、ＰＣ１−１が接続しているアクセスポイントをユーザに優先的に選択させるために、該当アクセスポイントを強調表示する等、ユーザの利便性について制御を加えても良い。また、ユーザがアクセスポイントの設定を手動で任意に入力する事も可能である。
【０１１３】
ステップＳ１１０６では、アクセスポイントが動作している暗号化モードに応じて暗号キーの入力などを行う。なお、暗号化モードに応じた処理の詳細については、＜暗号キー入力処理＞で説明する。
【０１１４】
また、ステップＳ１１０５でユーザにより選択されたアクセスポイントが暗号化モードで動作していない場合には、ステップＳ１１０６は省略される。
【０１１５】
ステップＳ１１０７では、プリンタ１−２がアクセスポイント１−３と通信可能となるよう、プリンタ１−２のネットワーク設定を変更する。この時点では使用したいアクセスポイントが決定されているため該当アクセスポイントの情報を基にして情報設定コマンドＣＭＤ１２３（図１２）を、ＵＳＢケーブル１−５を介してＰＣ１−１からプリンタ１−２に送ることにより行う。情報設定コマンドＣＭＤ１２３ではＳＳＩＤや、プリンタが使用するＩＰアドレス、ステップＳ１１０６で入力した暗号化キーなど、アクセスポイントを利用するために必要な情報を設定することで特定のアクセスポイントにプリンタを接続することができる。なお、ステップＳ１１０７については、＜プリンタのネットワーク設定および接続＞で、プリンタのフィルタリング機能が有効である場合の動作と共に詳細に説明する。
【０１１６】
ステップＳ１１０８では、ＰＣ１−１がプリンタ１−２を利用できるか否かを確認するために、ＰＣ１−１の無線ＬＡＮカード１−４を使いプリンタのサーチを行う。これは図１３に示すネットワーク・インストール用コマンドとして用意されている２つのコマンドのうちの何れかを用いて行われる。図１３に示すコマンドは、２つともプリンタのサーチのコマンドで、一方は相手を指定せずにブロードキャストで送信するプリンタサーチコマンド（ブロードキャスト）ＣＭＤ１３１、他方は特定の相手を指定して送信するプリンタサーチコマンド（アドレス指定）ＣＭＤ１３２である。
【０１１７】
なお、本説明では、ブロードキャストのサーチコマンドＣＭＤ１３１を送信することでプリンタのサーチを行う。本コマンドは、ＰＣ１−１の無線ＬＡＮカード１−４から無線ＬＡＮ上に発信され、このコマンドを無線ＬＡＮから受け取ったプリンタは、プリンタの情報（ＩＤ、名称、アドレス、モデル名など）をＰＣ１−１へ返信する。コマンドＣＭＤ１３１はブロードキャストで送信されるため、このコマンドを理解できるプリンタは全てこのコマンドに返信する可能性がある。ＰＣ１−１は、プリンタから送り返された情報から自分が今インストールしようとしている機種を指定する必要がある。
【０１１８】
使用するプリンタをＰＣ１−１が自動で指定する場合は、ステップＳ１１１０ヘ、手動で指定する場合はステップＳ１１１２へ進む（ステップＳ１１０９）。
【０１１９】
ステップＳ１１１０では、ＰＣ１−１は無線ＬＡＮ経由で見つけたプリンタの中からＵＳＢケーブル１−５経由で接続されているプリンタを特定する為に、ＵＳＢケーブル１−５経由でプリンタ情報を取得する。これは図１２で示した情報取得コマンドＣＭＤ１２２をＵＳＢケーブル１−５経由でプリンタに送信し、その応答としてプリンタから得られたプリンタ情報を取得することにより行われる。
【０１２０】
ステップＳ１１１１では、ステップＳ１１０８とＳ１１１０とで取得したプリンタの情報を比較することにより、無線ＬＡＮ経由で見つけたプリンタのうちＵＳＢケーブル１−５経由でＰＣ１−１と接続されているプリンタと一致するプリンタを特定し、ステップＳ１１１３へ進む。
【０１２１】
ステップＳ１１１２では、ステップＳ１１０８でサーチしたプリンタをプリンタ一覧画面９−１１に表示し、ユーザに利用したいプリンタを指定させる。
【０１２２】
ステップＳ１１１３では、ポート名を決定する。自動で決定する場合はネットワーク・インストーラが作成した文字列を利用してステップＳ１１１５へ、手動で決定する場合はステップＳ１１１４へ進む。
【０１２３】
ステップＳ１１１４では、ポート名入力画面９−１６を表示し、ユーザ入力によりポート名を決定する。
【０１２４】
ステップＳ１１１５では、ＰＣ１−１のネットワーク印刷設定を行い、ＰＣ１−１とプリンタ１−２との間で無線ＬＡＮを利用した印刷が可能な状態にする。ここではＰＣ１−１に対して、プリンタ１−２のアドレス、名称、印刷ポートなど印刷に必要となる設定を行う。アイコンの作成方法に関しては後述する。
【０１２５】
ステップＳ１１１６では、ネットワーク・インストール完了画面９−２０を表示し、ネットワーク・インストールを完了する。ここで、完了したネットワーク設定情報を表示し、ユーザに通知する事もできる。
【０１２６】
なお、図１２では、ＵＳＢケーブルを介してプリンタ１−２へ送られるインストールのためのコマンドとして３つのコマンドＣＭＤ１２１〜１２３を示したが、この他にも印刷データを送るコマンド、各種プリンタの設定を行うコマンドなどがあるが、本説明に直接関係するインストールコマンドだけをあげている。図１３も、無線ネットワークコマンドの内インストールに使用される２つのコマンドＣＭＤ１３１、１３２を示したが、この他にも印刷データを送るコマンド、各種プリンタの設定を行うコマンドなどがあるが、本説明に直接関係するインストールコマンドだけをあげている。これらコマンドはネットワーク上で一般的なＴＣＰ／ＩＰ、ＵＤＰなどのプロトコルを介して転送、返信が行われる。
【０１２７】
図１４は、無線ネットワーク・インストールで用いられるコンピュータのネットワークアダプタインタフェースコマンドを示していて、本実施例では２つのコマンドＣＭＤ１４１、１４２を使用している。この他にも各種設定値情報読み出しコマンド、各種設定コマンドなどがあるが、本説明に直接関係するコマンドだけをあげている。１つはコンピュータに装着されているネットワークアダプタが無線ＬＡＮのネットワークアダプタであるかどうかを問い合わせるための無線インタフェース問合せコマンドＣＭＤ１４１である。そして、装着されているアダプタが無線ＬＡＮアダプタであった場合、そのアダプタドライバに対してもう１つのコマンドである接続ＳＳＩＤ取得コマンドＣＭＤ１４２を発行して、そのアダプタが現在接続しているアクセスポイントのＳＳＩＤを取得する。この一連の動作は、図１１に示すステップＳ１１０３で説明を行った。
【０１２８】
また、本ＯＳでは、プリンタに対して個々のポートインスタンスを表わすプリンタのアイコンを作成する。一台のプリンタに対して複数のインタフェースを経由した複数のポートインスタンスが作成された場合、それぞれが異なる出力ポートを表わすものの、同一プリンタを表わす複数個のプリンタ・アイコンが表示されてしまう。
【０１２９】
本実施例において無線ＬＡＮのインストールを行う過程でＵＳＢケーブルを介してプリンタとＰＣを接続することによりＵＳＢのポートインスタンスが作成されるが、これは無線ＬＡＮのセットアップを行う為に作成されたポートであり、ユーザはＵＳＢのポートインスタンスの作成を望んでいない場合もある。また、無線ＬＡＮのセットアップの結果としてＵＳＢも含めた２つのポートインスタンスを表わす２つのプリンタ・アイコンが表示されると、無線ＬＡＮのセットアップのみを望んでいたユーザは混乱する可能性がある。
【０１３０】
そこで、無線ＬＡＮセットアップにおけるインストール完了時に作成されるポートインスタンス、ならびにプリンタ・アイコンをユーザに確認する。つまり、ネットワーク・インストール完了画面９−２０には、無線ＬＡＮのプリンタ・アイコンのみ、すなわち本プリンタの出力ポートインスタンスとして無線ＬＡＮのポートインスタンスのみを作成するか、または無線ＬＡＮとＵＳＢ両方のアイコン、すなわち無線ＬＡＮポートとローカルポートであるＵＳＢポートインスタンスの２つを作成するかをユーザに選択させるためのラジオボタン９−２１、９−２２を表示してユーザに選択させることにより、インストール作業の結果としてプリンタの出力先が無線ＬＡＮ経由のみ、または無線ＬＡＮとＵＳＢの双方とするかを決定する。
【０１３１】
ユーザが無線ＬＡＮ経由のポートインスタンスのみの作成を選択した場合、セットアップの過程で作成されたＵＳＢのポートインスタンスを表わすプリンタ・アイコンの代わりに無線ＬＡＮポートインスタンスとそれを表わすプリンタ・アイコン一つのみを作成・表示する（図１５）。これは、無線ポートインスタンスのインストール完了時のプリンタ・アイコン作成において、ＵＳＢポートインスタンスを表わす該当プリンタ・アイコンを削除したうえで、作成された無線ＬＡＮポートインスタンスに該当するプリンタ・アイコンを新規に作成する方法、ＵＳＢポートインスタンスを表わすプリンタ・アイコンの設定を変更し、無線ＬＡＮのポートインスタンスを割り当てる等、いくつかの方法によって実現される。
【０１３２】
いずれの場合も前記＜プリンタドライバのインストール＞にて説明したように、ＯＳが備えるレジストリの無線ＬＡＮポートに関するエントリに、該当するプリンタ・アイコンの情報が記述され、ＵＳＢポートに関するエントリのアイコン情報は消滅、または未使用の旨情報が記述される。またインストール手順によってはＵＳＢポートに関するエントリ、ＵＳＢポートインスタンスそのものが削除される場合もある。
【０１３３】
ユーザが無線ＬＡＮ経由、ＵＳＢ経由両方のポートインスタンスの作成を選択した場合には、セットアップの過程で既に作成されたＵＳＢのポートインスタンスを表わすプリンタ・アイコンを削除、変更せずに、無線ＬＡＮポートインスタンスに該当するプリンタ・アイコンを新規に作成する（図１６）。この場合も前記＜プリンタドライバのインストール＞にて説明したように、ＯＳが備えるレジストリの無線ＬＡＮポートに関するエントリに、新規に作成されたプリンタ・アイコンの情報が記述される。
【０１３４】
以上の方法で、ネットワーク・インストール完了画面におけるユーザの選択に従い、無線ＬＡＮポートのセットアップのみを選択した場合は無線ＬＡＮポートインスタンスを表わすプリンタ・アイコンのみが作成され、無線ＬＡＮポートと共にＵＳＢポートのセットアップを選択した場合は無線ＬＡＮポート、ＵＳＢポート両インスタンスの２つのプリンタ・アイコンが作成される。
【０１３５】
なお、本実施例ではネットワーク・インストール完了画面９−２０において、インストール完了時に作成されるプリンタ・アイコンをユーザに選択させ、ユーザの選択に応じたアイコンの作成・削除を行うが、これは異なるタイミングで行なわれてもかまわない。例えば、プリンタドライバ・インストール完了画面表示とネットワーク・インストール完了画面表示に移行する間で行えるように構成してもよい。この場合、ＵＳＢポートを表すアイコンを削除する場合には、ネットアーク・インストール完了を待つことなく、ＵＳＢポートがインストール作業において不必要となった時点で削除することができる。
【０１３６】
また、本実施例ではＰＣ自身が現在接続しているアクセスポイントと一致したアクセスポイントが存在して、アクセスポイント特定情報以外の情報を要することなく接続が可能な場合には、ＵＳＢ経由でそのアクセスポイントへの接続設定を自動的に行っていたが、その前にユーザへの確認メッセージを表示することも可能である。また自動接続を行う前に、検出したアクセスポイント一覧画面９−４を表示して、一覧画面上で一致したアクセスポイントを選択済状態とした上でユーザに確認させる、といったこともできる。
【０１３７】
さらに、本実施例ではＰＣ自身が現在接続しているアクセスポイントと一致したアクセスポイントが存在しない場合には、画面９−４を表示してプリンタが検出したアクセスポイントの一覧を提示し、ユーザにアクセスポイントを選択させる必要があったが、一致するアクセスポイントがない状況ではインストールを行っているコンピュータとプリンタ間の無線ＬＡＮ経由通信が正常に行なわれる可能性が低いと考えられる為、無線ＬＡＮのインストールを中止して有線インタフェース経由の通信を行う設定をするよにしてしてもよい。
【０１３８】
＜暗号キー入力処理＞
図１７に、図１１のステップＳ１１０６で説明した処理を詳細に説明する。
【０１３９】
ステップＳ１７０１では、ステップＳ１１０５で選択されたアクセスポイントが暗号化モードで動作しているかどうかを確認する。暗号化モードで動作していなければ、ステップＳ１１０６は省略される。
【０１４０】
ステップＳ１７０２では、動作している暗号化モードがＷＥＰかどうかを確認する。ＷＥＰの場合は、設定されている書式に従い、暗号キーを入力し（ステップＳ１７０３）、ステップＳ１１０６を完了する。
【０１４１】
ステップＳ１７０４では、アクセスポイントに設定されている暗号化モードに従い（暗号化の種類に応じて）、暗号キーと他の必要な情報を入力する。
【０１４２】
例えば、ＷＰＡ（Ｗｉ−Ｆｉ  Ｐｒｏｔｅｃｔｅｄ  Ａｃｃｅｓｓ）は、従来のＳＳＩＤとＷＥＰに加えて、ユーザ認証機能を備えた点や、暗号鍵を一定時間毎に自動的に更新する「ＴＫＩＰ」（Ｔｅｍｐｏｒａｌ  Ｋｅｙ  Ｉｎｔｅｇｒｉｔｙ  Ｐｒｏｔｏｃｏｌ）と呼ばれる暗号化プロトコルを採用するなどの改善が加えられている。
【０１４３】
従って、暗号化モードがＷＰＡの場合は、パスフレーズや事前共有キーなどを入力する必要がある。
【０１４４】
＜プリンタのネットワーク設定および接続＞
さて上記実施例において、セキュリティ向上の観点からプリンタ１−２のフィルタリング機能が稼動中であった場合について説明する。ここではプリンタ１−２が備えているフィルタリング機能として、ＭＡＣアドレスフィルタリングを使用し、プリンタ１−２はＰＣ１−１とのみ通信可能な状態に設定されているものとする。ここでのＭＡＣアドレスフィルタリングは一般的なものであり、プリンタ１−２が所有している登録リストにはＰＣ１−１のＭＡＣアドレスのみが登録されており、かつ、登録されているＭＡＣアドレスから送信されてくる通信パケット（ＴＣＰ／ＩＰ、ＵＤＰ）のみをプリンタ１−２は受信する設定となっているものとする。
【０１４５】
図１８に、ステップＳ１１０７の詳細を示す。
【０１４６】
ステップＳ１８０１では、アクセスポイント１−３と通信可能となるように、ＰＣ１−１はプリンタ１−２へ各種設定値をＵＳＢケーブル１−５経由で送信する。
【０１４７】
ステップＳ１８０２では、アクセスポイント１−３との接続に認証が必要か否かを判断し、認証が必要な場合はステップＳ１８０３以降の認証処理へ、必要ない場合はステップ１８０７へ進む。
【０１４８】
ステップＳ１８０３では、アクセスポイント１−３に接続を許可してもらうために、プリンタ１−２からアクセスポイント１−３に対して接続の開始を要求する無線認証パケットＰＫＴ０１（後述）を送信する。ここでパケットの送受信が複数回になることや接続拒否の場合には応答しないこと等が有り得るが、本説明では送受信回数は１回として説明する。
【０１４９】
ステップＳ１８０４では、アクセスポイント１−３（必要に応じては認証サーバ）は、プリンタ１−２との接続を許可するかどうかを、プリンタ１−２から送られた情報に含まれる暗号キー、パスワード、機器識別情報等により判断し、その結果を応答パケットとして送信する。
【０１５０】
またここでは、プリンタ１−２は、アクセスポイント１−３との接続を許可されるものとする。
【０１５１】
ステップＳ１８０５では、プリンタ１−２は、アクセスポイント１−３から接続許可の応答パケットを受信する。
【０１５２】
このとき、プリンタ１−２のＭＡＣフィルタリング機能が有効で、ＰＣ１−１としか通信できない状態であったとすると、アクセスポイント１−３からの上記応答パケットのデータをプリンタ１−２は受信することができない。即ち、アクセスポイント１−３との接続許可を得る通信そのものができず、ネットワーク・インストールは失敗となってしまう。そこで本実施例では、後述するフィルタリング機能の通過方法を用いることで、例えプリンタ１−２がＰＣ１−１からのパケットしか受信できないように設定されていても、アクセスポイント１−３からの上記応答パケットを受信できるようにする。
【０１５３】
ステップＳ１８０６では、後述するフィルタリング機能の通過方法を用いることで、アクセスポイント１−３からの応答パケットを受信できたので、その内容から接続認証に成功したかどうかを判断する。
【０１５４】
認証に成功すればインストールを継続しステップＳ１８０７へ進む。認証に失敗した場合、インストールは失敗となる（ステップＳ１８１４へ）。
【０１５５】
ステップＳ１８０７では、ＩＰアドレスを手動で決定する設定か、自動設定かを判断する。ＩＰアドレスを手動で決定する場合は、ステップＳ１８０８においてユーザの入力を経てＩＰアドレスを取得し、ステップＳ１８１３へ進む。ＩＰアドレスを自動で決定する場合は、ステップＳ１８０９において、プリンタ１−２のＩＰアドレスを取得するために、各種パケットを発行する。ここで、パケットの送受信が複数回になることが有り得るが、本説明では送受信回数は１回として説明する。
【０１５６】
具体的には、例えばアクセスポイント１−３がＤＨＣＰサーバ機能を備えており、プリンタ１−２のＩＰアドレスをＤＨＣＰサーバによって割り当ててもらうのであれば、プリンタ１−２はＩＰアドレス分配パケットＰＫＴ１１（後述）をアクセスポイントに送信する。
【０１５７】
或いは、アクセスポイント１−３がＤＨＣＰサーバ機能を備えておらず、プリンタ１−２のＩＰアドレスを自動で決定しなければならない場合には、ネットワーク上の他の機器のＩＰアドレスとの重複を防ぐため、ＩＰアドレス解決パケットＰＫＴ１２（後述）をネットワークに対して発行する。
【０１５８】
ステップＳ１８１０では、プリンタ１−２がＩＰアドレス分配パケットＰＫＴ１１を送信した場合は、アクセスポイント１−３に備えられているＤＨＣＰサーバ機能が適切なＩＰアドレスを決定し、プリンタ１−２に通知するパケットを送信する。プリンタ１−２がＩＰアドレス解決パケットＰＫＴ１２を発行した場合は、該パケットを受信したネットワーク上のクライアント機器は各々の情報をプリンタ１−２に応答する。
【０１５９】
ステップＳ１８１１では、アクセスポイント１−３からのＩＰアドレス通知のための応答パケットまたはネットワーク上のクライアント機器からの応答パケットの受信処理を行う。受信処理の詳細はステップＳ１８０５と同様であるため省略する。ここでも、後述するフィルタリング機能の通過方法を用いることで応答パケットを受信できる。
【０１６０】
ステップＳ１８１２では、ステップＳ１８１１で受信した応答パケットにより、ＩＰアドレスの取得に成功したかどうかを判断する。成功すればインストールを継続しステップＳ１８１３へ進む。ＩＰアドレスの取得に失敗した場合、インストールは失敗となる（ステップＳ１８１４へ）。
【０１６１】
ステップＳ１８１３では、実際にプリンタ１−２とアクセスポイント１−３とが接続可能であることを確認する。接続が可能であれば、ステップＳ１１０８へと進みインストールを継続する。接続が不可能であれば、インストール失敗となる（ステップＳ１８１４へ）。
【０１６２】
なお、プリンタ１−２がアクセスポイント１−３との接続できずにインストール失敗となった場合（ステップＳ１８１４）、失敗の原因に応じて適切メッセージを表示したり或いは失敗の原因に応じて適切なステップへと進んでも良い。
【０１６３】
また、プリンタ１−２のフィルタリング機能が有効である場合の動作をわかりやすく説明するため、ステップＳ１８０６、Ｓ１８１２、Ｓ１８１３の３箇所でアクセスポイントとプリンタとの接続の確認を行っているが、これらステップは、例えばＳ１８１３のみの１ステップにする等、必要に応じて変更することも可能である。
【０１６４】
＜ネットワーク設定アプリケーション＞
本実施形態においてプリンタの無線ＬＡＮインストールを行う過程で、無線ネットワーク設定ユーティリティアプリケーションがＰＣにインストールされる。
【０１６５】
このアプリケーションはインストール後にユーザにより起動されるコンピュータプログラムであり、本アプリケーションにより、既にインストールされた該当無線ＬＡＮプリンタについて無線ＬＡＮ並びにネットワークの設定変更を行うことが可能である。設定変更はインストール時にセットアップされたプリンタのポートインスタンスを介した通信により、アプリケーションで指定された設定内容がＰＣからプリンタに通信されることにより行なわれる。図１７はネットワーク設定のためにプリンタへ送られるコマンドを示しており、本実施形態では６つのコマンドが用意されている。
【０１６６】
本アプリケーション起動時のウインドウを図１９に示す。図で示されるように、初期ウインドウではＰＣにインストール済みのプリンタが接続されているポートの一覧表示が行なわれる。ユーザはここで設定を行うプリンタを選択後、「詳細設定」ボタン１９−２を押下することで選択されたプリンタの設定画面を呼び出すことが可能となる。
【０１６７】
図２０から図２２に詳細設定ウインドウを示す。
【０１６８】
詳細設定画面は大項目毎にタブで別れており、ユーザはタブのタイトル部分をクリックすることによりタブ間を移動し、項目毎の設定変更を行うことが可能である。
【０１６９】
各タブにはこれら項目とその詳細設定内容が表示されるが、この内容はプリンタの設定可能項目、ネットワーク構成に応じたものが表示される。
【０１７０】
図１９の「詳細設定」ボタン１９−２が押下されると、アプリケーションは所定の通信手順に従い選択されたポートを経由して該当プリンタのネットワークコントロール部にコマンドを発行することにより、各種情報の取得、設定を行う。
【０１７１】
詳細設定表示時、アプリケーションはまず設定可能値取得コマンドを発行し、通信相手であるプリンタのネットワークコントロール部のネットワーク構成、設定可能項目、そして設定可能値に関する情報を取得する。これにより、表示するタブ（大項目）、並びに各タブにおいて設定可能とする項目を判断する。
【０１７２】
次に、アプリケーションはプリンタに対して現在値取得コマンドを発行し、各設定項目に関して現在の設定値が何であるかを問い合わせる。コマンドを受信したネットワークコントローラは現在設定値を応答する。
【０１７３】
本実施形態のプリンタの場合は以下の設定項目が詳細設定画面に表示される。
【０１７４】
−無線ＬＡＮ関連項目
無線ＬＡＮの使用状態選択（使用・未使用）
無線ＬＡＮの動作モード（インフラストラクチャ／アドホック）
ＩＰアドレスの取得方法（自動化／マニュアル）ＩＰアドレス
サブネットマスク
デフォルト・ゲートウエイ
−管理パスワード
管理パスワードの使用状態選択（使用・未使用）
管理パスワード入力
−アクセス制限
アクセス制限の使用状態選択（使用・未使用）
アクセス制限を行うＭＡＣアドレス（または、ＩＰアドレス：非図示）
【０１７５】
上記無線ＬＡＮ関連項目、管理パスワード、アクセス制限が大項目となり、タブ見出しとなってそれぞれ図２０、図２１および図２２に示すウインドウ２０−１、２１−１、２２−１として表示される。
【０１７６】
各設定項目に応じて、設定の選択肢を選ぶためのラジオボタン、または値を入力することが出来るエディットボックスが用意される。プリンタに設定された現在値は各項目の選択肢、エディットボックスに反映されて表示される。
【０１７７】
ユーザは設定を変更したい項目について、変更値の選択、または入力を行った後に「ＯＫ」ボタンを押下することで設定変更がプリンタに反映される。
【０１７８】
「ＯＫ」が押下されるとアプリケーションはプリンタから取得した現在値と、ユーザの設定変更に伴う設定内容と比較を行う。そしてその差分、すなわち設定変更が行なわれた設定内容をプリンタに対する設定値書き込みコマンドの発行により通信し、プリンタのネットワークコントロール部への設定内容変更を完了する。
【０１７９】
次に、本発明の特徴である本アプリケーションの初期ウインドウにおけるプリンタの表示方法について説明する。
【０１８０】
初期ウインドウでは、ＰＣに作成されているネットワークプリンタポート及び、ＵＳＢプリンタポートプリンタポートの中から本ユーティリティに対応したプリンタのポートを表示する。本ユーティリティに対応しているネットワークプリンタポートかどうかは、ＯＳが備えるレジストリのネットワークポートに関するエントリに記載されている情報により識別する。また、ＵＳＢ接続されているプリンタに関しては、実際に通信することで取得した情報により識別（後述）する。
【０１８１】
続いて、初期ウインドウ「状態」欄の表示方法について説明する。「状態」欄には、プリンタポートとプリンタとが通信可能かどうかの状態が表示されるが、単なる通信状態ではなく以下に示す総合的な状態が表示されるため、ユーザは本初期画面を見るだけでプリンタポートとプリンタとの関係を把握することが出来る。
【０１８２】
−通信不可：該プリンタポートと該プリンタとが、通信できない状態。
−通信可能：該プリンタポートと該プリンタとが、通信可能な状態
−利用可能：該プリンタポートと該プリンタとが、通信可能な状態、且つ、該プリンタポートが本来持っているサービスが利用可能、即ち、印刷が可能な状態。
−使用中：該プリンタポートと該プリンタとが、通信可能な状態であるが、その時点で該プリンタが他のＰＣ等により使用されている状態。
【０１８３】
上記の分類によって、機器の通信設定を変更する必要がある場合（通信不可）、サービス自体は利用できないが通信自体は可能なので機器の通信設定を変更する必要が無い場合（通信可能）、そのまま利用できる場合（利用可能）、機器の通信設定は必要無いが他のＰＣからの使用が完了するまで待機する必要がある場合（使用中）、を識別することがでる。これにより、機器の通信環境の再設定が必要な場合と不必要な場合とを識別可能となり、既存の正常な通信環境を無駄に壊してしまう危険性を避けることも出来る。
【０１８４】
なお、上記の分類を可能とするため、本発明では、ＰＣとプリンタとの間でやり取りされるプリンタ情報を取得するコマンド（図２３）、および、ＰＣ内部でプリンタドライバとやり取りされるコマンド（図２４）を備えている。
【０１８５】
プリンタポートが通信可能であるかどうかの判定は、該当プリンタポートを使用した実際の通信により行なわれる。プリンタの機器情報が記述されているＤｅｖｉｃｅＩＤ等の各種情報をＰＣから問い合わせるＤｅｖｉｃｅＩＤ取得コマンドＣＭＤ２３１を発行し、以下の条件に合致したプリンタが接続されているポートインスタンスが通信可能であると判断できる。
【０１８６】
−同コマンドに対して応答があること
−取得されるＤｅｖｉｃｅＩＤ情報を解析した結果、本アプリケーションで使用されるネットワーク設定コマンドによる通信が可能であることを表すＩＤが付加されていること
【０１８７】
アプリケーションはＰＣにインストールされたプリンタ用のポート全てに対して上記判定を行い、ＰＣに複数の該当プリンタが接続されている場合はそれらが検出される。
【０１８８】
本実施形態に係るプリンタは無線ＬＡＮのセットアップを行うためＵＳＢを介してホストコンピュータを接続することによりＵＳＢのポートが作成される。同時に、当然ながらセットアップの結果無線ＬＡＮのポートも作成される。本プリンタがＰＣとＵＳＢを接続されている場合、ＵＳＢプリンタポートは上記ＤｅｖｉｃｅＩＤ取得コマンドＣＭＤ２３１への応答があるのでリストアップ対象となる。また、無線ＬＡＮプリンタポートは、前述のレジストリに記載されているのでリストアップ対象となる。
【０１８９】
なお、プリンタポートとプリンタとが通信可能である場合には、図２３に示したデバイス構成情報取得コマンドＣＭＤ２３２を発行することで、プリンタのＭＡＣアドレス等の情報を得ることができる。この結果、各ポートと通信しているプリンタが同一のプリンタであるか否かが識別可能であり、初期ウインドウにおいてプリンタポートの表示順序をソートする際に活用することも出来る。
【０１９０】
さらにＰＣ内部では、図２４に示したプリンタドライバＩＤ情報コマンドＣＭＤ２４１を発行し、プリンタドライバと接続されているプリンタとの整合性が取れているかどうかを判断することや、プリンタ・アイコン情報取得コマンドＣＭＤ２４２を発行し、該プリンタポートにポートインスタンスを示すプリンタ・アイコンが関連付けられているかどうかの情報を表示することが可能である。プリンタポートが作成されており、且つ、プリンタとの通信自体が可能であっても、該プリンタポートにポートインスタンスが関連付けられていない場合は、プリンタポートが本来提供すべきサービス、即ち印刷サービスを利用することが出来ない。その為、本情報を示すことで、印刷サービスを利用する為に「機器の通信設定を再設定する必要がある」のか「該当プリンタポートにプリンタ・アイコンを割り当てるだけで良い」のかを識別することが可能となるため、ユーザにとって非常に有益である。
【０１９１】
また、Ｗｉｎｄｏｗｓ（登録商標）に代表されるＯＳによっては、ユーザの利便性を考慮し複数のプリンタの中からデフォルトで使用するプリンタを設定できるものもある。デフォルトプリンタ情報取得コマンドＣＭＤ２４３を発行することによって、本アプリケーションに対応しているプリンタポートでデフォルトプリンタに設定されているものがあれば、あわせて表示することが出来る。
【０１９２】
加えて「状態」欄の結果に応じた内容の警告やヘルプを自動で表示することも可能であり、ユーザに対して適切な解決策を提示することも出来る。
【０１９３】
上記の初期ウインドウ「状態」欄の表示方法について、図２５に示したネットワーク設定アプリケーションの初期画面における「状態」表示処理のフローチャート図を用いて詳細に説明する。
【０１９４】
ユーティリティが起動されると、ステップＳ２５０１でＰＣにインストールされている本アプリケーションに対応したプリンタポート（以下、対象プリンタポート）をリストアップする。対象プリンタポートの選出方法は、前述のとおりである。
【０１９５】
ステップＳ２５０２で対象プリンタポートの有無を確認し、対象プリンタポートがインストールされていなければ、ステップＳ２５１１（後述）へ進み、対象プリンタポートがインストールされていれば、ステップＳ２５０３乃至Ｓ２５１０の状態判定処理を行う。
【０１９６】
ステップＳ２５０３では、プリンタポートとプリンタとが通信可能か否かを判定する。具体的には前述のＤｅｖｉｃｅＩＤ取得コマンドＣＭＤ２３１を発行し、プリンタからの応答の有無を調べる。指定時間内に応答が無ければ「状態＝通信不能」（Ｓ２５０９：機器の通信設定の見直しが必要）と判断し、応答があればステップＳ２５０４へ進む。
【０１９７】
ステップＳ２５０４では、プリンタが使用中であるか否かを判別する。具体的にはステップＳ２５０３で発行したＤｅｖｉｃｅＩＤ取得コマンドＣＭＤ２３１の応答を解析し、プリンタからの応答はあるが通信が失敗している等を含め、第３者が該デバイスを使用中であることを判定する。プリンタが使用中であれば「状態＝使用中」（Ｓ２５０８：通信可能となるまで、暫く待つ必要がある）と判断し、使用中で無ければ通信可能であると判断し、ステップＳ２５０５へ進む。
【０１９８】
ステップＳ２５０５では、プリンタドライバの関連付けを判定する。具体的には、プリンタ・アイコン情報取得コマンドＣＭＤ２４２を発行し、該プリンタポートがプリンタドライバと関連付けられているかどうかの情報を取得する。仮にプリンタポートとプリンタとが通信可能であっても、プリンタポートがプリンタドライバに関連付けられていないとユーザは印刷サービスを利用することができないため、本ステップにおいて確認している。
【０１９９】
該プリンタポートとプリンタドライバとが正常に関連付けられている場合は「状態＝利用可能」（Ｓ２５０６：印刷サービスを含め正常に利用可能）と判断し、関連付けられていない場合は「状態＝通信可能」（Ｓ２５０７：印刷サービスは利用できないが通信は可能。即ち設定値の変更等も可能）と判断する。
【０２００】
以上の手順で、該プリンタポートの状態を判定することは説明したので、全ての対象プリンタポートに対して、同様の手順を繰り返す（Ｓ２５１０）。
【０２０１】
最後に、ステップＳ２５１１で必要に応じて警告などを表示し、初期画面の表示シーケンスを完了する。
【０２０２】
警告の表示方法・内容の一例としては、「状態＝利用可能」でないプリンタポートが存在した場合や、対象ポートが未インストールの場合に、ユーザにトラブルシュートを提示したり、或いは特定の条件を満たした場合にのみ、専用の解決策を提示したりすることが挙げられる。また、警告表示機能自体を有効／無効にすることを、ユーザに選択させても良い。
【０２０３】
本実施例では無線ＬＡＮポートとローカルポートであるＵＳＢを具備したプリンタを取り上げたが、無線ＬＡＮと有線ＬＡＮのポートを備えたプリンタでも同様の制御を行うことで同様の効果を得ることが可能である。
【図面の簡単な説明】
【０２０４】
【図１】本発明に係わる一実施形態の構成を示す図である。
【図２】図１に示したＰＣとプリンタの構成を示す図である。
【図３】ＵＳＢを用いたプリンタドライバの一般的なインストール手順の画面を示した図である。
【図４】ＵＳＢを用いたプリンタドライバの一般的なインストール手順のフローチャート図である。
【図５】ＯＳにおける標準設定データベースの一例を示した図である。
【図６】ＯＳにおけるプリンタ一覧の画面の一例示した図である。
【図７】ＵＳＢを用いたプリンタドライバのインストール手順の画面を示した図である。
【図８】ＵＳＢを用いたプリンタドライバのインストールのフローチャート図である。
【図９】ＵＳＢを用いた無線ネットワークのインストール手順の画面を示した図である。
【図１０】ＵＳＢを用いた無線ネットワークの実施例における特徴的なインストール手順の画面を示した図である。
【図１１】ＵＳＢを用いた無線ネットワークの実施例におけるインストールのフローチャート図である。
【図１２】ＰＣとプリンタとの間をＵＳＢ経由でやり取りされるコマンド例を示す図である。
【図１３】ＰＣとアクセスポイントとの間をネットワーク経由でやり取りされるコマンド例を示す図である。
【図１４】ＰＣ内部でドライバインターフェースとやり取りされるコマンド例を示す図である。
【図１５】実施例においてユーザが無線ＬＡＮポートのセットアップのみを選択した場合のプリンタ一覧画面を示した図である。
【図１６】実施例においてユーザが無線ＬＡＮポートと共にＵＳＢポートのセットアップを選択した場合のプリンタ一覧画面を示した図である。
【図１７】実施例において暗号化キー入力処理のフローチャートを示した図である。
【図１８】実施例においてプリンタのネットワーク設定および接続の際の動作フローチャート図である。
【図１９】本実施例におけるネットワーク設定アプリケーションの初期画面を示した図である。
【図２０】ネットワーク設定アプリケーションにおける詳細設定画面中無線ＬＡＮ関連項目を示した図である。
【図２１】ネットワーク設定アプリケーションにおける詳細設定画面中アクセス制限関連項目を示した図である。
【図２２】ネットワーク設定アプリケーションにおける詳細設定画面中管理パスワード関連項目を示した図である。
【図２３】ＰＣとプリンタとの間の通信経路に非依存の、プリンタ情報を取得するコマンド例を示す図である。
【図２４】ＰＣ内部で、プリンタドライバとやり取りされるコマンド例を示す図である。
【図２５】ネットワーク設定アプリケーションの初期画面における「状態」表示処理のフローチャート図である。
【符号の説明】
【０２０５】
１−１  ノートＰＣ
１−２  プリンタ
１−３  アクセスポイント
１−４  無線ＬＡＮカード
１−５  ＵＳＢケーブル
【図２】
2006338358.tif 000003
【図３】
2006338358.tif 000004
【図４】
2006338358.tif 000005
【図５】
2006338358.tif 000006
【図６】
2006338358.tif 000007
【図７】
2006338358.tif 000008
【図８】
2006338358.tif 000009
【図１０】
2006338358.tif 000010
【図１１】
2006338358.tif 000011
【図１２】
2006338358.tif 000012
【図１３】
2006338358.tif 000013
【図１４】
2006338358.tif 000014
【図１５】
2006338358.tif 000015
【図１６】
2006338358.tif 000016
【図１７】
2006338358.tif 000017
【図１８】
2006338358.tif 000018
【図１９】
2006338358.tif 000019
【図２０】
2006338358.tif 000020
【図２１】
2006338358.tif 000021
【図２２】
2006338358.tif 000022
【図２３】
2006338358.tif 000023
【図２４】
2006338358.tif 000024
【図２５】
2006338358.tif 000025
【図１】
2006338358.tif 000026
【図９】
2006338358.tif 000027