(57)【要約】【課題】  複数の無線インタフェースを有する情報処理装置において、デバイスとのダイレクト接続を適切に行う。【解決手段】  情報処理装置が備える複数の無線インタフェースのそれぞれについて、通信装置と無線ＬＡＮによるダイレクト接続の対象となる状態か判定するステップと、前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数あるか確認するステップと、前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記ダイレクト接続の対象となる状態である複数の無線インタフェースの中から、前記通信装置と前記ダイレクト接続を行う無線インタフェースを１つ決定するステップと、を備える。【選択図】  図３
2018195888.tif 000002
【特許請求の範囲】
【請求項１】
通信装置と、外部のアクセスポイントを介さずに無線ＬＡＮによるダイレクト接続が可能な情報処理装置の制御方法であって、
前記情報処理装置が備える複数の無線インタフェースのそれぞれについて、前記通信装置と前記無線ＬＡＮによるダイレクト接続の対象となる状態か判定するステップと、
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数あるか確認するステップと、
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記ダイレクト接続の対象となる状態である複数の無線インタフェースの中から、前記通信装置と前記ダイレクト接続を行う無線インタフェースを１つ決定するステップと、
を備えることを特徴とする制御方法。
【請求項２】
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記ダイレクト接続の対象となる状態の複数の無線インタフェースの中から、前記通信装置とのダイレクト接続を行う無線インタフェースをユーザーに選択させるための選択画面を表示部に表示させるステップをさらに備え、
前記選択画面におけるユーザーの選択に基づき、前記通信装置とのダイレクト接続を行う無線インタフェースが決定されることを特徴とする請求項１に記載の制御方法。
【請求項３】
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記複数の無線インタフェースの優先度を判定するステップをさらに備えることを特徴とする請求項１又は２に記載の制御方法。
【請求項４】
プロファイル情報の取得を試みるステップをさらに備え、
前記プロファイル情報が取得されなかった無線インタフェースは、第一優先度に分類され、
前記プロファイル情報が取得された無線インタフェースは、前記取得されたプロファイル情報に基づいて、前記第一優先度よりも低い複数の優先度のうちのいずれかの優先度に分類されることを特徴とする請求項１乃至３のいずれか１項に記載の制御方法。
【請求項５】
通信装置と、外部のアクセスポイントを介さずに無線ＬＡＮによる接続するダイレクト接続が可能な情報処理装置の制御方法であって、
前記情報処理装置が備える複数の無線インタフェースのそれぞれについて、前記通信装置と前記ダイレクト接続の対象となる状態か判定するステップと、
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記ダイレクト接続の対象となる状態の複数の無線インタフェースの中から、前記通信装置とのダイレクト接続を行う無線インタフェースをユーザーに選択させるための選択画面を表示部に表示させるステップと、
前記選択画面におけるユーザーの選択に基づき、前記通信装置とのダイレクト接続を行う無線インタフェースを決定するステップと、
を備えることを特徴とする制御方法。
【請求項６】
前記通信装置および前記外部のアクセスポイントを含むいずれの外部装置とも接続していない状態の無線インタフェースは、前記通信装置とダイレクト接続の対象となる状態であると判定されることを特徴とする請求項１乃至５のいずれか１項に記載の制御方法。
【請求項７】
前記通信装置とダイレクト接続の対象となる状態であると判定されなかった無線インタフェースのうち、前記通信装置と外部のアクセスポイントを介さずにダイレクト接続中である無線インタフェースは、前記通信装置とダイレクト接続の対象となる状態であると判定され、前記通信装置以外の外部機器と接続中である無線インタフェースは、前記通信装置とダイレクト接続の対象となる状態であるとは判定されないことを特徴とする請求項６に記載の制御方法。
【請求項８】
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが１つの場合、前記１つの無線インタフェースが、前記通信装置と前記ダイレクト接続を行う無線インタフェースとして決定されることを特徴とする請求項１乃至７のいずれか１項に記載の制御方法。
【請求項９】
前記選択画面には、前記複数の無線インタフェースそれぞれの識別情報と共に、各無線インタフェースの接続状態が表示されることを特徴とする請求項５乃至８のいずれか１項に記載の制御方法。
【請求項１０】
前記ダイレクト接続は、ＩＥＥＥ  ８０２．１１の規格に基づく無線通信であることを特徴とする請求項１乃至９のいずれか１項に記載の制御方法。
【請求項１１】
前記情報処理装置は、前記通信装置である印刷を実行する印刷装置と前記ダイレクト接続を行うことを特徴とする請求項１乃至１０のいずれか１項に記載の制御方法。
【請求項１２】
通信装置と外部のアクセスポイントを介さずに無線ＬＡＮによるダイレクト接続が可能な情報処理装置を制御するプログラムであって、
コンピュータに、
前記情報処理装置が備える複数の無線インタフェースのそれぞれについて、前記通信装置と前記無線ＬＡＮによるダイレクト接続の対象となる状態か判定するステップと、
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数あるか確認するステップと、
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記ダイレクト接続の対象となる状態である複数の無線インタフェースの中から、前記通信装置と前記ダイレクト接続を行う無線インタフェースを１つ決定するステップと、
を実行させることを特徴とするプログラム。
【請求項１３】
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記ダイレクト接続の対象となる状態の複数の無線インタフェースの中から、前記通信装置とのダイレクト接続を行う無線インタフェースをユーザーに選択させるための選択画面を表示部に表示させるステップをさらに備え、
前記選択画面におけるユーザーの選択に基づき、前記通信装置とのダイレクト接続を行う無線インタフェースが決定されることを特徴とする請求項１２に記載のプログラム。
【請求項１４】
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記複数の無線インタフェースの優先度を判定するステップをさらに備えることを特徴とする請求項１２又は１３に記載のプログラム。
【請求項１５】
プロファイル情報の取得を試みるステップをさらに備え、
前記プロファイル情報が取得されなかった無線インタフェースは、第一優先度に分類され、
前記プロファイル情報が取得された無線インタフェースは、前記取得されたプロファイル情報に基づいて、前記第一優先度よりも低い複数の優先度のうちのいずれかの優先度に分類されることを特徴とする請求項１２乃至１４のいずれか１項に記載のプログラム。
【請求項１６】
通信装置と、外部のアクセスポイントを介さずに無線ＬＡＮによる接続するダイレクト接続が可能な情報処理装置を制御するプログラムであって、
コンピュータに、
前記情報処理装置が備える複数の無線インタフェースのそれぞれについて、前記通信装置と前記ダイレクト接続の対象となる状態か判定するステップと、
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記ダイレクト接続の対象となる状態の複数の無線インタフェースの中から、前記通信装置とのダイレクト接続を行う無線インタフェースをユーザーに選択させるための選択画面を表示部に表示させるステップと、
前記選択画面におけるユーザーの選択に基づき、前記通信装置とのダイレクト接続を行う無線インタフェースを決定するステップと、
を実行させることを特徴とするプログラム。
【請求項１７】
前記通信装置および前記外部のアクセスポイントを含むいずれの外部装置とも接続していない状態の無線インタフェースは、前記通信装置とダイレクト接続の対象となる状態であると判定されることを特徴とする請求項１２乃至１６のいずれか１項に記載のプログラム。
【請求項１８】
前記通信装置とダイレクト接続の対象となる状態であると判定されなかった無線インタフェースのうち、前記通信装置と外部のアクセスポイントを介さずにダイレクト接続中である無線インタフェースは、前記通信装置とダイレクト接続の対象となる状態であると判定され、前記通信装置以外の外部機器と接続中である無線インタフェースは、前記通信装置とダイレクト接続の対象となる状態であるとは判定されないことを特徴とする請求項１７に記載のプログラム。
【請求項１９】
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが１つの場合、前記１つの無線インタフェースが、前記通信装置と前記ダイレクト接続を行う無線インタフェースとして決定されることを特徴とする請求項１２乃至１８のいずれか１項に記載のプログラム。
【請求項２０】
前記選択画面には、前記複数の無線インタフェースそれぞれの識別情報と共に、各無線インタフェースの接続状態が表示されることを特徴とする請求項１６乃至１９のいずれか１項に記載のプログラム。
【請求項２１】
前記ダイレクト接続は、ＩＥＥＥ  ８０２．１１の規格に基づく無線通信であることを特徴とする請求項１２乃至２０のいずれか１項に記載のプログラム。
【請求項２２】
前記情報処理装置は、前記通信装置である印刷を実行する印刷装置と前記ダイレクト接続を行うことを特徴とする請求項１２乃至２１のいずれか１項に記載のプログラム。
【請求項２３】
通信装置と外部のアクセスポイントを介さずに無線ＬＡＮによるダイレクト接続が可能な情報処理装置であって、
前記情報処理装置が備える複数の無線インタフェースのそれぞれについて、前記通信装置と前記無線ＬＡＮによるダイレクト接続の対象となる状態か判定する判定手段と、
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数あるか確認する確認手段と、
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記ダイレクト接続の対象となる状態である複数の無線インタフェースの中から、前記通信装置と前記ダイレクト接続を行う無線インタフェースを１つ決定する決定手段と、
を備えることを特徴とする情報処理装置。
【請求項２４】
通信装置と、外部のアクセスポイントを介さずに無線ＬＡＮによる接続するダイレクト接続が可能な情報処理装置であって、
前記情報処理装置が備える複数の無線インタフェースのそれぞれについて、前記通信装置と前記ダイレクト接続の対象となる状態か判定する判定手段と、
前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記ダイレクト接続の対象となる状態の複数の無線インタフェースの中から、前記通信装置とのダイレクト接続を行う無線インタフェースをユーザーに選択させるための選択画面を表示部に表示させる表示制御手段と、
前記選択画面におけるユーザーの選択に基づき、前記通信装置とのダイレクト接続を行う無線インタフェースを決定する決定手段と、
を備えることを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理装置の制御方法、およびプログラムに関する。特に、無線接続を行う技術に関する。
【背景技術】
【０００２】
パーソナルコンピュータやスマートフォン等の情報処理装置は、アクセスポイントが構築したネットワークを介してプリンタ等の通信装置と接続することができる。つまり、このインフラストラクチャー接続においては、装置同士は、アクセスポイントを介して無線ＬＡＮにより接続される。また、アクセスポイントがルーターの機能を備えている場合（以降、無線ＬＡＮルーターと呼ぶ）、この無線ＬＡＮルーターを経由して情報処理装置はインターネットに接続することができる。このインフラストラクチャー接続の状態で、通信装置と情報処理装置とを、Ｐｅｅｒ−ｔｏ−Ｐｅｅｒで無線接続（以降、ダイレクト接続とも呼ぶ）させないように制御する技術がある（特許文献１参照）。
【０００３】
特許文献１によれば、情報処理装置における無線インタフェースが１つである場合に、その当該１つの無線インタフェースを通信機器との接続に使用してしまうと、インターネット接続を含む、他の機器との無線接続が切断されることを課題としている。よってこのようなユーザデメリットを考慮し、特許文献１では、ダイレクト接続を抑制する手段が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−１９０４２公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、１つの情報処理装置が複数の無線インタフェースを有するケースがあり得る。たとえば、無線子機をアダプタとして情報処理装置に接続することで、無線インタフェースを容易に追加することが可能となる。
【０００６】
そこで、本発明では、複数の無線インタフェースを有する情報処理装置において、通信装置との無線ダイレクト接続を適切に行うことを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために本発明の制御方法は、通信装置と、外部のアクセスポイントを介さずに無線ＬＡＮによるダイレクト接続が可能な情報処理装置の制御方法であって、前記情報処理装置が備える複数の無線インタフェースのそれぞれについて、前記通信装置と前記無線ＬＡＮによるダイレクト接続の対象となる状態か判定するステップと、前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数あるか確認するステップと、前記ダイレクト接続の対象となる状態と判定された無線インタフェースが複数ある場合、前記ダイレクト接続の対象となる状態である複数の無線インタフェースの中から、前記通信装置と前記ダイレクト接続を行う無線インタフェースを１つ決定するステップと、を備える。
【発明の効果】
【０００８】
以上説明したように、本発明によれば、複数の無線インタフェースを有する情報処理装置において、通信装置との無線ダイレクト接続を適切に行うことが可能となる。
【図面の簡単な説明】
【０００９】
【図１】プリンタとＰＣとの接続形態を説明するための模式図である。
【図２】本発明の実施形態における情報処理装置と通信装置の構成例を示す図である。
【図３】本発明の実施形態における情報処理装置と制御方法を示すフローチャートである。
【図４】本発明の実施形態における無線ＬＡＮ接続方法を選択するための選択画面を示す模式図である。
【図５】本発明の実施形態における無線インタフェースの確認処理におけるフローチャートである。
【図６】本発明の実施形態におけるインタフェース未接続判定処理におけるフローチャートである。
【図７】本発明の実施形態におけるダイレクト接続済判定処理のフローチャートである。
【図８】本発明の実施形態における無線インタフェース決定処理のフローチャートである。
【図９】本発明の実施形態における無線インタフェースを選択するための選択画面を示す模式図である。
【図１０】本発明の実施形態におけるダイレクト接続が不可であること示すエラー画面の模式図である。
【図１１】本発明の実施形態における無線インタフェース決定処理のフローチャートである。
【図１２】本発明の実施形態におけるダイレクト接続候補無線インタフェースの優先度判定のフローチャートである。
【図１３】本発明の実施形態における優先度リストから無線インタフェースを１つ決定する処理のフローチャートである。
【発明を実施するための形態】
【００１０】
以下、添付図面を参照して本発明の実施形態を説明する。尚、以下の各実施形態は本発明を限定するものでなく、また各実施形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１１】
また、下記の実施形態では、情報処理装置としてパーソナルコンピュータ（ＰＣ）又はスマートフォンを例に挙げて説明し、所定の処理を実行する通信装置としてプリンタ（印刷装置）を例に挙げて説明する。ただし、情報処理装置はこれに限定されず、スマートフォン以外の携帯端末、ノートＰＣ、タブレット端末、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、デジタルカメラ等、種々のものを適用可能である。また、通信装置もプリンタに限定されず、情報処理装置と無線通信可能な装置であれば、種々の装置を適用可能である。例えば、プリンタであれば、インクジェットプリンタ、レーザービームプリンタ等に適用することができる。また、プリンタのみならず、複写機、ファクシミリ装置、スキャナ装置、プロジェクタ、携帯端末、スマートフォン、ノートＰＣ、タブレット端末、ＰＤＡ、デジタルカメラ、音楽再生デバイス、テレビ等にも適用可能である。その他、複写機能、ＦＡＸ機能、印刷機能等の複数の機能を備える複合機にも適用可能である。
【００１２】
＜第一の実施形態＞
まず、図１（ａ）および図１（ｂ）を用いて、情報処理装置と通信装置との無線ＬＡＮによる２通りの接続方式を説明する。
【００１３】
図１（ａ）は、インフラストラクチャー接続を示す。インフラストラクチャー接続とは、ＩＥＥＥ  ８０２．１１の規格に基づくインフラストラクチャーモードであり、アクセスポイントが構築したネットワークを介して通信するモードを示す。図１（ａ）では、このインフラストラクチャーモードにより、外部のアクセスポイント１０３が構築したネットワークを介して、通信装置であるプリンタ１０１と情報処理装置１０２とが接続している状態である。つまり、両者の通信はアクセスポイント１０３を介して行なわれる。なお、図１（ａ）において、アクセスポイント１０３が無線ＬＡＮルーターの場合、この無線ＬＡＮルーターを介して、情報処理装置１０２はインターネット１０４に接続が可能となる。
【００１４】
図１（ｂ）は、ダイレクト接続を示す。本実施形態におけるダイレクト接続とは、図１（ａ）のように外部アクセスポイント１０３を介さずに、装置同士が無線ＬＡＮにより直接接続するモードを示す。図１（ｂ）では、通信装置であるプリンタ１０１自身にアクセスポイント機能を備えており、このプリンタ１０１内のアクセスポイントを介して、情報処理装置１０２はプリンタ１０１と無線ＬＡＮにより直接接続している。なお、本実施形態におけるダイレクト接続方法としては、Ｗｉ−Ｆｉ  Ａｌｌｉａｎｃｅが定める無線ＬＡＮ規格の一種であるＷｉ−Ｆｉ  Ｄｉｒｅｃｔ（登録商標）方式が挙げられる。また、Ｗｉ−Ｆｉ  Ｄｉｒｅｃｔ非対応機器では、通信装置自身が備えるアクセスポイント機能を用いて通信するアクセスポイントモード方式（以降、ＡＰモード方式とも呼ぶ）がある。いずれの方式も、プリンタ１０１自身が直接アクセスポイントとなる機能を利用した接続方式である。なお、図１（ｂ）のダイレクト接続の場合、プリンタには無線ＬＡＮルーターのようなＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）側の機能を備えていないため、インターネットに接続することはできない。
【００１５】
なお、本実施形態において、無線ＬＡＮとは、ＩＥＥＥ  ８０２．１１の規格に準ずる無線通信を示す。なお、本実施形態において、ＩＥＥＥ  ８０２．１１とは、ＩＥＥＥ  ８０２．１１ａやＩＥＥＥ  ８０２．１１ｂ等のように、ＩＥＥＥ  ８０２．１１に属する一連の規格を含む。
【００１６】
次に、図２を用いて、プリンタ２５１（図１のプリンタ１０１に対応）と、該プリンタ２５１とネットワーク２３１を介して接続された情報処理装置２０１（図１の情報処理装置１０２に対応）のそれぞれのハードウェア構成を説明する。
【００１７】
［情報処理装置２０１の構成］
図２において、情報処理装置２０１は、入力Ｉ／Ｆ（インタフェース）２０２、ＣＰＵ２０３、ＲＯＭ２０４、ＲＡＭ２０５、外部記憶装置２０６、出力Ｉ／Ｆ（インタフェース）２０７を有する。さらに情報処理装置２０１は、無線Ｉ／Ｆ（インタフェース）２１１、無線Ｉ／Ｆ（インタフェース）２１３を有する。
【００１８】
入力Ｉ／Ｆ２０２は、マウス２０９や物理キーボード２０９、ボタン、タッチパネル等の操作部（不図示）を介して、ユーザーからのデータ入力や動作指示を受け付けるためのインタフェースである。なお、表示部２０８と操作部とは、少なくとも一部が一体であってもよく、例えば、画面の出力とユーザーからの操作の受け付けを同一の画面において行うような形態としてもよい。
【００１９】
ＣＰＵ２０３は、システム制御部であり、プログラムの実行やハードウェアの起動等、情報処理装置２０１の全体を制御する。
【００２０】
ＲＯＭ２０４は、ＣＰＵ２０３が実行する制御プログラムやデータテーブル等の固定データを格納する記憶媒体である。
【００２１】
外部記憶装置２０６は、アプリケーションプログラム群と、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、プリンタドライバやその他各種のデータが格納されている記憶媒体である。ＲＯＭ２０４や外部記憶装置２０６に格納されている各プログラムは、ＯＳの管理下において、例えば、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御を行う。なお、本実施形態では、ＯＳとしてＭｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ（登録商標）を利用する形態を例に説明する。
【００２２】
ＲＡＭ２０５は、バックアップ電源を必要とするＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やＤＲＡＭ等で構成される。なお、ＲＡＭ２０５は、図示しないデータバックアップ用の１次電池によってデータが保持されていてもよい。その場合、ＲＡＭ２０５は、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、情報処理装置２０１の設定情報や情報処理装置２０１の管理データ等を格納するメモリエリアもＲＡＭ２０５に設けられている。また、ＲＡＭ２０５は、ＣＰＵ２０３の主メモリ、ＲＯＭ２０４や外部記憶装置２０６に格納される各種プログラムのワークメモリとしても用いられる。
【００２３】
出力Ｉ／Ｆ２０７は、表示部２０８がデータの表示や情報処理装置２０１の状態の通知を行うための制御を行うインタフェースである。
【００２４】
表示部２０８は、ＬＥＤ（発光ダイオード）やＬＣＤ（液晶ディスプレイ）などから構成され、データの表示や情報処理装置２０１の状態の通知を行うディスプレイである。なお、表示部２０８上に、数値入力キー、モード設定キー、決定キー、取り消しキー、電源キー等のキーを備えるソフトキーボードを設置することで、表示部２０８を介してユーザーからの入力を受け付けても良い。
【００２５】
無線インタフェース２１１及び無線インタフェース２１３は、ネットワーク２３１にア無線ＬＡＮ２１２を介して接続する。例えば、無線ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）等のネットワークアダプタに搭載されているネットワークインタフェースコントローラが、無線インタフェースとして機能する。なお、情報処理装置２０１が備える無線インタフェースの数は、図２のような２つに限らず、３つ以上でもよい。また、元々１つの無線インタフェースを備える情報処理装置２０１であっても、追加して増やすことができる。
【００２６】
［プリンタ２５１の構成］
次にプリンタ２５１について説明する。図２において、プリンタ２５１は、ネットワークＩ／Ｆ（インタフェース）２５２、ＲＡＭ２５３、プリントエンジン２５６、ＲＯＭ２５４、ＣＰＵ２５５を備える。
【００２７】
ネットワークインタフェース２５２は、ネットワーク２３１に、ネットワークケーブル２５７または無線ＬＡＮを介して接続される。
【００２８】
ＲＡＭ２５３は、ＣＰＵ２５５の主メモリとワークメモリとして用いられ、受信した印刷ジョブの印刷データを一旦保存するための受信バッファーとして機能するとともに、各種のデータの保存も行う。プリントエンジン２５６は、ＲＡＭ２５３に保存された印刷データに基づき記録部（記録ヘッド）に印刷を実行させる。ＲＯＭ２５４は、ＣＰＵ２５５が実行する各種の制御プログラムやデータを格納する。ＣＰＵ２５５は、システム制御部であり、ＲＯＭ２５４に記憶されたプログラムの実行やプリンタ２５１の全体を制御する。
【００２９】
本実施形態では、このような情報処理装置２０１とプリンタ２３１とが無線ＬＡＮによるダイレクト接続を行う場合に、情報処理装置２０１の有する複数の無線インタフェースの中から使用する無線インタフェースを適切に決定することができる。
【００３０】
［複数の無線インタフェースを備えるケース］
ここで、本実施形態のように、情報処理装置２０１が複数の無線インタフェースを備えるユースケースについて説明する。
【００３１】
一例として、会社の営業担当者のようなユーザーを想定する。このようなユーザーの場合、会社内では図１（ａ）に示すように、情報処理装置２０１とプリンタ２５１とをインフラストラクチャー接続させ、情報処理装置をインターネットに接続することが考えられる。つまり、外部アクセスポインがある環境では、外部アクセスポイントを介してプリンタ２５１と情報処理装置２０１を無線ＬＡＮ接続させる。さらに、外部アクセスポイントが無線ＬＡＮルーターである場合、無線ＬＡＮルーターを介して情報処理装置２０１をインターネットに接続する。一方で、外出先では、情報処理装置２０１とプリンタ２５１とを図１（ｂ）に示すように、ダイレクト接続させることが考えられる。この場合、情報処理装置２０１の１つの無線インタフェースの接続方式をその都度切り替えてプリンタ２５１に接続させるよりも、インフラストラクチャー接続用と、ダイレクト接続用と、それぞれの無線インタフェースを用意しておく方が効率的である。つまり、情報処理装置２０１は複数の無線インタフェースを備えることが好ましい。
【００３２】
また、同じ場所（環境下）であっても、情報処理装置２０１が複数の無線インタフェースを備えることは好ましい。例えば、無線ＬＡＮルーター機能を備える外部アクセスポイントが存在する環境下において、情報処理装置２０１は、１つの無線インタフェースを使用して、この外部アクセスポイントが構築したネットワークに参加しているものとする。情報処理装置２０１は、この外部アクセスポイントを介したインフラストラクチャー接続により同じネットワークに参加しているプリンタＡに接続される。また情報処理装置２０１は、無線ＬＡＮルーターによりインターネットにも接続される。この状態で、情報処理装置２０１が、プリンタＡとは異なるプリンタＢにダイレクト接続を行いたい場合、情報処理装置２０１は、インフラストラクチャー接続に使用しているものとは別の無線インタフェース（未接続の無線インタフェース）を使用する。これにより、情報処理装置２０１のインフラストラクチャー接続及びインターネット接続は切断されることがなく、且つ、プリンタＢとのダイレクト接続も行うことができる。
【００３３】
このようなメリットにより、情報処理装置２０１が複数の無線インタフェースを備えることがあり得る。しかしながら、無線インタフェースを複数有する場合、ダイレクト接続のセットアップをする際に、どの無線インタフェースをダイレクト接続に用いるべきかが課題として残る。なぜなら、通信装置とのダイレクト接続の対象となる無線インタフェースは、一定の条件を備える必要があるが、その条件を満たしている無線インタフェースが複数存在する場合には、その中から１つに特定する手段が必要となる。
【００３４】
また、例え前述の一定条件を満たしている無線インタフェースであったとしても、本当にダイレクト接続のセットアップに用いてよいかどうかという課題もある。前述の営業担当のユーザーの例で説明すると、インフラストラクチャー接続用の無線インタフェースであっても、インフラストラクチャー接続のネットワークから圏外となる場合がある。この場合には、当該インフラストラクチャー接続用の無線インタフェースは未接続状態とみなされてしまう。つまり、当該無線インタフェースは、ダイレクト接続に用いる無線インタフェースとしての条件を満たしてしまう。
【００３５】
［ダイレクト接続対象となる無線インタフェースの条件］
本実施形態では、ダイレクト接続対象の無線インタフェースとして適切であるかの判断基準として、２つの条件を定める。
【００３６】
（条件１）
１つ目の条件１は、判断対象の無線インタフェースが未接続状態であることである。特に、インフラストラクチャー接続を介して無線ＬＡＮルーターに接続している無線インタフェースは、無線ＬＡＮルーターを経由してインターネットに接続している可能性がある。そのような無線インタフェースに対して、ダイレクト接続をセットアップしてしまうと、情報処理装置におけるインターネット環境が切断されてしまい、ユーザーに対してデメリットが生じる。そのため、ダイレクト接続の対象としては、未接続状態の無線インタフェースであることが好ましい。
【００３７】
（条件２）
２つ目の条件２は、判断対象の無線インタフェースが、現在、外部アクセスポイントを介さずにダイレクト接続中（ダイレクト接続済み）の状態の無線インタフェースであることである。つまり、条件２は、ユーザーが既にダイレクト接続対象としてその無線インタフェースを選択しているのであれば、再びダイレクト接続の対象としても問題ない、という判断基準である。ここで、条件２における「ダイレクト接続中の状態」とは、典型的には、ユーザーがダイレクト接続をしようとしているプリンタに既にダイレクト接続中の状態を示す。しかしながら、本実施形態はこのようなケースに限らない。つまり、いずれかの機器にダイレクト接続中の状態であれば、「ダイレクト接続中の状態」と判断してもよい。前者のケースでは、ユーザーがダイレクト接続をしようとしているプリンタ２５１にはダイレクト接続しておらず、プリンタ２５１とは異なる機器にダイレクト接続している無線インタフェースは、「ダイレクト接続中の状態ではない」と判断される。一方で、後者のケースでは、ユーザーがダイレクト接続をしようとしているプリンタ２５１にはダイレクト接続しておらず、プリンタ２５１とは異なる機器にダイレクト接続している無線インタフェースは、「ダイレクト接続中の状態である」と判断される。「ダイレクト接続中の状態」をどちらの判断基準を適用するかは、ＲＡＭ２０５に格納されたセットアッププログラムの設定による。
【００３８】
以上のように、本実施形態では、上記２つの条件（条件１及び条件２）のうちいずれかを満たす無線インタフェースを、「ダイレクト接続対象の無線インタフェース」と判定する。
【００３９】
［制御フロー］
次に、本実施形態の制御方法について詳細に説明する。図３は、情報処理装置２０１がプリンタ２５１とダイレクト接続する場合の処理のフローチャートを示す。このフローチャートは、例えば、ＣＰＵ２０３が、外部記憶装置２０６等に格納されたセットアッププログラム（以下、単にプログラム又は本プログラムともいう）をＲＡＭ２０５に読み出して実行することにより実現される。
【００４０】
図３の処理は、ユーザーの指示に基づき本プログラムが起動された場合に、ＣＰＵ２０３からの実行指示を受け開始される（Ｓ３０１）。以降、本プログラムやＯＳを、各処理の主体として説明することもあるが、実際には、対応するプログラムをＣＰＵ２０３が実行することで、対応する機能が実現されることになる。
【００４１】
Ｓ３０２では、本プログラムは、情報処理装置２０１が有する全ての無線インタフェースそれぞれの状態を確認する処理（以降、無線インタフェース確認処理）を実施する。このＳ３０２の無線インタフェース確認処理の詳細については、図５を用いて後述する。
【００４２】
Ｓ３０３では、本プログラムはＯＳに対し、無線ＬＡＮ接続方法の選択画面（選択ダイアログ）を表示部２０８に表示させるよう指示を行い、ＯＳが表示部２０８に選択画面を表示する。図４に無線ＬＡＮ接続方法の選択画面４０１の例を示す。本画面のリストには、「無線ＬＡＮルーター経由で接続」と記載された選択肢４０２と、「ダイレクト接続」という選択肢４０３がある。「無線ＬＡＮルーター経由で接続」という選択肢４０２は、外部アクセスポイントを介してインフラストラクチャー接続を行うことを示し、「ダイレクト接続」という選択肢４０３は、プリンタが備えるアクセスポイントを介してダイレクト接続を行うことを示す。ここでは、本画面において、ユーザーがダイレクト接続の選択肢４０３を選択してセットアップを行う例を説明する。
【００４３】
Ｓ３０４では、図４の選択画面にてダイレクト接続が選択されたことを受け、本プログラムは、無線インタフェース決定処理を実施する。このＳ３０４の決定処理の詳細については、図８を用いて後述する。
【００４４】
Ｓ３０５では、本プログラムはＯＳに対し、プリンタ２５１をダイレクト接続モードに移行するための設定方法を情報処理装置２０１の表示部２０８上に表示させるよう指示を行い、ＯＳが表示部２０８に設定方法の画面を表示する。
【００４５】
Ｓ３０６では、プリンタ２５１がダイレクト接続モードに移行すると、本プログラムは、ダイレクト接続モード状態のプリンタ２５１を検出し、接続処理を行う。
【００４６】
以上の処理により、情報処理装置２０１とプリンタ２５１との無線ＬＡＮによるダイレクト接続が完了する（Ｓ３０７）。なお一般的に、プリンタ２５１とのダイレクト接続では、プリンタ２５１のアクセスポイントを利用するため、プリンタ２５１に接続可能な端末（情報処理装置）の最大数がプリンタ２５１によって設定されている。接続可能台数を超えている場合は、Ｓ３０６の処理は失敗となり、本プログラムは処理を終了する。
【００４７】
［無線インタフェース確認処理（Ｓ３０２）］
次に、図５を用いて、本プログラムにおける無線インタフェース確認処理（Ｓ３０２）の詳細について説明する。
【００４８】
Ｓ５０１では、本プログラムは、ＯＳのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を用いて、情報処理装置２０１に存在する無線インタフェースの情報を取得する。
【００４９】
Ｓ５０２では、本プログラムは、ＯＳのＡＰＩの戻り値を参照して、Ｓ５０１が成功したかを判定する。情報処理装置２０１に有効な無線インタフェースが存在しない場合にはＳ５０２においてＮｏとなり、無線インタフェース確認処理は終了する。情報処理装置２０１に有効な無線インタフェースが１つ以上存在している場合は、Ｓ５０２においてＹｅｓとなり、Ｓ５０３のステップに進む。なお、「有効な無線インタフェース」として、物理的にＯＦＦ状態にされている無線インタフェースや無効状態になっている無線インタフェースは含まれない。ＡＰＩの戻り値のＩＰ  ＡＤＡＰＴＥＲ  ＡＤＤＲＥＳＳＥＳ構造体の中にあるＩＦ  ＯＰＥＲ  ＳＴＡＴＵＳ型変数に、ＩｆＯｐｅｒＳｔａｔｕｓＵｐ（１）という値が入っていれば接続済とみなす。
【００５０】
Ｓ５０３では、本プログラムは、無線インタフェースが未接続かを判定する処理として、前述したダイレクト接続対象の条件１に合致しているかを判定する。Ｓ５０３の処理について、図６を用いて詳細に説明する。
【００５１】
図６は、Ｓ５０３の処理を示すフローチャートである。図６の処理では、各無線インタフェースが未接続状態であるかを１つずつ確認する。
【００５２】
Ｓ６０１では、本プログラムは、１つ目の無線インタフェース（仮に無線インタフェースＸとする）が未接続状態であるかを判定する。具体的には、本プログラムは、無線インタフェースＸの接続状態を示すステータス値（ＯＳのＡＰＩの戻り値に含まれている情報）を参照する。そして、ステータス値がパケット送信可能な状態である場合は、無線インタフェースＸは接続状態であると判定し（Ｓ６０１でＮＯ）、それ以外の場合は、無線インタフェースＸは未接続状態であると判定する（Ｓ６０１でＹＥＳ）。
【００５３】
Ｓ６０２では、本プログラムは、無線インタフェースＸは未接続状態であるとして、当該無線インタフェースＸをリストＡ（ダイレクト接続の対象リスト）に追加する。Ｓ６０３では、本プログラムは、無線インタフェースＸが接続状態であるとして、当該無線インタフェースＸをリストＢ（ダイレクト接続の保留リスト）に追加する。
【００５４】
Ｓ６０４では、本プログラムは、次の無線インタフェース（仮に無線インタフェースＹとする）があるかを判定する。無線インタフェースＹがある場合は、Ｓ６０１へ戻る。次の無線インタフェースがない場合は、すべての無線インタフェースに対してリストＡ又はリストＢへの分類を完了したと判定し、処理を終える。図５に戻り、説明を続ける。
【００５５】
Ｓ５０４では、本プログラムは、Ｓ５０３における無線インタフェースの未接続判定の結果を基に、リストＢに無線インタフェースが存在しているかを判定する。リストＢに無線インタフェースが存在する場合にはＳ５０５に進み、リストＢに無線インタフェースが存在しない場合には図５の処理を終了する。
【００５６】
Ｓ５０５では、本プログラムは、ダイレクト接続済か判定処理を行う。ダイレクト接続済かの判定処理は、前述したダイレクト接続対象の条件２に合致しているかを判定する処理である。このダイレクト接続済判定処理について、図７を用いて詳細に説明する。
【００５７】
図７は、Ｓ５０５の処理を示すフローチャートである。図７の処理では、本プログラムは、リストＢの各無線インタフェースについて、リストＡに移動させるかどうかを１つずつ確認する。ここで、前述のＳ５０１において判定に用いたＯＳのＡＰＩの戻り値は、無線インタフェースが、外部アクセスポイント及びプリンタ２５１内のアクセスポイントを含む何らかのインタフェースに接続されているか、の判定に用いることはできる。しかしながら、その接続先が外部アクセスポイントなのか、それともプリンタ２５１内のアクセスポイントなのか（つまりダイレクト接続状態なのか）は、区別ができない。よって、図７の処理により、各無線インタフェースについて、接続先がダイレクト接続中であるか、を判定することができる。なお、条件２の説明箇所で述べたとおり、本実施形態における「ダイレクト接続中の状態」とは、典型的には、ユーザーがダイレクト接続をしようとしているプリンタに既にダイレクト接続中の状態を示すが、この典型例に限らず、いずれかの機器にダイレクト接続中の状態であれば、「ダイレクト接続中の状態」と判断してもよい。なお、以下のＳ７０１の処理では、ダイレクト接続をしようとしているプリンタ２５１に既にダイレクト接続中の状態の場合のみを「ダイレクト接続中の状態」とする例について説明する。
【００５８】
Ｓ７０１では、本プログラムは、１つ目の無線インタフェース（仮に無線インタフェースＸとする）の現在の接続先に対して通信を試みる。具体的には、本プログラムは、無線インタフェースＸの接続先のデフォルトゲートウェイのＩＰアドレス（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  Ａｄｄｒｅｓｓ）を指定して、ネットワーク上の検索を行う。デフォルトゲートウェイのＩＰアドレスは、前述のＳ５０１におけるＯＳのＡＰＩの戻り値から得られる。本処理において、本プログラムは、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｎａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）を用いてネットワーク検索を行う。ＳＮＭＰはネットワーク上のデバイス（外部アクセスポイント、アクセスポイントを含むプリンタ２５１のいずれも含む）に対して監視・制御をするためのプロトコルである。ＳＮＭＰで通信を行うことで、通信元の本プログラムは、ＭＩＢ（Ｍａｎａｇｅｍｅｎｔ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｂａｓｅ）と呼ばれるデバイスの情報を取得可能である。なお、プリンタ２５１は、自身がダイレクト接続中の状態である場合、ダイレクト接続中状態のプリンタであることを示すＭＩＢ（以降、ダイレクトステータスＭＩＢ）をＲＯＭ２５４に保存しておく。本プログラムは、無線インタフェースの接続先に対してＳＮＭＰ通信によって、このダイレクトステータスＭＩＢの取得を試みる。本プログラムは、ダイレクトステータスＭＩＢを取得できれば、無線インタフェースＸはダイレクト接続済み（ダイレクト接続中）であるとしてＳ７０２に進む。一方、本プログラムは、プリンタ２５１のダイレクトステータスＭＩＢを取得できない場合、無線インタフェースＸはプリンタ２５１以外のデバイス（例えば、外部アクセスポイントや、プリンタ２５１以外のプリンタ）に接続中であると判断しＳ７０３へ進む。つまり、無線インタフェースＸが、ダイレクト接続したい通信装置以外の外部機器へ接続中の場合は、Ｓ７０３へ進む。
【００５９】
Ｓ７０２では、本プログラムは、リストＢから、無線インタフェースＸを削除するとともに、リストＡに無線インタフェースＸを追加する。なお、接続先がプリンタ２５１以外の場合は（Ｓ７０１でＮＯ）、ダイ本プログラムは、リストＡおよびリストＢの更新を行わない。
【００６０】
Ｓ７０３では、本プログラムは、リストＢ中に、Ｓ７０１の処理を行っていない他の無線インタフェース（仮に無線インタフェースＹとする）があるかを判定する。リストＢ中に無線インタフェースＹがある場合は、Ｓ７０１に戻る。つまり、本プログラムは、Ｓ７０３により、リストＢに含まれるすべての無線インタフェースに対してＳ７０１を実行する。Ｓ７０３において、リストＢ中の全ての無線インタフェースに対してＳ７０１を実行したと判定した場合、本プログラムは、処理を終える。
【００６１】
［無線インタフェース決定処理（Ｓ３０４）］
次に、図８を用いて、図３における無線インタフェース決定処理（Ｓ３０４）の詳細を説明する。Ｓ８０１では、本プログラムは、無線インタフェース確認処理（Ｓ３０２）によって抽出されたリストＡ（プリンタ２５１とダイレクト接続対象の無線インタフェースのリスト）に含まれる無線インタフェースの数に応じて処理を分岐する。具体的には、リストＡに含まれる無線インタフェースの数をカウントする。Ｓ８０１において、無線インタフェースの数が２つ以上の場合は、Ｓ８０２へ進む。一方、Ｓ８０１において２つ以上ではなく、且つ、１個の場合は、その１個の無線インタフェースを、プリンタ２５１とのダイレクト接続のセットアップに用いる無線インタフェースであるとして、処理を終了する。Ｓ８０１において２つ以上ではなく、且つ、０個の場合は、Ｓ８０３へ進む。
【００６２】
Ｓ８０２では、リストＡに含まれる無線インタフェースが２個以上であるため、本プログラムは、リストＡの中から無線インタフェースを１つ選択するための処理を実行する。本実施形態では、本プログラムはＯＳに対し、図９に示すような選択画面を表示させるよう指示する。図９の選択画面は、リストＡに含まれる複数の無線インタフェースを示す名称９０１（識別情報）と、各無線インタフェースの接続状態を示す情報９０２と、を表示している。本プログラムにより、このような選択画面をユーザーに提示することで、ユーザーは、ダイレクト接続対象である複数の無線インタフェースの中から、実際にダイレクト接続を実行させる無線インタフェースを選択することができる。選択画面におけるユーザーの指示を受け、本プログラムはダイレクト接続を実行する無線インタフェースを決定する。
【００６３】
Ｓ８０３では、ダイレクト接続対象の無線インタフェースがないため、本プログラムは、ダイレクト接続不可エラー状態として、図１０に示すようなエラー画面を表示し、処理を終了する。
【００６４】
以上説明したとおり、本実施形態では、情報処理装置が複数の無線インタフェースを備える場合であっても、複数の無線インタフェースのそれぞれに対して、無線ＬＡＮによるダイレクト接続の対象となる無線インタフェースかを判定する。具体的には、各無線インタフェースに対して、未接続状態（条件１）、もしくは外部アクセスポイントを介さないダイレクト接続中の状態（条件２）、のいずれかの条件を満たすかを判定するステップ（無線インタフェース確認処理Ｓ３０２）を有する。これにより、ダイレクト接続対象となる無線インタフェースを抽出することができる。そして、ダイレクト接続対象となる無線インタフェースが複数存在する場合は、その中から実際にダイレクト接続を行う１つの無線インタフェースを決定する。具体的には、選択画面を表示制御し、ユーザーに選択させる。このようなステップを実行することにより、適切な無線インタフェースを決定することができる。
【００６５】
なお、本実施形態とは異なり、複数の無線インタフェースのそれぞれ（全て）に対してＳ３０２を実行せず、一番早くにダイレクト接続対象と判断された無線インタフェースを、自動的にダイレクト接続に使用するという方法もあり得る。つまり、複数の無線インタフェースに対し順にＳ３０２の処理を実行していく中で、ダイレクト接続対象となると最初に判定された無線インタフェースを、自動的にダイレクト接続に用いることも考えられる。しかしながら、このようなケースの場合、仮に、１個目の無線インタフェースがダイレクト接続対象と判定されると、２個目以降の無線インタフェースに対しては、Ｓ３０２を実行されない。よって、実際は他にもダイレクト接続対象となる無線インタフェースが存在する可能性があるにも関わらず、他の無線インタフェースの状態は判定されない。よって、ダイレクト接続対象の状態である無線インタフェースが複数存在するかの判定も行われず、ユーザーに対して複数のダイレクト接続対象の無線インタフェースを提示することもできない。しかしながら、本実施形態では、複数の無線インタフェースのそれぞれに対してＳ３０２を実行するため、複数のダイレクト接続対象の無線インタフェースがあるかが分かり、且つそれらを提示することも可能となる。よって、より適切な無線インタフェースでダイレクト接続セットアップを行うことが可能となる。
【００６６】
＜第二の実施形態＞
次に、第二の実施形態について説明する。第一の実施形態では、外部アクセスポイントを介さずに無線ＬＡＮによるダイレクト接続可能な無線インタフェースが２個以上の場合、Ｓ３０４にて１つの無線インタフェースを決定するために選択画面をユーザーに提示する例を示した。第二の実施形態では、Ｓ３０４の処理の一部を自動化する例について説明する。なお、情報処理装置２０１と通信装置であるプリンタ２５１の構成については第一の実施形態と同じであるため説明を省略する。また、情報処理装置２０１とプリンタ２５１をダイレクト接続させるためのセットアップのフロー（図３参照）における、Ｓ３０４の処理内容以外は第一の実施形態と同様のため、説明を省略する。
【００６７】
図１１は、本実施形態における無線インタフェース決定処理（Ｓ３０４）の詳細を示すフローチャートである。このフローチャートは、第一の実施形態の各フローチャートと同様に、例えば、ＣＰＵ２０３が、外部記憶装置２０６等に格納されたセットアッププログラム（以下、単に本プログラムともいう）をＲＡＭ２０５に読み出して実行することにより実現される。
【００６８】
Ｓ１１０１では、本プログラムは、Ｓ３０２によって抽出されたリストＡに含まれる無線インタフェースの数に応じて処理を分岐する。具体的には、リストＡに含まれる無線インタフェースの数をカウントし、２つ以上（複数）か判定する。Ｓ１１０１において、２つ以上と判定された場合はＳ１１０２へ進む。一方、Ｓ１１０１において２つ以上ではなく、且つ、１個の場合は、その１個の無線インタフェースを、プリンタ２５１とのダイレクト接続のセットアップに用いる無線インタフェースであるとして、処理を終了する。Ｓ１１０１において２つ以上ではなく、且つ、０個の場合は、Ｓ１１０４へ進む。
【００６９】
Ｓ１１０２では、リストＡに含まれる無線インタフェースが２個以上であるため、本プログラムは、まずリストＡに含まれる無線インタフェース間における優先度を判定する（以降、優先度判定処理ともいう）。優先度判定処理（Ｓ１１０２）の詳細については図１２を用いて後述する。
【００７０】
Ｓ１１０３では、Ｓ１１０２で判定された優先度に基づいて、本プログラムはダイレクト接続のセットアップに用いる無線インタフェースを１つ決定する（以降、優先無線インタフェース決定処理ともいう）。優先無線インタフェース決定処理（Ｓ１１０３）の詳細については図１３を用いて後述する。本プログラムは、Ｓ１１０３によって１つの無線インタフェースを決定すると、処理を終える。
【００７１】
Ｓ１１０４では、リストＡに含まれる無線インタフェースが１個もないため、本プログラムは、ダイレクト接続不可エラー状態として、第一の実施形態と同様に図１０に示すようなエラー画面を表示し、処理を終える。
【００７２】
［優先度判定処理（Ｓ１１０２）］
図１２を用いて、優先度判定処理（Ｓ１１０２）について詳細に説明する。図１２の処理は、複数の無線インタフェースに対して順に各ステップを実行させる。１つ目の無線インタフェースを仮に無線インタフェースＸとする。
【００７３】
Ｓ１２０１では、本プログラムは、ＯＳのＡＰＩを用いて無線インタフェースＸに紐づいているネットワークプロファイルリストを取得する。ネットワークプロファイルとは、無線インタフェースＸがアクセスポイントと接続した際に、ＯＳが保存する設定情報のことである。ＯＳは、例えばアクセスポイントの識別子であるＳＳＩＤ（Ｓｅｒｖｉｃｅ  Ｓｅｔ  Ｉｄｅｎｔｉｆｉｅｒ）や、そのＳＳＩＤに接続するためのパスワードなどを設定情報としてＲＯＭ２０４に保存する。
【００７４】
Ｓ１２０２では、本プログラムは、Ｓ１２０１の結果に基づき、ネットワークプロファイルリストが取得されたかを判定する。ネットワークプロファイルが取得された場合（Ｓ１２０２でＹＥＳ）、Ｓ１２０４へ進む。一方、ネットワークプロファイルが取得されなかった場合（Ｓ１２０２でＮＯ）、Ｓ１２０３へ進む。Ｓ１２０３では、ネットワークプロファイルリストが取得されなかったため、本プログラムは、当該無線インタフェースＸを現在無線ＬＡＮ接続に使用していないと判断し、第一優先リストに分類して保持する。
【００７５】
Ｓ１２０４では、ネットワークプロファイルリストが取得されたため、本プログラムは、当該無線インタフェースＸにおいて、現在及び過去を含めダイレクト接続したことがあるかを判定する。Ｓ１２０４の判定は、ネットワークプロファイルリストの各々のＳＳＩＤを参照することで実現する。具体的には、プリンタ２５１と外部アクセスポイントを介さずにダイレクト接続する際に使用するＳＳＩＤを、ダイレクト接続時特有の文字列に取り決めておく。そして、本プログラムは、ネットワークプロファイルリストの各々のＳＳＩＤがダイレクト接続時特有の文字列に合致しているかを確認し、ダイレクト接続時のネットワークプロファイル（ダイレクトプロファイル情報）であるかを判定する。履歴中にダイレクト接続時のネットワークプロファイルがあると判定された場合（Ｓ１２０４でＹＥＳ）、Ｓ１２０５へ進む。一方、ダイレクト接続時のネットワークプロファイルがないと判定された場合（Ｓ１２０４でＮＯ）、Ｓ１２０６へ進む。
【００７６】
Ｓ１２０５では、ダイレクト接続を示すネットワークプロファイルがあるため、本プログラムは、当該無線インタフェースＸをダイレクト接続履歴ありと判断し、第二優先リストに分類して保持する。
【００７７】
Ｓ１２０６では、ダイレクト接続を示すネットワークプロファイルがないため、本プログラムは、次の優先度判定を実行する。具体的には、本プログラムは、当該無線インタフェースＸが、外部アクセスポイントを介したインフラストラクチャー接続中の無線インタフェースのネットワークプロファイルと重複したネットワークプロファイル情報を履歴中に保有しているか判定する。現在インフラストラクチャー接続中のネットワークプロファイルと重複したプロファイル情報を持つ無線インタフェースは、現状ユーザーが使用していない可能性が高い。例えば、新しい無線ＬＡＮ規格に対応するためにユーザーが新しい無線インタフェースを買い、その新しい無線インタフェースをインフラストラクチャー接続用としてセットアップし直したケースが該当する。つまり、過去には無線インタフェースＸをインフラストラクチャー接続にしていたが、現在は、新しい無線インタフェースがインフラストラクチャー接続用に設定されているため、無線インタフェースＸは使用されていないことを意味する。
【００７８】
Ｓ１２０７では、本プログラムは、当該無線インタフェースＸを第三優先リストに分類して保持する。そして、Ｓ１２０８では、本プログラムは、Ｓ１２０６の条件を満たさない無線インタフェースを、第四優先リストとして保持する。Ｓ１２０９では、本プログラムは、リストＡ中に他の無線インタフェースＹがあるか判定する。このステップにより、リストＡに含まれるすべての無線インタフェースに対して優先度判定処理を実行することができる。そして、本プログラムは、全ての無線インタフェースを、第一優先リストから第四優先リストのいずれかに分類した後、処理を終える。
【００７９】
［優先無線インタフェースを決定処理（Ｓ１１０３）］
次に、図１３を用いて、優先無線インタフェース決定処理（Ｓ１１０３）について詳細に説明する。図１３は、優先度判定処理（Ｓ１１０２）にて分類された優先度に応じ、ダイレクト接続に用いる１つの無線インタフェースを決定するフローチャートを示す。
【００８０】
Ｓ１３０１では、本プログラムは、第一優先リストに保持された無線インタフェースの数を確認する。具体的には、第一優先リストに含まれる無線インタフェースの数をカウントし、２つ以上（複数）か判定する。Ｓ１３０１において２個以上と判定された場合は、Ｓ１３０２へ進む。一方、Ｓ１３０１において２個以上ではなく、且つ１個と判定された場合は、Ｓ１３０９へ進む。Ｓ１３０１において２個以上でなく、且つ０個と判定された場合は、Ｓ１３０３へ進む。
【００８１】
Ｓ１３０２では、第一優先の無線インタフェースが２つ以上あるため、本プログラムは、これ以上の自動判別はできないと判断し、第一の実施形態と同様に図９に示すような選択画面を表示させる。Ｓ１３０３では、第一優先の無線インタフェースがないため、本プログラムは、第二優先リストに保持された無線インタフェースの数を確認する。Ｓ１３０３において、２個以上と判定された場合は、Ｓ１３０４へ進む。一方、Ｓ１３０２において２個以上ではなく、且つ１個と判定された場合は、Ｓ１３０９へ進む。Ｓ１３０２において２個以上でなく、且つ０個と判定された場合は、Ｓ１３０５へ進む。
【００８２】
Ｓ１３０４では、第二優先の無線インタフェースが２つ以上あるため、本プログラムは、これ以上の自動判別はできないと判断し、図９に示すような無線インタフェースの選択画面を表示させる。Ｓ１３０５では、第二優先の無線インタフェースがないため、本プログラムは、第三優先リストに保持された無線インタフェースの数を確認する。Ｓ１３０５において、２個以上と判定された場合は、Ｓ１３０６へ進む。一方、Ｓ１３０５において２個以上ではなく、且つ１個と判定された場合は、Ｓ１３０９へ進む。Ｓ１３０５において２個以上でなく、且つ０個と判定された場合は、Ｓ１３０６へ進む。
【００８３】
Ｓ１３０６では、第三優先の無線インタフェースが２つ以上あるため、本プログラムは、これ以上の自動判別はできないと判断し、図９に示すような無線インタフェースの選択画面を表示させる。Ｓ１３０７では、第三優先の無線インタフェースがないため、本プログラムは、第四優先リストに保持された無線インタフェースの数を確認する。Ｓ１３０７において、２個以上と判定された場合は、Ｓ１３０８へ進む。一方、Ｓ１３０７において２個以上ではなく、且つ１個と判定された場合は、Ｓ１３０９へ進む。
【００８４】
Ｓ１３０８では、第四優先の無線インタフェースが２つ以上あるため、本プログラムは、これ以上の自動判別はできないと判断し、図９に示すような無線インタフェースの選択画面を表示させる。
【００８５】
Ｓ１３０９では、これまでの処理により無線インタフェースが１つ選択されているため、本プログラムは、当該１つの無線インタフェースを、ダイレクト接続のセットアップを実行する無線インタフェースとして決定し、処理を終える。
【００８６】
以上説明したとおり、本実施形態では、ダイレクト接続対象となる無線インタフェースが複数ある場合に、本プログラムによりある程度の絞り込みを行うことが可能になる。これにより、ユーザーによる選択の手間を減らすことが可能となる。また、本実施形態では、Ｓ１３０２とＳ１３０４とＳ１３０６の処理において、本プログラムが各優先度リストに含まれる複数の無線インタフェースを選択するための選択画面（図９）をユーザーへ提示する構成例について説明した。しかしながら、図９の選択画面を表示するのではなく、各優先度リストに含まれる複数の無線インタフェースの中から１つの無線インタフェースを、本プログラムが無作為に選択する処理に代えることも可能である。ただしこの場合、ユーザーとしてはより適切な無線インタフェースを選択したい可能性もある。特に、第四優先リストに分類された無線インタフェースの中にはセットアップの対象とすべきでない無線インタフェースが含まれる。よって、本実施形態で説明したとおり、図９に示すような選択画面を表示させることが好ましい。特に、Ｓ１３０８では図９に示すような選択画面を表示させてユーザーに選択させることが好ましい。
【００８７】
＜第三の実施形態＞
本発明は、上述した各実施形態の１以上の機能を以下の構成によっても実行可能である。すなわち、１以上の機能を実現するソフトウェアのプログラムを記録した記録媒体を、システム又は装置に供給する。そして、そのシステム又は装置のコンピュータにおける１以上のプロセッサが、記憶媒体に格納されたプログラムを読み出し実行することによっても実行可能である。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することとなる。プロセッサとしては、ＣＰＵ、ＭＰＵ等のプロセッサが含まれる。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【００８８】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【００８９】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳなどが実際の処理の一部または全部を行ってもよい。このＯＳの処理によって前述した実施形態の機能が実現される場合も本発明に含まれる。
【００９０】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書きこまれることもある。そして、その書き込まれたプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどのプロセッサが実際の処理の一部または全部を行ってもよい。本発明は、このような処理によって前述した実施形態の機能が実現される場合も含まれる。
【図１】
2018195888.tif 000003
【図２】
2018195888.tif 000004
【図３】
2018195888.tif 000005
【図４】
2018195888.tif 000006
【図５】
2018195888.tif 000007
【図６】
2018195888.tif 000008
【図７】
2018195888.tif 000009
【図８】
2018195888.tif 000010
【図９】
2018195888.tif 000011
【図１０】
2018195888.tif 000012
【図１１】
2018195888.tif 000013
【図１２】
2018195888.tif 000014
【図１３】
2018195888.tif 000015