(57)【要約】      （修正有）【課題】接続先となるデバイスが変更された場合であっても、容易に新たな接続先となるデバイスにデータを送信できるようにする。【解決手段】ネットワークポートモニタは。選択対象デバイスにデータを送信できない場合、ブロードキャストにて問い合わせ通知を送信し、選択対象デバイスと同じデバイス識別情報を持つデバイスから問い合わせ通知に対する応答を受信した場合、そのデバイスを新たな接続先に変更する。【選択図】図６
2015153126.tif 000002
【特許請求の範囲】
【請求項１】
印刷用に選択された選択対象デバイスのネットワーク情報を保持する情報処理装置であって、
前記ネットワーク情報を用いて前記選択対象デバイスにデータを送信する送信手段と、
前記選択対象デバイスに前記データを送信できない場合、ブロードキャストにて問い合わせ通知を送信する送信手段と、
前記選択対象デバイスと同じデバイス識別情報を持つデバイスから前記問い合わせ通知に対する応答を受信した場合、前記選択対象デバイスと同じデバイス識別情報を持つデバイスの送信先情報を用いて前記ネットワーク情報を変更する変更手段を有することを特徴とする情報処理装置。
【請求項２】
前記選択対象デバイスのデバイスドライバと同一のデバイスドライバを用いて前記選択対象デバイスと同じデバイス識別情報を持つデバイスに送信される印刷データを生成する生成手段を更に備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記選択対象デバイスと同じデバイス識別情報を持つデバイスから前記問い合わせ通知に対する応答を受信した場合、前記応答の内容を表示する表示制御手段を更に備えることを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記変更手段は、前記選択対象デバイスと同じデバイス識別情報を持つ複数のデバイスから最初に前記問い合わせ通知に対する応答を送信したデバイスの送信先情報を用いて前記ネットワーク情報を変更することを特徴とする請求項１乃至３のいずれか１項に記載の情報処理装置。
【請求項５】
前記デバイスは印刷機能、ＦＡＸ機能、スキャン機能の少なくとも１つを持つことを特徴とする請求項１乃至４のいずれか１項に記載の情報処理装置。
【請求項６】
印刷用に選択された選択対象デバイスのネットワーク情報を保持する情報処理装置において実行される制御方法であって、
前記ネットワーク情報を用いて前記選択対象デバイスにデータを送信する送信工程と、
前記選択対象デバイスに前記データを送信できない場合、ブロードキャストにて問い合わせ通知を送信する送信工程と、
前記選択対象デバイスと同じデバイス識別情報を持つデバイスから前記問い合わせ通知に対する応答を受信した場合、前記選択対象デバイスと同じデバイス識別情報を持つデバイスの送信先情報を用いて前記ネットワーク情報を変更する変更工程を有することを特徴とする制御方法。
【請求項７】
印刷用に選択された選択対象デバイスのネットワーク情報を保持するコンピュータに、前記ネットワーク情報を用いて前記選択対象デバイスにデータを送信する送信工程と、
前記選択対象デバイスに前記データを送信できない場合、ブロードキャストにて問い合わせ通知を送信する送信工程と、
前記選択対象デバイスと同じデバイス識別情報を持つデバイスから前記問い合わせ通知に対する応答を受信した場合、前記選択対象デバイスと同じデバイス識別情報を持つデバイスの送信先情報を用いて前記ネットワーク情報を変更する変更工程を実行させるためのコンピュータが読み取り可能なプログラム。
【請求項８】
前記選択対象デバイスのデバイスドライバと同一のデバイスドライバを用いて前記選択対象デバイスと同じデバイス識別情報を持つデバイスに送信される印刷データを生成する生成工程を更に備えることを特徴とする請求項７に記載のプログラム。
【請求項９】
前記選択対象デバイスと同じデバイス識別情報を持つデバイスから前記問い合わせ通知に対する応答を受信した場合、前記応答の内容を表示する表示制御工程を更に備えることを特徴とする請求項７または８に記載のプログラム。
【請求項１０】
前記変更工程は、前記選択対象デバイスと同じデバイス識別情報を持つ複数のデバイスから最初に前記問い合わせ通知に対する応答を送信したデバイスの送信先情報を用いて前記ネットワーク情報を変更することを特徴とする請求項７乃至９のいずれか１項に記載のプログラム。
【請求項１１】
前記デバイスは印刷機能、ＦＡＸ機能、スキャン機能の少なくとも１つを持つことを特徴とする請求項７乃至１０のいずれか１項に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して情報処理装置がデバイスを制御するためのデバイス制御システムに関する。
【背景技術】
【０００２】
従来、ネットワークを介してデバイスを制御する時には固定アドレス（ＭＡＣアドレス）と可変アドレス（ＩＰアドレス）を用いることが知られている。ここで制御対象のデバイスの可変アドレス（ＩＰアドレス）が可変であることに対応するために、ブロードキャストやユニキャストによるメッセージの送信を行う。そのメッセージへの応答に含まれる固定アドレス（ＭＡＣアドレス）を手掛かりにあらたな可変アドレス（ＩＰアドレス）を検出するという技術がある（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−３４０２８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら上記従来技術においては、制御対象の可変アドレス（ＩＰアドレス）が変わってしまったことにより通信が出来なくなった場合、固定アドレス（ＭＡＣアドレス）を手掛かりに新たな可変アドレス（ＩＰアドレス）を検出していた。その結果、もし固定アドレス（ＭＡＣ）が変わってしまった、あるいは異なった固定アドレス（ＭＡＣアドレス）のデバイスを新たな通信先に指定したい場合に対応できないおそれがあった。
【０００５】
そこで、本発明は新たな通信デバイスを新たな接続先として容易に設定可能とすることを目的とする。
【課題を解決するための手段】
【０００６】
上述のような課題を解決するための本願の情報処理装置は、印刷用に選択された選択対象デバイスのネットワーク情報を保持する情報処理装置であって、前記ネットワーク情報を用いて前記選択対象デバイスにデータを送信する送信手段と、前記選択対象デバイスに前記データを送信できない場合、ブロードキャストにて問い合わせ通知を送信する送信手段と、前記選択対象デバイスと同じデバイス識別情報を持つデバイスから前記問い合わせ通知に対する応答を受信した場合、前記選択対象デバイスと同じデバイス識別情報を持つデバイスの送信先情報を用いて前記ネットワーク情報を変更する変更手段を有する。
【発明の効果】
【０００７】
本発明により、新たな通信デバイスを新たな接続先として容易に設定できる。
【図面の簡単な説明】
【０００８】
【図１】本発明の機器構成の例を示す図である。
【図２】実施例１における処理の流れを示すフローチャートである。
【図３】実施例１におけるユーザインタフェースダイアログの例である。
【図４】実施例１における第一のデバイス列挙手段と第一の選択手段の例である。
【図５】実施例１におけるユーザインタフェースダイアログの画面の例である。
【図６】実施例１におけるデバイス選択画面の例である。
【図７】実施例２における処理の流れを示すフローチャートである。
【図８】本願におけるポート情報の例である。
【図９】本願における機種情報要求コマンドおよび機種情報応答コマンドの例である。
【図１０】本願における置換え機能の設定画面の一例である。
【発明を実施するための形態】
【０００９】
まず、本発明を実施するにあたり、本発明の実施例における機器構成について、図１（ａ）および図１（ｂ）を参照して説明する。
【００１０】
図１（ａ）において、１０１はデバイスＡ、１０２はデバイスＢ、１０３はデバイスＣである。１０４は有線ネットワークであり、デバイスＡ、デバイスＢおよびデバイスＣは有線ネットワークに接続されている。１０５は情報処理装置Ａ、１０６は情報処理装置Ｂである。情報処理装置Ａおよび情報処理装置Ｂも同様に有線ネットワークに接続されている。これにより、情報処理装置Ａまたは情報処理装置Ｂは有線ネットワークを介してデバイスＡ、デバイスＢおよびデバイスＣを制御できる。
【００１１】
図１（ｂ）における１０７は無線ネットワークルータである。図１（ａ）と図１（ｂ）の違いは、情報処理装置とデバイスが有線ネットワークを介して接続されているか、無線ネットワークルータを介して接続されているかという点のみである。
【００１２】
デバイスＡ、デバイスＢおよびデバイスＣは、印刷機能、スキャン機能、ＦＡＸ機能の少なくとも１つを持つ。もちろん、デバイスは、印刷機能、スキャン機能、ＦＡＸ機能を備える複合機でも良い。
【００１３】
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１４】
図２を用いて、デバイス２５１（図１のデバイス１０１、１０２、１０３）とネットワーク（２３１）を介して接続された情報処理装置２０１（図１の情報処理装置１０５、１０６）のハードウェア構成図を説明する。
【００１５】
情報処理装置２０１は入力インタフェース２０２とＣＰＵ２０３、ＲＯＭ２０４、ＲＡＭ２０５、外部記憶装置２０６、出力インタフェース２０７、表示部２０８、キーボード２０９、マウス２１０、ネットワークインタフェース２１１を有する。ネットワークインタフェース２１１はネットワーク２３１にネットワークケーブル２１２を介して接続してある。ＲＯＭ２０４には初期化プログラムが入っており、外部記憶装置２０６にはアプリケーションプログラム群、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）、デバイスドライバやその他各種のデータが保存されている。ＲＡＭ２０５は外部記憶装置２０６に格納される各種プログラムがワークメモリとして使用する。デバイス２５１はネットワークインタフェース２５２とＲＡＭ２５３、プリントエンジン２５６、ＲＯＭ２５４、ＣＰＵ２５５を有する。ネットワークインタフェース２５２はネットワーク２３１にネットワークケーブル２５７を介して接続してある。ＲＡＭ２５３はＣＰＵ２５５の主メモリとワークメモリとして用いられ、受信した印刷データを一旦保存するための受信バッファーや各種のデータを保存する。プリントエンジン２５６はＲＡＭ２５３に保存されたデータに基づき印刷を行う。ＲＯＭ２５４には各種の制御プログラムや各制御プログラムが使用するデータが入っており、ＣＰＵ２５５はこれらの制御プログラムに従ってデバイスの各部を制御する。ここでは例として情報処理装置２０１とデバイス２５１の処理分担を上記のように示したが、特にこの分担形態限らず他の形態であっても構わない。
【００１６】
図３を用いて、情報処理装置２０１（１０５、１０６）のソフトウェア構成図を説明する。アプリケーション３０１が作成したアプリケーションデータは、ＯＳの印刷サポート機能３０２を介しスプールデータ３０５としてスプーラ３０３のプリントキュー３０４に一時的に蓄積される。蓄積されたスプールデータ３０５は、コマンド生成フィルタ３０６によりデバイスが解釈可能な印刷データに変換された後に、デバイスに送信される。なお、コマンド生成フィルタ３０６は、プリンタドライバのフィルタである。アプリケーション３０１は印刷指示を行う際にＯＳの印刷サポート機能３０２を介して、ＯＳのユーザインタフェースモジュール３０７から返却された印刷設定情報をアプリケーションデータに付加する。印刷設定情報は、アプリケーション３０１からの印刷開始指示に先立って設定された情報である。コマンド生成フィルタ３０６は、入力されたアプリケーションデータと印刷設定情報に基づいて、デバイスが解釈可能な印刷データを生成する。その後、コマンド生成フィルタ３０６から出力された印刷データは、スプーラ３０３により順次読み出され、ネットワークポートモニタ３０８を経由しデバイスへ送信される。ネットワークポートモニタ３０８は、必要に応じてユーザインタフェースモジュール３０９を用いてユーザの指示を受け付け可能なユーザインタフェースを表示するための表示制御処理を実行する。ユーザインタフェースモジュール３０９は、表示されたユーザインタフェースを介してユーザの指示を受け付けるとともに、その結果をネットワークポートモニタ３０８に通知する。ネットワークポートモニタ３０８は、デバイスとコマンド生成フィルタ３０６が紐付けられた図８のポート情報８０１を情報処理装置２０１のＲＡＭ２０５、及び外部記憶装置２０６に格納している。ネットワークポートモニタ３０８はこのポート情報８０１を用いて印刷データをデバイスへ送信する。ここでポート情報８０１の生成方法について説明する。印刷用に使用されるデバイスのデバイスドライバがインストールされた場合、ネットワークポートモニタ３０８は、ブロードキャストで機種情報要求コマンドを発行する。そして、機種情報要求コマンドに対する応答として印刷用に使用されるデバイスと同一識別情報（例えば同一名称）のデバイスが機種情報応答コマンドを応答した場合、そのデバイスの応答内容を用いて図８のポート情報を生成する。図８の置き換えモード指定部に登録された情報は、後述の実施例２の処理に使用される。なお、本願の実施例１および実施例２の処理は、図１０の画面においてプリンタ置換え機能を有効にするが設定された場合に実行される。
【００１７】
＜実施例１＞
図４のフローチャートを用いて、本発明の実施例１におけるネットワークポートモニタ３０８の処理の流れを説明する。なお、本願のフローチャートは、ＣＰＵ２０３がフローチャートに関係するプログラムをメモリから読み出して実行することで実現される。
【００１８】
ネットワークポートモニタ３０８はステップＳ４０１において、一定時間内に印刷データの送受信が可能かどうかの検知を行う。ネットワークポートモニタ３０８は、コマンド生成フィルタ３０６を経て送信された印刷データをデバイスへ送信する送信処理を試みる。ネットワークポートモニタ３０８はデバイスへ印刷データの送信処理を試みる前に、送信先のデバイスが正しく機能していることを確認するために、機種判別コマンドの取得を行う。機種判別コマンドを取得するために、ネットワークポートモニタ３０８は、図９（ａ）に示した機種情報要求コマンド９０１をネットワーク２３１上にブロードキャストメッセージとして送信する。送信先のデバイスが正しく機能している場合は直ちに図９（ｂ）に示した機種情報応答コマンド９０２が情報処理装置２０１に返信される。ネットワークポートモニタ３０８は、返信された機種情報応答コマンド９０２内の機種情報部およびＩＰヘッダに含まれる固定アドレス情報と情報処理装置２０１に格納されたポート情報８０１内の機種情報とを比較する。比較した結果、機種情報および固定アドレス情報が一致する場合、ネットワークポートモニタ３０８は、デバイスが正しく検知できたと判定する。この検知があらかじめ決められた一定時間内に出来なかった場合、ステップＳ４０２に進む。ステップＳ４０２において、ネットワークポートモニタ３０８は図５に示したユーザインタフェースダイアログ５０１の表示を行う。このユーザインタフェースダイアログ５０１に「新しい接続先のデバイスを検索しますか？」というメッセージを表示し、ユーザのダイアログ５０１に対する指示結果を受け取る。ここでネットワークポートモニタ３０８は、図５のユーザインタフェースダイアログ５０１を介して指示された結果を受け付け、新たな検索を行う要求があったか否かを判定する（Ｓ４０３）。つまり、ユーザが新しいデバイスの検索を行う旨を入力し（ユーザが「はい」ボタンを指示し）、ネットワークポートモニタ３０８がその結果を受け取った場合、ステップＳ４０４に進む。
【００１９】
ステップＳ４０４において、ネットワークポートモニタ３０８は、まず新たなデバイスの検索を行う。新たなデバイスの検索は機種判別コマンドの取得によって行われる。機種判別コマンドを取得するために、ネットワークポートモニタ３０８は、図９（ａ）に示した機種情報要求コマンド９０１をネットワーク２３１上にブロードキャストメッセージとして送信する。ネットワークポートモニタ３０８はブロードキャストメッセージに応答した全ての新たなデバイスのうち、機種情報応答コマンド９０２内の機種情報部とポート情報８０１内の機種情報とが同一の新たなデバイスのみが列挙されたデバイス選択画面を表示する。例えば、機種情報が同じであるとは、デバイス名称が同じ、デバイス識別情報が同じ等である。Ｓ４０４にて表示されるデバイス選択画面の一例を図６に示す。
【００２０】
図６の画面が表示された後、ステップＳ４０５において、ネットワークポートモニタ３０８は、ユーザによって図６の画面に列挙された新たなデバイスの中から新たな接続先デバイスが選択されたかどうかの判定を行う。つまり、ユーザが図６の画面において新たなデバイス（図６の例では、１行目のデバイスまたは２行目のデバイス）を選択して設定ボタンが指示されたか否かが判定される。
【００２１】
Ｓ４０５において、新たな接続先が選択されたと判定された場合はステップＳ４０６へ進む。ステップＳ４０６において、ネットワークポートモニタ３０８は、機種情報応答コマンド９０２を用いて、ポート情報８０１内のデバイスの固定アドレス部および可変アドレス部を新たに選択されたデバイスの固定アドレスおよび可変アドレスへ置換える。つまり、ネットワークポートモニタ３０８は、選択対象デバイスと同じデバイス識別情報を持つデバイスの送信先情報を用いて図８のポート情報（ネットワーク情報とも呼ぶ）を変更する。
【００２２】
続いて、ネットワークポートモニタ３０８は、置き換えられた新しい固定アドレス（ＭＡＣアドレス）および新しい可変アドレス（ＩＰアドレス）を元に、印刷データの送信を続行する。置換えの対象となるのは、図６の画面において新たに選択されたデバイスである。
【００２３】
ここで本実施例の効果の一例について説明する。ユーザが情報処理装置Ａ１０５からデバイスＡ１０１を選択して印刷やスキャンを行っていた状態でデバイスＡ１０１が故障などの理由により使用不可能となった場合を想定する。ユーザは代替デバイスとして、デバイスＡ１０１と同一機種のデバイスＢ１０２、デバイスＣ１０３を新たな接続先として使用することを希望する。この時、本実施例によれば、変更前に使っていたデバイスと同一種類のデバイスが新たな接続先の候補として表示される（例えば図６）ため、ユーザは、例えば固定アドレス（ＭＡＣアドレス）の異なるデバイスを新たな接続先として選択できる。そして、ネットワークポートモニタ３０８は、図８のポート情報を新たな接続先のデバイスの情報に置換える。そのため、ネットワークポートモニタ３０８は、固定アドレス（ＭＡＣアドレス）の異なるデバイスに対しても印刷データ等の送信を続行できる。つまり、新たな接続先のデバイスドライバを再度インストールしたり、ネットワーク情報を再度設定する必要がなくなりユーザの操作性が向上する。なお、本実施例では、図６の画面を使ってユーザが所望とするデバイスを選択できるので、ユーザの意図しないデバイスが新たな接続先として設定されるおそれも防止できる。
【００２４】
＜実施例２＞
実施例１においては、図６のデバイス選択画面を表示して新たな接続先のデバイスを決めていた。本実施例２では、図６のデバイス選択画面を表示せずに新たな接続先を設定する処理について説明する。
【００２５】
図７のフローチャートを用いて、本発明の実施例２におけるネットワークポートモニタ３０８の処理の流れを説明する。実施例２においては、実施例１と異なり、図５および図６のユーザインタフェースダイアログの表示を行わないという違いがある。後述するＳ７０２の判定処理は、情報処理装置２０１のＲＡＭ２０５に格納されたポート情報８０１内の置換え指定部に登録された内容によって切り替えられる。
【００２６】
ネットワークポートモニタ３０８はステップＳ７０１の処理を行う。なお、Ｓ７０１の処理は、Ｓ４０１と同じであるため詳細な説明は省略する。ステップＳ７０２において、ネットワークポートモニタ３０８は、図８の置き換えモード指定部の内容を見てＳ７０２の判定を行う。ネットワークポートモニタ３０８が図８のポート情報を作成する際に取得した機種情報応答コマンドにＵＩ表示モードかＵＩ非表示モードかが含まれる。ＵＩ表示モードが機種情報応答コマンドに含まれていた場合、図８の置き換えモード指定部にはＵＩ表示モードが設定される。一方、ＵＩ非表示モードが機種情報応答コマンドに含まれていた場合、図８の置き換えモード指定部にはＵＩ非表示モードが設定される。ネットワークポートモニタ３０８は、図８の置換モード指定部にＵＩ表示モードが登録されていた場合、Ｓ７０２においてＹｅｓと判定し実施例１のＳ４０２以降の処理を実行する。一方、図８の置換モード指定部にＵＩ非表示モードが登録されていた場合、ネットワークポートモニタ３０８は、Ｓ７０２においてＮｏと判定し、ブロードキャストにて機種情報要求コマンド９０１を発行する。ネットワークポートモニタ３０８は、Ｓ７０３で発行されたコマンドに対する機種情報応答コマンドを受信した順番に判定する（Ｓ７０４）。つまり、ネットワークポートモニタ３０８は、機種情報応答コマンドに、固定モードを示す情報および印刷用に選択されたデバイスの機種情報（図８の機種情報部）と同一の機種情報が含まれているかを判定する。もし、両者の情報が機種情報応答コマンドに含まれていない場合（Ｓ７０４−Ｎｏ）、ネットワークポートモニタ３０８は、次に受信した機種情報応答コマンドを判定対象として選択し（Ｓ７０５）、再度、Ｓ７０４の判定処理を実行する。
【００２７】
Ｓ７０４において、両者の情報が機種情報応答コマンドに含まれていた場合（Ｓ７０４−Ｙｅｓ）、ネットワークポートモニタ３０８は、Ｓ７０６、Ｓ７０７の処理を実行する。なお、Ｓ７０６、Ｓ７０７の処理は、実施例１のＳ４０６、Ｓ４０７と同じであるため詳細な説明は省略する。よって、実施例２では、固定モードを示す情報および印刷用に選択されたデバイスの機種情報（図８の機種情報部）と同一の機種情報を含む機種情報応答コマンドを複数のデバイスが送信した場合、最初に機種情報応答コマンドを送信したデバイスが次の送信先として選択される。
【００２８】
例えば、ユーザは、情報処理装置２０１とデバイスＡをネットワークで一対一で接続して使用し、デバイスＡ用のデバイスドライバを用いて出力処理を実行する。後日、ユーザが、同じ情報処理装置２０１と、デバイスＡと同一機種のデバイスＢを使ってネットワーク接続する場合を想定する。ここで、ユーザが使用するデバイスがデバイスＡからデバイスＢに変わっているため、固定アドレス（ＭＡＣアドレス）も変わる。本実施例２によれば、そのような場合でも、ユーザの操作を受け付けることなく自動的にデバイスＡ用に作成されたポート情報を新たなデバイスＢ用の内容に変更することで、ひき続きデバイスＢに対して印刷データを送信できる。
【００２９】
［他の実施例］
また、本発明は、以下の処理を実行することによっても実現される。
【００３０】
即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００３１】
３０８  ネットワークポートモニタ
【図１】
2015153126.tif 000003
【図２】
2015153126.tif 000004
【図３】
2015153126.tif 000005
【図４】
2015153126.tif 000006
【図５】
2015153126.tif 000007
【図６】
2015153126.tif 000008
【図７】
2015153126.tif 000009
【図８】
2015153126.tif 000010
【図９】
2015153126.tif 000011
【図１０】
2015153126.tif 000012