以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
<システム構成>
図1は、本発明の一実施形態に係る情報処理システムの概略構成を示すブロック図である。
図中のノートPC1−1は、有線ローカルインタフェースとしてUSBケーブル1−5を使用し、無線インタフェースとしてPCMCIAカードタイプの無線LANカード1−4を装着することが可能に構成されている。プリンタ1−2もPC1−1と同様に有線ローカルインタフェースと無線インタフェースの両者を備える。有線ローカルインタフェースは、PC1−1とプリンタ1−2とをUSBケーブル1−5で接続することで実現される。無線インタフェースは、PCMCIAカードタイプの無線LANカード1−4を装着することで実現される。アクセスポイント1−3は、無線インタフェースのアクセスポイントで無線機器同士の仲介の役割を果たす機能を有し、PCMCIAカードタイプの無線LANカード1−4を装着することが可能に構成されている。無線LANモジュールを内蔵した各機器を使用する場合、PCMCIAカードタイプの無線LANカード1−4の装着は不要となる。
PC1−1とプリンタ1−2との間では、USBケーブル1−5を使って印刷データを送信することも可能であり、また無線LANインタフェースを用いてアクセスポイント1−3を経由してプリンタ1−2へ印刷データを送ることも可能になっている。本図では、1台のPC1−1のみが図示されているが、複数のPCが1つのアクセスポイントに接続可能であり、1つのプリンタを複数のPCで共有して印刷を行うこともできる。
無線LANには、アクセスポイントを経由して複数の無線LAN機器と接続可能なモードがあり、インフラストラクチャモードと呼ばれる。インフラストラクチャモードでは、アクセスポイントに設定されたID(SSID)と同じIDを無線LAN機器にも設定することで複数の無線LAN機器からアクセスポイントを経由してLANを構成することができる。無線LAN機器としてプリンタを使用する場合、プリンタがアクセスポイントに接続できるように設定する必要がある。
本実施形態では、PC1−1とアクセスポイント1−3との間の設定は既になされていて、インフラストラクチャモードでアクセスポイントと通信できる状態になっているものとし、プリンタ1−2に関しては、まだ無線LANの設定が行われておらず、初期状態としてインフラストラクチャモードでIDは設定されていないものとしている。
PC1−1では何らかのOS(オペレーティングシステム)が動作していて、そのOS環境で印刷を行うためには、印刷用ソフトウェア(プリンタドライバ)をPC1−1にインストールする必要がある。またさらに無線LANを使って印刷を行うような場合には、プリンタ1−2内の無線LANの設定を行い、プリンタ1−2がアクセスポイント1−3と接続できる状態にした上、PC1−1では無線LANでの印刷を可能とするソフトウェアをインストールする。そして、無線LANでの印刷を可能とするソフトウェアをプリンタに適した設定にしておく必要がある。
以降、本実施形態の内容を明確にするため、まずプリンタドライバのインストールについて説明し、その後に、本実施形態においてUSBを使ったプリンタドライバのインストール、USBを使った無線LANのインストールと、プリンタが設定済みの場合にUSBを使わない無線LANのインストールを説明する。
最後に、PC1−1とプリンタ1−2で、アクセスポイント1−3を経由してインフラストラクチャモードで無線通信をするための設定が一度完了した後、2台目以降の別のPCから印字を行う為にPCへの設定を行おうとしたが設定済みプリンタ1−2と通信できない場合、または第三者による設定変更が何れかの機器にされた場合、あるいは何れかの機器の電源が切れている等の何らかの要因によって通信ができない場合に通信トラブル箇所を診断してプリンタ及びPCの設定を行う手法について説明する。
<一般的なプリンタドライバのインストール>
PC1−1などのホストコンピュータにプリンタ1−2などのプリンタを接続して印刷を行えるようにするためには、ホストコンピュータのOS上で印刷アプリケーションからの印刷命令を理解し、印刷命令に基づく印刷制御コマンド並びに印刷データをプリンタに転送し、プリンタの制御を行うためのソフトウェアが必要となる。このプリンタの制御を行うソフトウェアが前述したプリンタドライバである。
プリンタドライバに代表されるように、ホストコンピュータに接続される全てのハードウェアは、デバイスドライバを介してアプリケーションからの制御命令を受け取る仕組みで制御される。デバイスドライバはオペレーティングシステム上で起動されている特定の上位アプリケーション専用のものではないため、デバイスがホストコンピュータに接続されている間は一種の常駐プログラムとして特定のメモリ領域を占有して常駐している。
Windows(登録商標)に代表される最近のOSは、デバイスをホストコンピュータに接続したときに自動的にそのデバイスに対応した適切なデバイスドライバを組み込むといったプラグ・アンド・プレイ機能を有している。デバイスを初めてホストコンピュータに接続した際のプラグ・アンド・プレイ処理の場合において、OSが標準に備えているデバイスドライバの中に最適なものが無かった場合、デバイス購入時にフレキシブルディスクやCD−ROMといったメディアで添付されるデバイスドライバをOSに組み込む必要がある。このデバイスドライバの組み込み作業をドライバのインストール作業と称する。
以下に、プラグ・アンド・プレイに対応したOSにおけるデバイスドライバのインストール処理を説明する。
プラグ・アンド・プレイ対応の有線インタフェースの代表的なものとしてUSBが挙げられる。ここではUSBを使ったプリンタドライバのインストールを例に挙げて説明を行う。ホストコンピュータ上に表示されるメッセージ画面を図2に、シーケンスフローを図3に示す。なお、当該シーケンスフローまたはメッセージはプラグ・アンド・プレイが正常に行われた場合のみとする。プラグ・アンド・プレイが失敗した場合のエラーシーケンスは別途存在することは言うまでもない。
まずユーザがプラグ・アンド・プレイ対応インタフェースであるUSBを使い、プリンタをホストコンピュータに接続する。ホストコンピュータ上で動作しているOSは、USBインタフェース経由でデバイスがホストコンピュータに接続されたことを検出する(図3のステップS300)。このときに、図2の2−1のような画面を表示する。ユーザは、インストールを行いたい場合には、ボタン2−2を押下する。一方、プリンタドライバのインストールをしたくない場合には、ボタン2−3を押下する。つぎに、OSは、USBで定められた所定の方法でUSB機器の基本情報であるデバイス・ディスクリプタをプリンタから読み出す(ステップS301)。
デバイス・ディスクリプタには、デバイスの種類を示すデバイス・クラス情報など、その機器に関する基本機能情報が含まれている。OSは、デバイス・ディスクリプタを読み出し解析することにより接続されたデバイスがプリンタ・クラスに属するデバイス、すなわちプリンタであるかを判断する(ステップS302)。接続されたデバイスがプリンタである場合には、ステップS303に進み、プリンタ以外のデバイスであれば、ステップS310に進む。ステップS310では、デバイスに対応するその他の処理を行う。
プリンタのデバイスドライバ構成は、一般的には大きく2レベルのドライバから構成される。1つは、プリンタが接続されるインタフェース毎に、そのインタフェース上で該当デバイスとのデータ通信を行うためのプロトコルを制御する下位レベルドライバとしてのポートドライバである。2つ目は、ポートドライバの上位層に位置し、実際の印刷アプリケーションデータを個々のプリンタに適した記録データやプリンタ言語に変換する上位プリンタドライバである。上位プリンタドライバは、プリンタの動作状態、すなわちステータス情報をプリンタから取得して、当該ステータス情報をプリンタ状態表示用アプリケーションに引き渡すといったことも行っている。
接続されたデバイスがプリンタであると認識すると、OSは、予め定められた方法を使い適切なポートドライバをインストールして使用可能な状態にする(ステップS303)。このとき、OSは図2の2−4のような画面を表示する。ユーザは、ポートドライバのインストールを中止したいときには、ボタン2−5を押下する。さらに、ポートドライバの制御により、インタフェース上に検出された特定のデバイスとホストコンピュータとの間で1対1のデータ通信を行うための論理コネクションであるポートインスタンスが用意される。USBプリンタの場合、USB印刷用のポートドライバがインストールされた後に、そのプリンタとホストコンピュータとの間の通信を行うための論理通信路としてポートインスタンスが作成される(ステップS304)。
ポートドライバがロードされ、初期化処理を経て動作可能状態になると、OSは、所定の方法で接続されたプリンタの詳細情報としてクラスディスクリプタを取得する(ステップS305)。USBプリンタの場合、これは、USBプリンタクラス規格にて定義されたデバイスIDの読み出しコマンド(GET_CAPABILITIES)をポートドライバ経由でプリンタデバイスへ発行することにより行われる。その応答としてプリンタにより返送されるデバイスIDには、プリンタの製造元情報やモデル名、サポートされるプリンタ言語情報などプリンタモデル固有の情報が含まれている。
OSは、接続されたUSBプリンタの詳細情報を得て、その詳細情報に基づき、最適な上位プリンタドライバを検索する(S306)。該当する上位プリンタドライバがOSの標準検索範囲内に存在する場合、標準検索範囲内で見つかった上位プリンタドライバを組み込む。該当する上位プリンタドライバがOSの標準検索範囲内に存在しない場合、ユーザに対してそのドライバの保存先などを問い合わせる旨のメッセージ等を表示する。このような場合、ユーザは、デバイス購入時に同梱されるフレキシブルディスクやCD−ROMといったメディア、またはインターネットを経由してメーカのファイルサーバからダウンロードされたデバイスドライバ等を指定することにより、該当上位ドライバがOSに組み込まれる(ステップS307)。上位ドライバの組み込み時に、所定の手順に従って上位プリンタドライバがホストコンピュータ上の所定の位置(ディレクトリ)にコピーされる。
次に、OSが標準で備えるデータベース上に現在インストールを行っているデバイスに関する項目(エントリ)が追加される(ステップS308)。このデータベースには、デバイス毎の制御用設定パラメータ、ドライバ・デバイス構成、デバイスインスタンスに関連付けられた下位ポートドライバに関する情報、ポートインスタンス情報、及びユーザによる設定情報、といった情報が保存される。Windows(登録商標)2000やWindows(登録商標)XPといったOSでは、この標準データベースを一般的にレジストリと称しており、本説明でも以下レジストリと呼ぶ。レジストリがユーザに認識できる形に表示された一例を図4に示す。
このエントリは、OSにより作成されたポートインスタンス経由で通信を行うデバイス、すなわち論理デバイス毎に作成される。すなわち、OSとデバイスとの間の論理接続毎にエントリが用意され、対応するポートインスタンス情報が保存されることにより関連付される。例えば複数の接続インタフェースを具備するプリンタをそれぞれのインタフェース経由でホストコンピュータに接続した場合、インタフェース毎にポートインスタンスが作成される。同一プリンタで使用される上位プリンタドライバは共通であるものの、エントリはインタフェース毎または論理接続毎にレジストリ上に作成される。
上記のように、プリンタドライバの起動準備が完了すると、インストールが完了した旨のメッセージを図2の2−6のように表示する(図2の画面2−6、ステップS309)。
GUIを備えた一般的なOSのプリンタ一覧画面では、あるプリンタに対するポートインスタンスはプリンタアイコンという形で視覚的に表示される。この一例を図5に示す。すなわち、あるプリンタに対して複数のインタフェースを経由した複数のポートインスタンスが作成された場合、各インスタンスに対してそれぞれプリンタアイコンが表示される。このプリンタアイコンとポートインスタンスとの関連付けに関する情報も、上記ポートインスタンス毎に作成されるエントリに記述されるため、各ポートインスタンスがどのプリンタアイコンによって視覚的に代表されているかといった情報も管理される。
以上、プラグ・アンド・プレイに対応したOSにおける一般的なデバイスドライバのインストール処理についてUSBプリンタを例に説明した。無論OSの種類により異なる方法でデバイスドライバのインストールが行われる場合もあるが、概ね説明した手順と同様なシーケンスでプラグ・アンド・プレイデバイスのインストールが行われる。
<本実施形態のプリンタドライバ・インストール>
図6は、本実施形態に係る、USBを用いたプリンタドライバ・インストール処理で表示される画面例を示す図である。この画面例は、図1のプリンタ1−2で印刷を行うためプリンタドライバをPC1−1にインストールする際に、PC1−1の画面上に表示されるものである。本実施形態に係る、USBを用いたプリンタドライバ・インストール処理では、ユーザがUSBインタフェース、あるいは無線ネットワーク・インタフェースのどちらを使用して印字するかの選択肢がある。ここでは<一般的なプリンタドライバのインストール>と同様にUSBインタフェースを使用する場合について述べ、無線ネットワーク・インタフェースを使用する場合については、<本実施形態の無線ネットワーク・インストール>で述べる。
まず始めの画面として、画面6−1が表示される。この画面6−1は、プリンタドライバ・インストール処理の開始画面になり、ユーザがインストール用のソフトウェアを起動することで、表示される。画面6−1上には、「実行」と「キャンセル」をそれぞれ選択する選択アイコン6−2,6−3があり、マウスなどで選択することができる。「実行」6−2を選択するとインストールが開始され、次の画面6−4が表示される。「キャンセル」6−3を選択した場合は、プリンタドライバのインストールは行われずに終了する。
画面6−4は、プリンタドライバをPC1−1へ登録中であることをユーザに示す画面である。通常、ファイルのコピーには時間がかかるため、終了までにかかる時間経過を示すプログレス・バーが表示され、終了すると自動的に画面6−6へ移行する。
画面6−6には、プリンタ1−2のセットアップ方法の選択肢があり、選択アイコン6−7、6−8、6−9のいずれかを選択するようになっている。図6では、選択アイコン6−9を選択した場合に表示される画面を示した(画面6−12、6−14)。
「プリンタとパソコンのネットワークをセットアップする」6−7を選択して「次へ」6−10を選択すると、USBを使用して無線ネットワークのセットアップが開始する。以降、6−7を選択した場合の表示画面と処理については、<本実施形態の無線ネットワーク・インストール1>に記載する。
「パソコンのみセットアップする」6−8を選択して「次へ」6−10を選択すると、無線ネットワークのセットアップを開始する。以降、6−8を選択した場合の表示画面と処理については、<本実施形態の無線ネットワーク・インストール2>に記載する。
「USB接続で使用する」6−9を選択して「次へ」6−10を選択すると、USB接続で使用するためのセットアップが開始する。
本実施形態のプリンタ1−2は、USBインタフェースと無線・有線LANインタフェースの両者を有するので、プリンタドライバのインストールが終了した後に引き続き無線LANの設定(無線ネットワーク・インストール)を行う場合を想定して画面6−6のような選択をさせている。
また、画面6−6の設問には、大きく分けて2種類の意図が含まれている。一つ目は、PC1−1とプリンタ1−2の間で通信するためのインタフェースの種類の選択である。
無線・有線ネットワークを使用したい場合は、選択アイコン6−7、または6−8を選択し、USB接続のみ使用したい場合は選択アイコン6−9を選択する。本実施形態では、無線・有線ネットワークまたはUSBの選択肢であるが、今後、選択できるインタフェースの種類に他のインタフェースを加えても差し支えない。二つ目は、プリンタ1−2が工場出荷直後の設定状態なのか、あるいは既に周辺環境のネットワークに合わせた設定になっていてプリンタ1−2の設定をそのままにしてPC1−1の設定のみ行いたいかどうかの選択である。プリンタ1−2が工場出荷直後の状態の場合は選択アイコン6−7を選択し、プリンタ1−2が設定済みの場合は、選択アイコン6−8を選択する。
画面6−12で、ユーザにUSBインタフェースを接続する旨の指示が表示され、ユーザはその指示に従ってプリンタ1−2のUSBインタフェースにUSBケーブル15を接続する。プリンタ1−2の電源が入っていない場合、ユーザはプリンタ1−2の電源を入れる。画面6−12でも、「キャンセル」6−13でインストールを中止することができる。
USBケーブル1−5を接続してプリンタ1−2の電源を入れると、プラグ・アンド・プレイによりプリンタドライバのインストール、及びプリンタ1−2の内部設定が完了する。プラグ・アンド・プレイによるプリンタドライバのインストールは、前述した<一般的なプリンタドライバのインストール>で説明した手順で行われる。
インストールに成功すると、画面6−14が表示されてインストールが完了し、「OK」6−15を選択することでソフトウェアが終了する。何らかの理由によりプリンタドライバのインストールが失敗した場合は、画面6−16が表示されてインストールに失敗したことをユーザに知らしめる。画面6−14と同様に「OK」6−17でソフトウェアが終了する。
以上のように、画面6−1→画面6−4→画面6−6→画面6−12→画面6−14と指示に従って操作することで、USBを使ったプリンタドライバのインストールが完了しUSBでの印字が可能となる。
図7は、PC1−1が実行する処理を示すフローチャートであって、図6に示した画面が表示される本実施形態のプリンタドライバ・インストール処理を示すフローチャートである。
まず図6に示した画面6−1の表示を行う(ステップS700)。画面6−1で「実行」6−2が選択されるとステップS701へ進み、プリンタドライバ実行ファイルをシステムにコピーする。すなわち、一般的にはOSによりプリンタドライバ実行ファイル及び情報ファイルが配置されるシステム内の場所が決まっており、それに従ってプリンタドライバの実行ファイルをコピーしておく。前述の<一般的なプリンタドライバのインストール>で説明したように、OSは予め決まったプリンタドライバの情報ファイルの保存場所から適切なプリンタドライバを探し出して、それを使用できるように登録・設定の作業を行う。この作業が正しく行われるためにプリンタドライバ関連のファイルを指定の場所へコピーするのが、この処理である。コピーに時間がかかる場合は、画面6−4を表示する。
次に、図6に示した画面6−6の表示を行う(ステップS703)。「プリンタとパソコンのネットワークをセットアップする」6−7、または「USB接続で使用する」6−9を選択して「次へ」6−10を選択した場合は、図6−2に示した画面6−12を表示して、ユーザにUSBケーブルの接続を促す(「パソコンのみセットアップする」6−8を選択した場合については、<本実施形態の無線ネットワーク・インストール2>に記載する)。
画面6−6において、選択アイコン6−7、または6−9を選択した場合、図6−2に示した画面6−12を表示する(ステップS705)。この画面を表示した後、一定時間が経過したかをチェックする(ステップS706)。一定時間が経過していない、つまりタイムアウトが発生していない場合には、プリンタの認識が完了したかをチェックする(ステップS707)。これは、プラグ・アンド・プレイで正しくプリンタ1−2が発見されたどうかの確認を行うものであり、プリンタドライバのインストールが完了するとプリンタの認識が完了したものとする。詳しくは、前述した<一般的なプリンタドライバのインストール>で詳細が述べられている。
タイムアウトが発生したとステップS706で判定された場合は、インストールに失敗したことを画面6−16に表示する(ステップS710)。ステップS707において、プリンタ1−2の認識が完了した場合は、ステップS708へ進み、プリンタ情報の設定を行う。そして、ステップS709において、正常にインストールが終わったことを示す画面6−14を表示する。画面6−14で「OK」6−15が選択された場合は、USBを使ったプリンタドライバ・インストール処理が完了する。
<本実施形態の無線ネットワーク・インストール>
1:USBを使用した無線ネットワーク・インストール
図8は、図6の画面6−6において、「プリンタとパソコンのネットワークをセットアップする」6−7が選択された場合にUSBケーブルの接続を促す画面6−12の後に表示される画面を順番に示している。
画面8−4は、プリンタ1−2に装着された無線LANカード1−4を使ってプリンタ1−2が接続可能なアクセスポイントの一覧を表示するために、PC1−1からUSBケーブル1−5経由でアクセスポイントサーチ用のコマンドをプリンタ1−2へ送り、その結果得られたアクセスポイント情報をUSBケーブル1−5経由で取得し、その取得内容を基に一覧を画面表示した状態を示している。プリンタ1−2は、アクセスポイントサーチ用のコマンドを、USBケーブル1−5を介してPC1−1から受信すると、無線LANカード1−4を使ってアクセスポイントをサーチする。
画面8−4内の表示領域8−5は、アクセスポイントサーチによってプリンタ1−2側から発見されたアクセスポイントの一覧を表示しており、この例では、3つのアクセスポイントA,B,Cがプリンタ1−2側から見つかったことを示している。また、表示領域8−5では、無線電波の届く範囲内で稼動しているアクセスポイントを全て表示するので、必ずしもユーザ自身が使っているものだけが表示されるとは限らない。従って、複数のアクセスポイントから所望のアクセスポイントを選択できるように画面内8−5のハイライトされた行を移動することで、アクセスポイントを選択することができる。
選択したアクセスポイントが暗号化されている場合は、暗号を解読するための暗号キーを入力領域8−6に入力することができ、暗号化されたアクセスポイントにも対応することが可能である。一般的に無線LANでは、盗聴やデータの漏洩を防止するために暗号化の技術が採用されている。代表的なものにWEP(Wired Equivalent Privacy)がある。これは、同じ暗号化用のキーと呼ばれる情報が暗号化と復号化のために使われるアルゴリズムであり、このキーを設定することで他の機器からのデータの隠蔽を実現する。暗号化された環境で無線LANを使用している場合、プリンタ1−2にも同じ暗号キーを設定する必要がある。
画面8−4内の「戻る」8−7を選択すると、前の画面6−14へ戻り、「次へ」8−8を選択することで、領域8−5で選択したアクセスポイントが指定された状態で次の画面に進む。「キャンセル」8−9ではインストールを中止する。
このように画面8−4では、ユーザは自分が現在使っているアクセスポイントを選択し指定することができるので、プリンタ1−2に印刷データを送信するときに、誤って他のアクセスポイントに接続することが防止できる。画面8−4において、ユーザがアクセスポイントを選択すると、使用するアクセスポイントの設定がプリンタ1−2で行われ、プリンタ1−2がアクセスポイント1−3から認識できるようになる。PC1−1は、プリンタ1−2が正しく接続されたどうかを確認するために無線LAN経由でプリンタの検索を行う。
次の画面8−10は、アクセスポイント経由で発見されたプリンタの一覧を表示する画面である。このプリンタの一覧の取得及び表示は、PC1−1が無線LANインタフェースを使ってアクセスポイントを経由してプリンタサーチ用のコマンドを送信し、プリンタサーチ用のコマンドを受け取ったプリンタがその返答を戻すことで行われる。すなわち、このサーチコマンドはブロードキャストでネットワーク上の全ての機器に送信され、サーチコマンドを受け取りこのコマンドを理解できる機器(この場合は特定のプリンタやプリンタアダプタ)がコマンドを送信したホストコンピュータに対して、コマンドに対応して予め決められた情報を戻す。この情報には、プリンタの名称やID、アドレスなどが含まれていて、これら情報を基に接続したいプリンタを特定するようになっている。ただし、アドレス指定でネットワーク上の特定のプリンタへコマンドを送信してその応答を見ることでアクセスポイント経由で通信できることを確認することも可能であり、どちらでも構わない。その場合は、画面8−10はスキップする。
画面8−10では、発見されたプリンタの一覧が表示領域8−11に表示され、この例では3つのプリンタが発見されている。アクセスポイントの選択と同様に、領域8−11内においてハイライトで示されたプリンタが選択される。画面8−10で「戻る」8−12を選択すると前画面8−4へ戻り、「キャンセル」8−14を選択するとインストールは中止される。
また、画面8−10で「次へ」8−13を選択することにより、表示領域8−11で選択したプリンタが接続相手として決定されると共に、ポート名を入力するための画面8−15が次に表示される。画面8−15内の入力領域8−16は、入力したいポート名を入れる領域である。ポート名は、1つのPCに接続される複数のプリンタが同じ機能を有する(例えば無線LAN)場合に、これらプリンタを区別するために用いられ、初期値として例えばWLAN01が設定される。「WLAN」は、無線LANのプリンタを示すための識別名であり、「01」はシステムに登録されている最終の番号を表わし、複数の同じ機能を有するプリンタを区別して扱うために順番に番号を付ける。プリンタドライバでは、このポート名によってプリンタを特定する。
画面8−15で「戻る」8−17を選択すると、前画面8−10へ戻り、「次へ」8−18を選択することにより、入力領域8−16で入力した名前がポート名として決まる。また、「キャンセル」8−19の選択でインストールを中止する。画面8−15で「次へ」8−18が選択されると、ネットワーク・インストールの完了を示す画面8−20が表示される。
図11は、PC1−1が実行する処理を示すフローチャートであって、図8で示した画面が表示される本実施形態の無線ネットワーク・インストール処理を示すのはフローチャートS1100〜S1114の部分である。
まず、図7のステップS703において無線ネットワークのインストールが選択されたか否かを判定する。S703では図6の画面6−6が表示され、「プリンタとパソコンのネットワークをセットアップする」6−7が選択された場合は、ステップS1100でPC1−1にプリンタ1−2がUSBインタフェースで接続されているかどうかを検出する。
USBインタフェースで接続されている場合は、USBインタフェースを使用した無線ネットワーク・インストールをする為にステップS1101へ進む。ここでUSBインタフェース接続が検出できない場合は、無線インタフェースを使用した無線ネットワーク・インストールをする為にステップS1115へ進む(USBインタフェースが検出できない場合のステップS1115以降の手順については、<II:無線インタフェースを使用した無線ネットワーク・インストール>で述べる)。
ステップS1101では、プリンタ1−2の設定情報を取得する。これは、図12で示した情報取得コマンドをPC1−1からプリンタ1−2へUSBケーブル経由で送ることで実行され、プリンタ1−2は設定されている情報をPC1−1へUSBケーブル経由で戻す。プリンタ1−2に設定されている情報には無線LANに関する情報が含まれており、その中にアクセスポイントが設定されているかどうかの情報がある。
アクセスポイントの設定情報は、過去にプリンタの設定を実施したPCにおいてプリンタドライバ・インストールに引き続き実行されたネットワーク・インストールの処理で設定されたものである(図11のステップS1106)。既にアクセスポイントが設定されている場合は、改めてアクセスポイントの設定を行う必要がなく既に設定された情報を使う。
ステップS1102では、アクセスポイントが設定済みかどうかをプリンタ1−2からの情報でチェックする。アクセスポイントが設定されていない場合というのは、ユーザが工場出荷直後のプリンタの箱を開けた状態であることを意味していて、この場合はプリンタ1−2のアクセスポイント設定から行う必要があり、図6、図8で示した処理を行う必要がある。
ステップS1102でアクセスポイントが設定済みと判断された場合は、ステップS1115へ進み無線ネットワーク経由で特定プリンタのサーチ処理を行う。
ステップS1102でアクセスポイントが設定されていないと判断された場合は、ステップS1103へ進んで、アクセスポイントサーチ用のコマンドをUSBケーブル1−5を介してプリンタ1−2に送信する(ステップS1103)。プリンタ1−2はアクセスポイントのサーチを行い、見つかったアクセスポイントの情報をUSBケーブル1−5経由でPC1−1へ戻す。
ここで、PC1−1がUSBケーブル1−5経由でプリンタ1−2へ送信する無線ネットワーク・インストール用のUSBコマンドとして、図12で示すように3つのコマンドが用意されている。その内のアクセスポイントサーチコマンドをプリンタ1−2へ送ることで、プリンタ1−2は、無線LANカード1−4等の無線LANモジュールを使いアクセスポイントをサーチするための設定を無線LANモジュールに行う。アクセスポイントサーチの設定がなされた無線LANモジュールは、アクセスポイントサーチの信号を発信する。この信号を受け取ったアクセスポイントは、自分のアクセスポイント情報(ID、電波状態、アドレス、チャネルなど)をサーチ信号を発信した相手へ返信する。無線LANモジュールはアクセスポイントから送り返されてきた情報を受信し、受信した情報をプリンタ1−2がPC1−1へ返送する。この時、プリンタ1−2は見つかった全てのアクセスポイントの情報をPC1−1へ返信する。
次のステップS1104では、プリンタ1−2からPC1−1へ戻されたアクセスポイント情報からアクセスポイントがいくつ見つかったかをチェックする。アクセスポイントが1つ以上見つかった場合は、ステップS1105へ進んでアクセスポイント一覧の画面8−4を表示して、ユーザにアクセスポイントを選択させる。アクセスポイントが1つだけ見つかった場合は、ステップS1105をスキップしてステップS1106へ進む。
ステップS1106では、無線LANに使用するアクセスポイントの設定を行う。これは、ステップS1103で見つかったアクセスポイントの情報を基に、ユーザにより選択されたアクセスポイント或いは唯一見つかったアクセスポイントを指定する情報設定コマンドをUSBケーブル1−5経由でプリンタ1−2へ送ることにより行う。アクセスポイントのアドレスや暗号化キーなどアクセスポイントを利用するために必要な情報を情報設定コマンドで設定することで特定のアクセスポイントにプリンタ1−2を接続することができる。
続くステップS1107では、ネットワークコマンドを使い、プリンタのサーチを行う。ネットワークコマンドとして、図13に示すように、プリンタサーチコマンド(ブロードキャスト)及びプリンタサーチコマンド(アドレス指定)の2つのネットワークインストール用コマンドを用意している。2つともプリンタサーチ用のコマンドで、プリンタサーチコマンド(ブロードキャスト)が相手を指定しないもので、プリンタサーチコマンド(アドレス指定)が特定の相手を指定したものである。
ここでは、PC1−1は、ブロードキャストのプリンタサーチコマンドを送信する。これは、無線LAN上に発信され、このコマンドを無線LANから受け取ったプリンタはプリンタ情報(ID、名称、アドレス、モデル名など)を、コマンドを送信したPC1−1へ無線LAN経由で返信する。これによって、PC1−1と該プリンタとの接続確認を無線LAN経由で行うことができる。このコマンドはブロードキャストで送信されるため、このコマンドを理解できるプリンタは全て該コマンドを送信したPCへ返信する可能性がある。PC1−1は、プリンタから送り返された情報から自分が今インストールしようとしている機種を選別する必要がある。
PC1−1は、プリンタから送り返された情報から、接続可能なプリンタが1つであって、USBケーブル1−5で接続されているプリンタ1−2と一致しているかをチェックする(ステップS1109)。接続可能なプリンタが1つであってもUSBケーブル1−5で接続されているプリンタと異なる場合、もしくは接続可能なプリンタが2つ以上見つかった場合には、ステップS1110へ進んで画面8−10のプリンタ一覧を表示し、ユーザにプリンタを選択させる。見つかったプリンタが1つであって一致している場合、ステップS1110をスキップしてステップS1111へ進む。
ただし、ここでPC1−1が、アドレス指定のプリンタサーチコマンドを送信することも考えられる。その場合は、指定したプリンタ以外は検出されない。
ステップS1111では、ポート名の表示が必要かどうかのチェックを行い、必要であればステップS1112へ進んでポート名の入力画面8−15を表示し、ユーザに入力させる。ポート名の入力が必要ない場合は、ステップS1112をスキップしてステップS1113へ進む。ポート名の入力をユーザに行わせるかどうかは、その必要性によりインストールソフトを構成するかどうかで決め、より簡単な少ない画面でのインストールを実現する場合には省略することも可能である。
ステップS1113では、PC1−1はネットワーク情報の設定及び無線LAN用のポートインスタンスの登録をPC1−1内で行い、これによって無線LANインタフェース経由で印刷データをプリンタ1−2に送信できる状態になる。ネットワーク情報は、プリンタのアドレスや名称など印刷に必要となる情報を示している。次のステップS1114では、画面8−20に示すネットワークインストール完了画面を表示する。
図12は、USBケーブル1−5経由でプリンタへ送られるUSBコマンドの例を示す図であり、本実施形態では、3つのコマンドが用意されている。USBコマンドには、この他にも、印刷データを送るコマンド、各種プリンタの設定を行うコマンドなどがあるが、本発明に直接関係するインストールコマンドだけを挙げている。1つがアクセスポイントをサーチするコマンドで、図11のステップS1103で説明を行ったものである。2つ目が情報取得コマンドであり、プリンタに設定されている無線LANに関する情報をプリンタから取得するのに用いられる。3つ目は情報設定コマンドであり、無線LANに関する情報(例えばアクセスポイントのアドレス、モード、チャネルなど)を設定するコマンドであり、図11のステップS1106でアクセスポイントの指定のために使用する。
図13は、無線LANを介してプリンタへ送信されるネットワークコマンドの例を示す図であり、本実施形態では、ネットワークコマンドの内のインストールに使用されるコマンドとして、全てのプリンタが受け取るブロードキャスト用プリンタサーチコマンドと、特定のプリンタが受け取るアドレス指定用プリンタサーチコマンドの2つのコマンドが用意されている。ネットワークコマンドには、この他にも印刷データを送るコマンド、各種プリンタの設定を行うコマンドなどがあるが、ここでは一例としてインストールコマンドだけを挙げている。
このコマンドを使うことにより、ネットワーク上にあるプリンタが正しく見つかったか、且つ正しく設定されているかどうかの判断、つまり無線LAN経由でのプリンタとの接続確認を行うことができる。これらコマンドは、ネットワーク上で一般的なTCP/IP,UDPなどのプロトコルを介して転送、返信が行われる。
II:無線インタフェースを使用した無線ネットワーク・インストール
図9、図10は、どちらも図6の画面6−6において、「パソコンのみネットワークをセットアップする」6−8が選択された場合に表示される画面を順番に示している。
アイコン6−8が選択された場合、<I:USBを使用した無線ネットワーク・インストール>で説明したプリンタの無線ネットワーク設定が1台目のPCを通して既に完了しており、別の2台目以降のPCからも印字可能にするための設定手順が実行される。
ただし、プリンタのネットワーク設定が完了した後に、アクセスポイントやPCの設定が変更されるなどプリンタの周辺環境のネットワーク設定が変更される等の理由でユーザが認識しない内に通信不可能になってしまったために再設定(無線ネットワーク・インストール)する場合も考慮する必要がある。
ここで、PCやプリンタを再設定する場合、PCにはすでに使用したいプリンタのプリンタドライバがインストール済みの場合がある。従って、制御プログラムを実行した最初の画面でプリンタドライバをインストールするかどうか確認する画面を表示してインストールしない場合はスキップすると良い。プリンタドライバをインストールする場合は、既に説明した通りであるが、インストールしない場合は、PC1−1にプリンタドライバ・インストール関係の図6の画面は一切表示せず、最初から図8のネットワーク・インストール画面6−14を表示する。画面6−14に表示する文字は「プリンタドライバ・インストール完了」ではなく「ネットワーク・インストール開始」に切り替える。その場合はステップS1100でUSB経由でプリンタが接続されているかを検出して、接続を検出した場合はステップS1101に進みUSBを使用した無線ネットワークインストールを行い、接続を検出しなかった場合はステップS1115に進み無線インタフェースを使用した無線ネットワーク・インストールを行う。以上の処理によって、プリンタドライバを重ねてインストールする手間を省くことが可能である。
以降、プリンタドライバ・インストールが完了した後、ネットワーク上に既に設置された設定済みのプリンタ1−2をPC1−1の無線LANカード1−4から正常に検出できた場合について説明し、次にうまく検出できなかった場合に無線ネットワーク上の通信トラブル箇所を診断する手順について述べる。
i )ネットワーク上の所望の設定済みプリンタを検出できたケース
図9は、図6の画面6−6において、「パソコンのみネットワークをセットアップする」6−8を選択して「次へ」6−10を選択した場合に表示される画面である。
画面9−4は、アクセスポイント経由で発見されたプリンタの一覧を表示する画面である。このプリンタの一覧の取得及び表示は、PC1−1が無線LANインタフェースを使ってアクセスポイントを経由してプリンタサーチ用のコマンドを送信し、プリンタサーチ用のコマンドを受け取ったプリンタがその返答を戻すことで行われる。すなわち、このサーチコマンドはブロードキャストでネットワーク上の全ての機器に送信され、サーチコマンドを受け取りこのコマンドを理解できる機器(この場合は特定のプリンタやプリンタアダプタ)がコマンドを送信したホストコンピュータに対して、コマンドに対応して予め決められた情報を戻す。この情報には、プリンタの名称やID、アドレスなどが含まれていて、これら情報を基に接続したいプリンタを特定するようになっている。
画面9−4では、発見されたプリンタの一覧が表示領域9−5に表示され、この例では3つのプリンタが発見されており、使用したいプリンタはその中の一つに含まれているため、ユーザがプリンタの名称やMACアドレス等を手がかりにして所望のプリンタを表示領域9−5内から選択する。選択されたプリンタはハイライトで表示される。画面9−4で「次へ」9−6を選択すると画面9−8へ移行し、「キャンセル」9−7を選択するとインストールは中止される。
画面9−8はネットワーク・インストール完了を示す画面である。「OK」9−9を押すと処理を終了する。
図11は、PC1−1が実行する処理を示すフローチャートであって、図9で示した画面が表示される本実施形態の無線ネットワーク・インストール処理を示すのはフローチャートS1115〜S1118、S1111〜S1114の部分である。
まず、図7のステップS703において無線ネットワークのインストールが選択されたか否かを判定する。S703では図6の画面6−6が表示され、「パソコンのみネットワークをセットアップする」6−8が選択された場合は、ステップS1115へ移行する。
S1115では、ネットワークコマンドを使い、プリンタのサーチを行う。ここでは、PC1−1は、ブロードキャストのプリンタサーチコマンドを送信する。ブロードキャストのプリンタサーチの詳細はステップS1107と同じなので説明を省略する。
ブロードキャストのプリンタサーチの結果、PC1−1は、プリンタから送り返された情報から、プリンタが検出されたかどうかをチェックする。ただし、<I:USBを使用した無線ネットワーク・インストール>のステップS1109とは異なり、使用したいプリンタとUSBケーブルで接続されているわけではないので、検出されたプリンタが1つのみであっても必ずしも使用したいプリンタと一致しているとは限らないため、<I:USBを使用した無線ネットワーク・インストール>のステップS1110をスキップしたようにS1117をスキップすることはしない。これは、PC1−1の周辺に無線インタフェースを有するプリンタが複数存在していても、PC1−1と使用したいプリンタ1−2USBケーブル1−5経由で接続している場合は、プリンタの名称やMACアドレスなどのプリンタ固有の情報をUSBケーブル経由で取得して、無線インタフェースで検出されたプリンタをネットワーク・コマンド経由で取得したプリンタ固有の情報と比較することで一致するかどうか認識できるが、逆にUSBケーブル経由で接続しておらず、ネットワーク経由(無線インタフェース経由)のみで情報を取得している為にユーザに判断を仰ぐしか使用したいプリンタを特定する手段がない為である。その為、検出されたプリンタの台数に関わらず、ステップS1117へ進んで画面9−4のプリンタ一覧を表示し、ユーザにプリンタを選択させる必要がある。
画面9−4の「診断」10−6は、プリンタ一覧で所望のプリンタが検出されなかった場合に選択して、無線ネットワーク上の通信トラブル箇所を診断して自動設定もしくは設定変更を促す情報表示をして通信可能にする為のアイコンである。「診断」10−6については次の「ii 」ネットワーク上の所望の設定済みプリンタを検出できなかったケース」で説明する。
ステップS1118で、画面9−4の表示領域9−5から使用したいプリンタ1−2を選択すると、選択されたプリンタがハイライトで表示される。そして「次へ」9−6を選択すると、ステップS1111〜ステップS1114の手順へ進み、PC1−1からプリンタ1−2への無線ネットワークを介した印字が可能になる。ステップS1111〜ステップS1114の手順については既に述べたので説明を省略する。(ただし、図9ではステップS1111でポート名入力はしないと判定してステップS1112をスキップしている。)
ii ) ネットワーク上の所望の設定済みプリンタを検出できなかったケース
図10は、図6の画面6−6において、「パソコンのみネットワークをセットアップする」6−8を選択して「次へ」6−10を選択した場合に表示される画面を順番に示している。
画面9−4までの手順は、「i ) ネットワーク上の所望の設定済みプリンタを検出できたケース」と同じである。画面9−4では発見されたプリンタの一覧が表示領域9−5に表示され、この例では3つのプリンタが発見されたが、使用したいプリンタは含まれていない。そのため、画面9−4に表示されている「所望のプリンタが見つからなかった場合は、「診断」を押してください。」のメッセージに従い「診断」9−6を選択する。ここで別のプリンタを選択してハイライト表示状態にした後、「次へ」9−7を選択すると意図していない別のプリンタに接続してしまうことになり、画面9−9が表示される。また、「キャンセル」9−8を選択するとインストールを中断する。
「診断」9−6を選択すると、USB接続を促す画面10−9が表示される。USBケーブルを接続したら「次へ」10−10を選択する。ここで「次へ」10−10が押された直後にUSBケーブル接続状態をチェックして検出され無かった場合、画面10−9を再表示することも可能である。
画面10−11は、PC1−1とアクセスポイント1−3、プリンタ1−2とアクセスポイント1−3のそれぞれの無線インタフェース間で通信可能であるか否かを判定して、その結果、プリンタ1−2とアクセスポイント1−3が通信可能であり、PC1−1とアクセスポイント1−3が通信不可と判定した為、通信可能な側であるプリンタ1−2の無線インタフェース設定(例:SSID、暗号化設定の有無)をUSBケーブル経由で取得して表示して、通信不可の側であるPCの設定変更をユーザに促している。ここでPC1−1の無線LANカード1−4と通信してプリンタ1−2の無線インタフェースに合わせた設定変更を自動的に行うことも考えられるが、ここではPC1−1の画面上へ表示して設定変更を促すだけである。
PC1−1とアクセスポイント1−3の間で通信可能か否かを判定するには、無線LANカード1−4のドライバと通信して、アクセスポイント1−3との通信状態の値を取得する。また、無線LANカード1−4に設定された無線関連の設定値も取得する。ただし、PCの無線インタフェースの設定情報を取得するためには、PCのOSおよび無線LANカードのドライバが情報取得の為のAPI関数に対応していることが必須である。
プリンタ1−2とアクセスポイント1−3の間で通信可能か否かを判定する方法について説明する。PC1−1からUSBケーブル1−5経由でアクセスポイントサーチのコマンドを送り、その結果得られたアクセスポイントの情報をUSBケーブル経由で取得する。
図10の例において、PC1−1とアクセスポイント1−3で通信ができない原因は多数考えられるが、その多くは無線インタフェース同士で設定が一致していないことにある。例えば、設定済みのプリンタ1−2にはSSID = "ABCDE"が設定されているが、PC1−1の無線インタフェースのSSIDが異なっていれば、通信はできない。
図10の画面10−11では、通信不具合の一例としてPC1−1の無線インタフェース設定が誤っていたケースを扱っているが、逆にプリンタ1−2の無線インタフェース設定が誤っているケースでは診断結果は次のようになる。
PC1−1とアクセスポイント1−3、プリンタ1−2とアクセスポイント1−3のそれぞれの無線インタフェース間で通信可能であるか否かを判定して、その結果、PC1−1とアクセスポイント1−3が通信可能であり、プリンタ1−2とアクセスポイント1−3が通信不可であると判定した為、通信可能な側であるPC1−1の無線インタフェース設定(例:SSID、暗号化設定の有無)を無線LANカード1−4のドライバとの通信により取得して、通信不可の側であるプリンタの設定変更をUSBケーブル1−5経由で実行する。
また、通信可能な機器側に暗号化設定が成されている場合は、暗号化の種類(例:WEP、WPA)、暗号化キーを使用している場合はキーの長さ(例:128 bit)などを情報表示して正しい設定変更を促す。また、USBケーブルでPC1−1とプリンタ1−2を接続しているため、どちらかが暗号化設定されていて通信可能であれば、暗号化の種類、暗号化キーそのものを無線インタフェースから取得してUSBケーブル経由で相手側に送信して通信不可の機器側を自動的に設定変更することも可能である。
画面10−11の情報表示に従い、PC1−1の無線LANカード1−4のSSIDの設定を変更した後に、「次へ」10−13を押すと、プリンタサーチ用コマンドをブロードキャストすることによって、プリンタサーチを行う。
ここでは、プリンタサーチの結果、検出されたプリンタが1台であってUSBケーブルで接続されたプリンタと一致しているためプリンタ一覧画面9−4をスキップしてネットワーク・インストール完了画面10−14を表示して終了する。ここでプリンタが2台以上検出された場合は、プリンタ一覧画面9−4を表示してユーザにプリンタを選択させて終了する。
図11は、PC1−1が実行する処理を示すフローチャートであって、図10で示した画面が表示される本実施形態の無線ネットワーク・インストール処理を示すのはフローチャートのステップS1115〜S1128、S1111〜S1114の部分である。
ステップS1115〜S1118については、「i ) ネットワーク上の所望の設定済みプリンタを検出できたケース」で説明したので省略する。
ステップS1118のプリンタ一覧において、無線LANで接続して使用したいプリンタが見つからなかった為、「診断」9−6が選択した場合はステップS1119へ進む。
ステップS1119では、USB接続を促す画面10−9が表示される。ここでステップS1120でUSB経由でプリンタ1−2からプリンタのネットワーク設定値を取得して、工場出荷状態から何らかの設定変更がされているかを確認する。プリンタが少しでも設定変更されている場合、ステップS1121へ進む。逆にプリンタが工場出荷状態の設定値の場合は、ユーザが誤ってこの処理フローに迷い込んだ可能性が高く、工場出荷状態のプリンタの場合は通信トラブル箇所の判定をするまでもない為、<I:USBを使用した無線ネットワーク・インストール>のステップS1103へ移行してプリンタの設定を始めから実施する。尚、無線インタフェース経由でプリンタが全く検出されなかった場合も、ステップS1119と同様にUSB接続を促す画面を表示させてもよい。
ステップS1121〜S1128は、アクセスポイント−PC間、アクセスポイント−プリンタ間の通信分断箇所を判定して、通信可能にするための処理を表している。
以降、通信トラブル時において、アクセスポイント−PC間のみ通信不可の場合、アクセスポイント−プリンタ間のみ通信不可の場合、アクセスポイント−PC間とアクセスポイント−プリンタ間が共に通信可能な場合、そしてアクセスポイント−PC間とAP−プリンタ間が共に通信不可の場合について説明する。
A:アクセスポイント−PC間のみ通信不可の場合
このケースでは、ステップS1121において、アクセスポイント−プリンタ間は通信可能と判断されるため、ステップS1122へ進む。ステップS1122において、アクセスポイント−PC間は通信不可と判断されるためステップS1123へ進む。ステップS1123においては、PCに設定すべき値を表示する画面10−11を表示する。この設定情報はUSBケーブル経由で(APと通信可能と判定されている)プリンタから取得する。取得時には、PCからプリンタに、プリンタの情報を取得するネットワークコマンドを送信する。
本実施形態では設定情報を画面10−11として表示しているだけだが、PCの無線LANカードのドライバを通して無線インタフェースを設定変更できる機能を有している場合は、自動的にPCの無線インタフェースの設定値を変更することも可能である。その場合に必要な設定値はすべてUSBケーブル経由でプリンタから取得する。また、暗号化設定を自動的に行った場合は、暗号化の種類、暗号化キーなどが後で分からなくなってしまうことを避けるために、設定情報を画面10−11へ表示するか、ログ・ファイルとしてPCへ情報を保存するなどの方法が可能である。
B:アクセスポイント−プリンタ間のみ通信不可の場合
このケースでは、ステップS1121において、アクセスポイント−プリンタ間は通信不可と判定されるため、ステップS1126へ進む。ステップS1126において、アクセスポイント−PC間は通信可能と判定されるためステップS1127へ進む。S1127においては、PCの無線LANカードのドライバから取得した設定情報をUSBケーブル経由でプリンタへ送信してプリンタの設定を行う。設定時には、PCからプリンタに、プリンタの設定を行うネットワークコマンドを送信する。
C:アクセスポイント−PC間、アクセスポイント−プリンタ間が共に通信可能な場合
このケースが発生する具体例として、アクセスポイントが複数存在し、PCとプリンタで通信しているアクセスポイントが異なる場合がある。例えば、アクセスポイント1とアクセスポイント2の2台のアクセスポイントが存在し、PCはアクセスポイント1と通信可能な設定になっており、プリンタはアクセスポイント2と通信可能な設定になっている。PCとプリンタを通信可能な状態にするためにはどちらか一方のアクセスポイント(例えばアクセスポイント1)に接続するようにPCかプリンタどちらか片方の機器の設定を変更しなくてはならない。本実施形態では、図11のステップS1121〜S1128部分に記載されているが、通信可能にするために設定変更する手順として、できるだけプリンタの設定を変更せずにPCの設定を変更するような優先順位になっている。従って、本実施例の場合はPCの無線ネットワークの設定をアクセスポイント1からアクセスポイント2へ変更するように画面10−11に情報を表示している。
このケースでは、ステップS1121において、アクセスポイント−PC間で通信可能と判定されてステップS1122へ進む。ステップS1122において、アクセスポイント−プリンタ間で通信可能と判定されるので、ステップS1124へ進む。ステップS1124では、PCと接続しているアクセスポイントの設定と、プリンタと接続しているアクセスポイントの設定を比較して、同一アクセスポイントであるかを判定する。異なるアクセスポイントと判定された場合、PCの無線LAN設定の設定変更を画面10−11で促す。同一のアクセスポイントと判定された場合は、MACアドレスフィルタリングなどのアクセス制限がかかっている、IPアドレスのサブネットワークアドレスが一致していない等の無線通信における様々な原因が考えられるため、それらの原因を箇条書きに列挙してユーザにヘルプ情報として自動的に表示する。情報が多い場合はHTML形式のヘルプにすると閲覧しやすくなる。
D:アクセスポイント−PC間、アクセスポイント−プリンタ間が共に通信不可な場合
この場合、通信回復の手がかりとなる、通信可能な部分が見つからないため、ステップS1121と同様に、無線通信における様々な原因が考えられるため、それらの原因を箇条書きに列挙してユーザにヘルプ情報として自動的に表示する。このケースが発生する一例として、一度無線LANで印字できるようにPC、プリンタを設定したが、その後、アクセスポイントの設定が変わってしまった場合などが考えられる。こういったケースでは、PCとプリンタの両方を設定変更するか、アクセスポイントを設定変更する必要がある。
このケースでは、ステップS1121において、アクセスポイント−PC間で通信不可と判定されてステップS1122に進む。ステップS1122において、アクセスポイント−プリンタ間も通信不可と判定されてステップS1128へ進む。ステップS1128ではヘルプ情報が表示される。
以上がアクセスポイント−PC間、アクセスポイント−プリンタ間の通信分断箇所を判定して、通信可能にするための処理例である。また、図11のフローチャートでは、機器間の通信確認の順番として、アクセスポイント−プリンタ間のチェックをステップS1121で行い、次にアクセスポイント−PC間のチェックをステップS1122とステップS1126で行っている。これは、設定済みのプリンタの設定値をPCの設定値より優先して、可能な限り変更しないようにしている為である。ただし、アクセスポイント−PC間のチェックをステップS1121で行い、次にアクセスポイント−プリンタ間のチェックをステップS1122とステップS1126で行ってもかまわないが、その場合PCの設定値をプリンタの設定値よりも優先することになる。
また、プリンタの設定値とPCの設定値のどちらを優先するかをPC1−1に表示してユーザに選択させて、その選択に応じてプリンタもしくはPCの設定値を変更することでユーザの意思をより反映した設定にすることも可能である。
従来は周辺のネットワーク環境に存在する無線インタフェースを有する各機器の設定状態に合わせてプリンタの無線インタフェースの設定値を変更するかそのままの設定にするかユーザが各機器の設定値を取得した上で判断をする必要があり、プリンタとPCを有線インタフェースを接続して各無線インタフェースの設定をする形態において、無線インタフェースの設定開始時に有線インタフェースでPCとプリンタを接続するかどうかも判断する必要があったが、上記実施形態によりユーザがそれらを意識することなく設定を完了することができる。
また、上記実施形態によれば、周辺環境のネットワークに合わせてプリンタを一度設定済みの場合に、無線インタフェースで設定済みのプリンタを検索して検出できなかった場合でもPCが自動的にPC、プリンタ、アクセスポイントの間で通信可能な箇所と通信不可の箇所を診断して通信可能な機器の設定を自動的に通信不可の機器に設定するかPCに設定すべき情報を表示して設定変更を促すことで、無線LANの専門知識を有しないユーザであっても簡単な操作で通信可能な状態にすることができる。
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、プログラムコード自体及びそのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(基本システム或いはオペレーティングシステム)などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。