(57)【要約】【課題】  新たなポートが生成されるのを抑制すること。【解決手段】  端末装置１０の制御部３０は、プリンタドライバをインストールするためのプログラム２２に従って、以下の処理を実行する。制御部３０は、プリンタ６０に現在設定されているＩＰアドレスの設定手法を示す設定手法情報を取得する。制御部３０は、プリンタドライバがインストールされる際に、プリンタ６０に対応するプリンタポートを生成する。制御部３０は、設定手法情報がＳｔａｔｉｃを示す場合に、プリンタ６０に現在設定されているＩＰアドレスを用いて、プリンタポートを生成する。また、制御部３０は、設定手法情報がＤＨＣＰを示す場合に、プリンタに現在設定されているノード名を用いて、プリンタポートを生成する。【選択図】  図１
2011076165.tif 000002
【特許請求の範囲】
【請求項１】
デバイスのためのデバイスドライバがインストールされる端末装置であって、
前記デバイスから、前記デバイスに現在設定されている第１のＩＰアドレスの設定手法を示す設定手法情報を取得する取得部と、
前記デバイスドライバが前記端末装置にインストールされる際に、前記デバイスに対応するポートを生成するポート生成部と、を備え、
前記ポート生成部は、
前記設定手法情報が第１種の設定手法であって、ユーザがＩＰアドレスを前記デバイスに対して入力することによって、当該ＩＰアドレスが前記デバイスに設定される手法である前記第１種の設定手法を示す第１の場合に、前記デバイスに現在設定されている前記第１のＩＰアドレスを用いて、前記ポートを生成し、
前記設定手法情報が、前記第１種の設定手法と異なる第２種の設定手法を示す第２の場合に、前記デバイスに現在設定されているデバイス名を用いて、前記ポートを生成する、端末装置。
【請求項２】
前記ポート生成部は、さらに、前記設定手法情報が、前記第１種の設定手法及び前記第２種の設定手法と異なる第３種の設定手法であって、第１のサーバがユーザによって入力されたＩＰアドレスを前記デバイスに送信することによって、当該ＩＰアドレスが前記デバイスに設定される手法である前記第３種の設定手法を示す第３の場合に、前記デバイスに現在設定されている前記第１のＩＰアドレスを用いて、前記ポートを生成する、請求項１に記載の端末装置。
【請求項３】
前記第２の場合に、名前解決によって前記デバイス名に対応する対応ＩＰアドレスを取得可能であるのか否かを確認する確認部をさらに備え、
前記ポート生成部は、
前記名前解決によって前記対応ＩＰアドレスを取得可能であることが確認される第４の場合に、前記デバイス名を用いて、前記ポートを生成し、
前記名前解決によって前記対応ＩＰアドレスを取得不可能であることが確認される第５の場合に、第２のＩＰアドレスを用いて、前記ポートを生成する、請求項１又は２に記載の端末装置。
【請求項４】
前記第５の場合に、前記デバイスに新たに設定されるべき前記第２のＩＰアドレスを準備する第１の準備部と、
前記第５の場合に、前記第２のＩＰアドレスを前記デバイスに送信することによって、前記デバイスに前記第２のＩＰアドレスを新たに設定する設定部と、をさらに備える、請求項３に記載の端末装置。
【請求項５】
前記第４の場合に、前記デバイスに現在設定されている前記第１のＩＰアドレスと前記対応アドレスとが一致するのか否かを判断する判断部をさらに備え、
前記ポート生成部は、
前記第１のＩＰアドレスと前記対応ＩＰアドレスとが一致すると判断される第６の場合に、前記デバイス名を用いて、前記ポートを生成し、
前記第１のＩＰアドレスと前記対応ＩＰアドレスとが一致しないと判断される第７の場合に、前記デバイスに新たに設定されるべき前記第２のＩＰアドレスを用いて、前記ポートを生成する、請求項３又は４に記載の端末装置。
【請求項６】
前記デバイスに現在設定されている前記第１のＩＰアドレスが、予め決められているアルゴリズムに従って前記デバイス自身によって生成されたものである第８の場合に、前記デバイスに新たに設定されるべき第３のＩＰアドレスを準備する第２の準備部と、
前記第３のＩＰアドレスをユーザに提示する提示部と、をさらに備え、
前記ポート生成部は、前記第８の場合に、前記デバイスに新たに設定されるべき前記第３のＩＰアドレスを用いて、前記ポートを生成する、請求項１から５のいずれか一項に記載の端末装置。
【請求項７】
前記取得部は、さらに、前記デバイスから、前記デバイスに現在設定されている前記第１のＩＰアドレス及び前記デバイス名の少なくとも一方を取得し、
前記ポート生成部は、
前記第１の場合に、取得済みの前記第１のＩＰアドレスを用いて、前記ポートを生成し、
前記第２の場合に、取得済みの前記デバイス名を用いて、前記ポートを生成する、請求項１から６のいずれか一項に記載の端末装置。
【請求項８】
デバイスのためのデバイスドライバを端末装置にインストールするためのコンピュータプログラムであって、
前記端末装置に搭載されるコンピュータに、以下の各処理、即ち、
前記デバイスから、前記デバイスに現在設定されている第１のＩＰアドレスの設定手法を示す設定手法情報を取得する取得処理と、
前記デバイスドライバが前記端末装置にインストールされる際に、前記デバイスに対応するポートを生成するポート生成処理と、を実行させ、
前記ポート生成処理では、
前記設定手法情報が第１種の設定手法であって、ユーザがＩＰアドレスを前記デバイスに対して入力することによって、当該ＩＰアドレスが前記デバイスに設定される手法である前記第１種の設定手法を示す第１の場合に、前記デバイスに現在設定されている前記第１のＩＰアドレスを用いて、前記ポートを生成し、
前記設定手法情報が、前記第１種の設定手法と異なる第２種の設定手法を示す第２の場合に、前記デバイスに現在設定されているデバイス名を用いて、前記ポートを生成する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書によって開示される技術は、デバイスのためのデバイスドライバがインストールされる端末装置に関する。
【背景技術】
【０００２】
例えば、特許文献１には、特定のプリンタのためのプリンタドライバがインストールされる端末装置が開示されている。端末装置は、プリンタドライバがインストールされる際に、上記の特定のプリンタのＩＰアドレス及びＭＡＣアドレスを取得し、当該ＩＰアドレスを用いて、上記の特定のプリンタに対応するプリンタポートを生成する。端末装置は、上記の特定のプリンタに印刷を実行させるべき場合に、生成済みのプリンタポートに対応する上記のＩＰアドレスを用いて、上記の特定のプリンタに対するユニキャスト通信が可能であるのか否かを確認する。端末装置は、上記の特定のプリンタに対するユニキャスト通信が可能であることが確認される場合に、上記のＩＰアドレスを送信先として、印刷されるべきデータを送信する。一方において、例えば、上記の特定のプリンタのＩＰアドレスが、ＤＨＣＰ（Dynamic Host Configuration Protocol）サーバ等によって、新たなＩＰアドレスに変更される場合には、上記の特定のプリンタに対するユニキャスト通信が不可能であることが確認される。この場合、端末装置は、取得済みのＭＡＣアドレスを含むコマンドを、ネットワークに接続されている全てのプリンタに送信する。当該ＭＡＣアドレスを有する上記の特定のプリンタは、上記の新たなＩＰアドレスを含む応答を送信する。端末装置は、上記の新たなＩＰアドレスを用いて、新たなプリンタポートを生成し、上記の新たなＩＰアドレスを送信先として、印刷されるべきデータを送信する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−１４０９５７号公報
【特許文献２】特開２００６−２５２０９５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述したように、特許文献１の技術では、上記の特定のプリンタのＩＰアドレスが変更される場合に、端末装置は、上記の特定のプリンタに対応する新たなプリンタポートを生成する必要がある。新たなプリンタポートが生成される際には、端末装置のリソース（例えばＣＰＵ、メモリ等）が使用される。従って、新たなプリンタポートが生成されるのを抑制することが好ましい。
【０００５】
本明細書では、従来と比べて、新たなポートが生成されるのを抑制することができる技術を開示する。
【課題を解決するための手段】
【０００６】
本明細書では、デバイスのためのデバイスドライバがインストールされる端末装置を開示する。端末装置は、取得部とポート生成部とを備える。取得部は、デバイスから、デバイスに現在設定されている第１のＩＰアドレスの設定手法を示す設定手法情報を取得する。ポート生成部は、デバイスドライバが端末装置にインストールされる際に、デバイスに対応するポートを生成する。ポート生成部は、設定手法情報が第１種の設定手法を示す第１の場合に、デバイスに現在設定されている第１のＩＰアドレスを用いて、ポートを生成する。第１種の設定手法は、ユーザがＩＰアドレスをデバイスに対して入力することによって、当該ＩＰアドレスがデバイスに設定される手法である。また、ポート生成部は、設定手法情報が、第１種の設定手法と異なる第２種の設定手法を示す第２の場合に、デバイスに現在設定されているデバイス名を用いて、ポートを生成する。
【０００７】
上記の構成では、端末装置は、設定手法情報を取得するので、設定手法情報に基づいてポートを生成することにより、新たなポートが生成されるのを抑制することができる。具体的には、設定手法情報が第１種の設定手法を示す第１の場合に、端末装置は、デバイスに現在設定されている第１のＩＰアドレスを用いて、ポートを生成する。第１の場合には、デバイスのＩＰアドレスは、通常、変更されない。このために、ＩＰアドレスを用いてポートが生成されても、デバイスのＩＰアドレスが変更されることに起因して、新たなポートが生成されるのを抑制することができる。また、上記の構成では、設定手法情報が第２種の設定手法を示す第２の場合（例えばＤＨＣＰサーバ等によってデバイスにＩＰアドレスが割り当てられる場合）に、端末装置は、デバイスに現在設定されているデバイス名を用いて、ポートを生成する。第２の場合には、デバイスのＩＰアドレスが変更される可能性が高い。このために、仮に、ＩＰアドレスを用いてポートが生成されると、ＩＰアドレスの変更に伴って新たなポートを生成する必要がある。ただし、デバイスのデバイス名は、通常、変更されない。このために、デバイス名を用いてポートを生成すれば、新たなポートが生成されるのを抑制することができる。
【０００８】
ポート生成部は、さらに、設定手法情報が、第１種の設定手法及び第２種の設定手法と異なる第３種の設定手法を示す第３の場合に、デバイスに現在設定されている第１のＩＰアドレスを用いて、ポートを生成してもよい。第３種の設定手法は、第１のサーバがユーザによって入力されたＩＰアドレスをデバイスに送信することによって、当該ＩＰアドレスがデバイスに設定される手法であってもよい。第３の場合には、通常、デバイスのＩＰアドレスは変更されない。従って、上記の構成では、第３の場合に、端末装置は、デバイスに現在設定されている第１のＩＰアドレスを用いて、ポートを生成する。
【０００９】
端末装置は、第２の場合に、名前解決によってデバイス名に対応する対応ＩＰアドレスを取得可能であるのか否かを確認する確認部をさらに備えていてもよい。ポート生成部は、名前解決によって対応ＩＰアドレスを取得可能であることが確認される第４の場合に、デバイス名を用いて、ポートを生成してもよい。ポート生成部は、名前解決によって対応ＩＰアドレスを取得不可能であることが確認される第５の場合に、第２のＩＰアドレスを用いて、ポートを生成してもよい。この構成によると、端末装置は、名前解決によって対応ＩＰアドレスを取得可能であるのか否かに応じて、デバイス名及び第２のＩＰアドレスのどちらを用いてポートを生成するのかを決定することができる。
【００１０】
端末装置は、第１の準備部と設定部とをさらに備えていてもよい。第１の準備部は、第５の場合に、デバイスに新たに設定されるべき上記の第２のＩＰアドレスを準備してもよい。設定部は、第５の場合に、第２のＩＰアドレスをデバイスに送信することによって、デバイスに第２のＩＰアドレスを新たに設定してもよい。この構成によると、名前解決によって対応ＩＰアドレスを取得不可能である第５の場合に、端末装置は、デバイスに新たな第２のＩＰアドレスを設定することができる。
【００１１】
端末装置は、第４の場合に、デバイスに現在設定されている第１のＩＰアドレスと対応アドレスとが一致するのか否かを判断する判断部をさらに備えていてもよい。ポート生成部は、第１のＩＰアドレスと対応ＩＰアドレスとが一致すると判断される第６の場合に、デバイス名を用いて、ポートを生成してもよい。また、端末装置は、第１のＩＰアドレスと対応ＩＰアドレスとが一致しないと判断される第７の場合に、デバイスに新たに設定されるべき第２のＩＰアドレスを用いて、ポートを生成してもよい。第１のＩＰアドレスと対応ＩＰアドレスとが一致する第６の場合は、名前解決が適切に機能していることを意味する。従って、上記の構成では、第６の場合に、端末装置は、デバイス名を用いて、ポートを生成する。一方において、第１のＩＰアドレスと対応ＩＰアドレスとが一致しない第７の場合は、名前解決が適切に機能していないことを意味する。従って、上記の構成では、第７の場合に、端末装置は、デバイス名を用いずに、第２のＩＰアドレスを用いて、ポートを生成する。この構成によると、端末装置は、名前解決が適切に機能しているのか否かに応じて、デバイス名及び第２のＩＰアドレスのどちらを用いてポートを生成するのかを決定することができる。
【００１２】
端末装置は、第２の準備部と提示部とをさらに備えていてもよい。第２の準備部は、デバイスに現在設定されている第１のＩＰアドレスが、予め決められているアルゴリズムに従ってデバイス自身によって生成されたものである第８の場合に、デバイスに新たに設定されるべき第３のＩＰアドレスを準備してもよい。提示部は、第３のＩＰアドレスをユーザに提示してもよい。ポート生成部は、第８の場合に、デバイスに新たに設定されるべき第３のＩＰアドレスを用いて、ポートを生成してもよい。上記のアルゴリズムに従って生成されたＩＰアドレスがデバイスに設定されている第８の場合には、デバイスが他のデバイスとユニキャスト通信することができない状況が発生し得る。例えば、上記のアルゴリズムと異なる手法に従って他のデバイスにＩＰアドレスが設定されている場合には、デバイスは、当該他のデバイスとユニキャスト通信することが困難である。上記の構成では、第８の場合に、端末装置は、第３のＩＰアドレスをユーザに提示する。ユーザは、第３のＩＰアドレスをデバイスに新たに設定し得る。即ち、ユニキャスト通信を適切に実行し得る第３のＩＰアドレスが、ユーザによってデバイスに新たに設定され得る。第３のＩＰアドレスがユーザによってデバイスに新たに設定された場合には、通常、第３のＩＰアドレスは変更されない。従って、上記の構成では、第８の場合に、端末装置は、第３のＩＰアドレスを用いて、ポートを生成する。
【００１３】
取得部は、さらに、デバイスから、デバイスに現在設定されている第１のＩＰアドレス及びデバイス名の少なくとも一方を取得してもよい。ポート生成部は、第１の場合に、取得済みの第１のＩＰアドレスを用いて、ポートを生成してもよい。ポート生成部は、第２の場合に、取得済みのデバイス名を用いて、ポートを生成してもよい。
【００１４】
なお、上記の端末装置を実現するための制御方法及びコンピュータプログラムも、新規で有用である。また、上記の端末装置と上記のデバイスとを含むシステムも、新規で有用である。
【図面の簡単な説明】
【００１５】
【図１】ネットワークシステムの構成の一例を示す。
【図２】第１実施例の端末装置が実行する処理のフローチャートを示す。
【図３】第２実施例の端末装置が実行する処理のフローチャートを示す。
【図４】第３実施例の端末装置が実行する処理のフローチャートを示す。
【発明を実施するための形態】
【００１６】
（第１実施例）
（システムの構成）
図面を参照して第１実施例を説明する。図１に示されるように、ネットワークシステム２は、ＬＡＮ４と、端末装置１０と、プリンタ６０と、複数のサーバ６２〜６８と、を備える。各デバイス１０，６０，６２〜６８は、ＬＡＮ４に接続されている。各デバイス１０等は、ＬＡＮ４を介して、相互に通信可能である。
【００１７】
（端末装置１０の構成）
本実施例の端末装置１０はＰＣである。端末装置１０は、操作部１２と、表示部１４と、ネットワークインターフェイス１６と、記録媒体読取部１８と、記憶部２４と、制御部３０と、を備える。操作部１２は、マウスとキーボードとによって構成される。ユーザは、操作部１２を操作することによって、様々な指示を端末装置１０に入力することができる。表示部１４は、様々な情報を表示するためのディスプレイである。ネットワークインターフェイス１６は、ＬＡＮ４に接続されている。記録媒体読取部１８は、記録媒体２０に格納されているデータ（例えばプログラム２２）を読み取る。記録媒体２０は、データを格納するためのＣＤ、ＤＶＤ等の媒体であり、プリンタ６０のベンダによって製造されたものである。記録媒体２０は、プリンタ６０の出荷時には、プリンタ６０と共にパッケージされている。記録媒体２０に含まれるプログラム２２は、プリンタ６０のためのプリンタドライバと、当該プリンタドライバをインストールするためのプログラムと、を含む。記憶部２４は、ＯＳ（Operating System）プログラム２６を記憶する。記憶部２４は、様々なデータが格納されるワーク領域２８を有する。制御部３０は、プログラム２２，２６に従って、様々な処理を実行する。制御部３０がプログラム２２に従って処理を実行することによって、各部３２〜４６の機能が実現される。
【００１８】
（他のデバイス６０〜６８の構成）
プリンタ６０は、少なくとも印刷機能を有するデバイスである。プリンタ６０は、スキャナ機能、コピー機能、ＦＡＸ機能、電話機能等をさらに有する多機能機であってもよい。プリンタ６０は、ベンダによって予め決められるＭＡＣアドレスを有する。また、プリンタ６０には、ノード名が設定されている。プリンタ６０の出荷時には、プリンタ６０には、デフォルトのノード名が設定されている。ユーザは、プリンタ６０の操作部（図示省略）を操作することによって、所望のノード名をプリンタ６０に入力することができる。この結果、プリンタ６０には、デフォルトのノード名に代えて、入力されたノード名が設定される。さらに、プリンタ６０には、ＩＰアドレスが設定されている。ＩＰアドレスの設定手法については、後で詳しく説明する。なお、以下では、「デバイス（例えばプリンタ６０）に設定されているＩＰアドレス（又はノード名）」、及び、「デバイスのＩＰアドレス（又はノード名）」という用語を使用することがあるが、これらの用語は、例えば、「デバイスが自己のＩＰアドレス（又はノード名）として使用しているＩＰアドレス（又はノード名）」と言い換えることができる。
【００１９】
ＤＨＣＰサーバ６２は、ＬＡＮ４に接続されている対象デバイス（例えばプリンタ６０）にＩＰアドレスを割り当てる。例えば、ＤＨＣＰサーバ６２は、対象デバイスの電源がＯＮされた際に、ＬＡＮ４に接続されている他のデバイスに設定されていないＩＰアドレスを対象デバイスに送信する。この結果、対象デバイスは、ＤＨＣＰサーバ６２から送信されるＩＰアドレスを、自己のＩＰアドレスとして、新たに設定する。ＢＯＯＴＰ（Bootstrap Protocol）サーバ６４は、ＤＨＣＰサーバ６２と同様の処理を実行することによって、ＬＡＮ４に接続されている対象デバイス（例えばプリンタ６０）にＩＰアドレスを割り当てる。なお、ＤＨＣＰサーバ６２及びＢＯＯＴＰサーバ６４は、まとめて、「ＩＰアドレス割り当てサーバ」と呼ぶこともできる。
【００２０】
ＲＡＲＰ（Reverse Address Resolution Protocol）サーバ６６は、ＬＡＮ４に接続されている対象デバイス（例えばプリンタ６０）に設定されるべきＩＰアドレスと、対象デバイスのＭＡＣアドレスと、を対応づけて記憶する。例えば、ユーザは、ＲＡＲＰサーバ６６の操作部（図示省略）を操作することによって、対象デバイスに設定されるべきＩＰアドレスと、対象デバイスのＭＡＣアドレスと、をＲＡＲＰサーバ６６に入力してもよい。この場合、ＲＡＲＰサーバ６６は、ユーザによって自身に入力されたＩＰアドレスとＭＡＣアドレスとを対応づけて記憶する。また、例えば、ユーザは、端末装置１０の操作部１２を操作することによって、対象デバイスに設定されるべきＩＰアドレスと、対象デバイスのＭＡＣアドレスと、を端末装置１０に入力してもよい。この場合、端末装置１０は、当該ＩＰアドレスと当該ＭＡＣアドレスとをＲＡＲＰサーバ６６に送信する。この結果、ＲＡＲＰサーバ６６は、ユーザによって端末装置１０に入力されたＩＰアドレスとＭＡＣアドレスとを対応づけて記憶する。対象デバイスは、例えば、自身の電源がＯＮされた際に、自己のＭＡＣアドレスを含むコマンドをＲＡＲＰサーバ６６に送信する。ＲＡＲＰサーバ６６は、上記のコマンドに含まれるＭＡＣアドレスに対応づけられているＩＰアドレスを含む応答を送信する。この結果、対象デバイスは、ＲＡＲＰサーバ６６から送信される応答に含まれるＩＰアドレスを、自己のＩＰアドレスとして、新たに設定する。
【００２１】
ＤＮＳ（Domain Name System）サーバ６８は、ＤＨＣＰサーバ６２又はＢＯＯＴＰサーバ６４によってＩＰアドレスが割り当てられる各デバイス（例えばプリンタ６０）について、当該デバイスに設定されているＩＰアドレスと、当該デバイスに設定されているノード名と、を対応づけて記憶する。例えば、ＤＨＣＰサーバ６２又はＢＯＯＴＰサーバ６４は、対象デバイスにＩＰアドレスを割り当てた際に、当該ＩＰアドレスと対象デバイスのノード名とをＤＮＳサーバ６８に送信する。この結果、ＤＮＳサーバ６８は、ＤＨＣＰサーバ６２又はＢＯＯＴＰサーバ６４から送信されるＩＰアドレスとノード名とを対応づけて記憶する。ＬＡＮ４に接続されているデバイス（例えば端末装置１０）は、当該デバイスが通信すべき他のデバイスのノード名をＤＮＳサーバ６８に送信することによって、当該ノード名に対応づけられているＩＰアドレスをＤＮＳサーバ６８から取得することができる。
【００２２】
（プリンタ６０にＩＰアドレスを設定するための手法）
本実施例では、プリンタ６０にＩＰアドレスを設定するための手法として、「Ｓｔａｔｉｃ」と「ＤＨＣＰ」と「ＢＯＯＴＰ」と「ＲＡＲＰ」と「ＡＵＴＯ」とを含む複数種類の設定手法が存在する。本実施例では、ユーザは、プリンタ６０の操作部を操作することによって、プリンタ６０にＩＰアドレスを設定する。しかしながら、ユーザは、例えば、ＵＳＢケーブル等を用いて、プリンタ６０を端末装置１０に接続し、端末装置１０の操作部１２を操作することによって、プリンタ６０にＩＰアドレスを設定してもよい。ユーザは、プリンタ６０の操作部を操作することによって、上記の複数種類の設定手法の中から１種類の設定手法を選択する。
【００２３】
（Ｓｔａｔｉｃ）
設定手法「Ｓｔａｔｉｃ」が選択された場合には、ユーザは、プリンタ６０の操作部を操作することによって、プリンタ６０に設定されるべきＩＰアドレスをプリンタ６０に入力する。プリンタ６０は、入力されたＩＰアドレスを、自己のＩＰアドレスとして、新たに設定する。この場合、プリンタ６０は、自己のＩＰアドレスの設定手法が「Ｓｔａｔｉｃ」であることを示す設定手法情報を記憶する。
【００２４】
（ＤＨＣＰ又はＢＯＯＴＰ）
設定手法「ＤＨＣＰ」又は「ＢＯＯＴＰ」が選択された場合には、プリンタ６０は、ＤＨＣＰサーバ６２又はＢＯＯＴＰサーバ６４にコマンドを送信することによって、ＬＡＮ４に接続されている他のデバイスに設定されていないＩＰアドレスをＤＨＣＰサーバ６２又はＢＯＯＴＰサーバ６４から取得する。プリンタ６０は、取得されたＩＰアドレスを、自己のＩＰアドレスとして、新たに設定する。この場合、プリンタ６０は、自己のＩＰアドレスの設定手法が「ＤＨＣＰ」又は「ＢＯＯＴＰ」であることを示す設定手法情報を記憶する。なお、ＩＰアドレス割り当てサーバ（ＤＨＣＰサーバ６２、ＢＯＯＴＰサーバ６４）は、プリンタ６０にＩＰアドレスを貸し出す機能を有するサーバであると表現することもできる。ＩＰアドレス割り当てサーバによって貸し出されるＩＰアドレスは、プリンタ６０において永続的に利用されるものではない。従って、設定手法「ＤＨＣＰ」又は「ＢＯＯＴＰ」が選択された場合には、プリンタ６０のＩＰアドレスが変更され得る。
【００２５】
（ＲＡＲＰ）
設定手法「ＲＡＲＰ」が選択された場合には、プリンタ６０は、ＲＡＲＰサーバ６６に自己のＭＡＣアドレスを含むコマンドを送信することによって、当該ＭＡＣアドレスに対応づけられているＩＰアドレスをＲＡＲＰサーバ６６から取得する。なお、ユーザは、設定手法「ＲＡＲＰ」を選択する場合には、プリンタ６０に設定されるべきＩＰアドレスと、プリンタ６０のＭＡＣアドレスと、をＲＡＲＰサーバ６６に予め入力（登録）しておく必要がある。プリンタ６０は、取得したＩＰアドレスを、自己のＩＰアドレスとして、新たに設定する。この場合、プリンタ６０は、自己のＩＰアドレスの設定手法が「ＲＡＲＰ」であることを示す設定手法情報を記憶する。
【００２６】
（ＡＵＴＯ）
設定手法「ＡＵＴＯ」が選択された場合には、プリンタ６０は、ＤＨＣＰ、ＢＯＯＴＰ、及び、ＲＡＲＰの３種類の設定手法の中から１種類の設定手法を選択し、選択された設定手法を用いて、ＩＰアドレスを取得することを試行する第１の試行処理を実行する。第１の試行処理でＩＰアドレスを取得不可能である場合には、プリンタ６０は、残りの２種類の設定手法の中から１種類の設定手法を選択し、選択された設定手法を用いて、ＩＰアドレスを取得することを試行する第２の試行処理を実行する。第２の試行処理でＩＰアドレスを取得不可能である場合には、プリンタ６０は、残りの１種類の設定手法を用いて、ＩＰアドレスを取得することを試行する第３の試行処理を実行する。なお、上記の３種類の設定手法の選択順序は、予め決められている。プリンタ６０は、第１〜第３の試行処理のいずれかで取得されたＩＰアドレスを、自己のＩＰアドレスとして、新たに設定する。この場合、プリンタ６０は、ＩＰアドレスを取得できた試行処理に対応する設定手法（「ＤＨＣＰ」、「ＢＯＯＴＰ」、又は、「ＲＡＲＰ」）を示す設定手法情報を記憶する。なお、これに代えて、プリンタ６０は、自己のＩＰアドレスの設定手法が「ＡＵＴＯ」であることを示す設定手法情報を記憶してもよい。
【００２７】
（ＡＰＩＰＡ（Automatic Private IP Addressing））
設定手法「ＤＨＣＰ」、「ＢＯＯＴＰ」、又は、「ＲＡＲＰ」が選択された場合に、プリンタ６０がＩＰアドレスを取得することができない状況が発生し得る。例えば、選択された設定手法（例えば「ＤＨＣＰ」）に対応するサーバ（例えばＤＨＣＰサーバ６２）が存在しない場合には、プリンタ６０は、ＩＰアドレスを取得することができない。また、例えば、プリンタ６０に設定されるべきＩＰアドレスと、プリンタ６０のＭＡＣアドレスと、がＲＡＲＰサーバ６６に予め登録されていない状態で、「ＲＡＲＰ」が選択された場合には、プリンタ６０は、ＩＰアドレスを取得することができない。「ＤＨＣＰ」、「ＢＯＯＴＰ」、又は、「ＲＡＲＰ」が選択された場合であって、ＩＰアドレスを取得不可能である場合には、プリンタ６０は、ＡＰＩＰＡに従って、自己に設定されるべきＩＰアドレスを生成する。また、「ＡＵＴＯ」が選択された場合であって、上記の第３の試行処理でもＩＰアドレスを取得不可能である場合にも、プリンタ６０は、ＡＰＩＰＡに従って、自己に設定されるべきＩＰアドレスを生成する。プリンタ６０は、ＡＰＩＰＡに従ってＩＰアドレスを生成するためのアルゴリズムを予め記憶している。プリンタ６０は、ＡＰＩＰＡに従って生成されたＩＰアドレスを、自己のＩＰアドレスとして、新たに設定する。ＡＰＩＰＡに従ってＩＰアドレスが設定される場合、プリンタ６０は、「ＡＵＴＯ」を示す設定手法情報を記憶する。なお、これに代えて、プリンタ６０は、ユーザによって選択された設定手法（「ＤＨＣＰ」、「ＢＯＯＴＰ」、「ＲＡＲＰ」、又は、「ＡＵＴＯ」）を示す設定手法情報を記憶してもよい。
【００２８】
（端末装置１０が実行する処理）
続いて、端末装置１０が実行する処理について説明する。ユーザは、プリンタ６０のためのプリンタドライバが端末装置１０にインストールされることを望む場合に、記録媒体２０を記録媒体読取部１８内に格納し、操作部１２において所定の操作を実行する。これにより、制御部３０は、ＯＳプログラム２６に従って、記録媒体読取部１８を起動する。この結果、記録媒体読取部１８は、記録媒体２０に格納されているプログラム２２を読み取り、プログラム２２をワーク領域２８に格納する。これにより、制御部３０は、ワーク領域２８に格納されたプログラム２２に従って、処理を実行することができる。図２は、プログラム２２に従って実行される処理のフローチャートを示す。
【００２９】
取得部３２（図１参照）は、第１のコマンドをブロードキャストする（Ｓ１０）。プログラム２２は、プリンタ６０のためのプログラムであるために、プリンタ６０のモデル名（機種名）を含む。取得部３２は、プログラム２２に含まれるモデル名を含む応答が受信されることを監視する（Ｓ１２）。例えば、プリンタ６０がＬＡＮ４に正常に接続されている状態では、プリンタ６０は、第１のコマンドが受信された場合に、自己のモデル名、自己のＩＰアドレス、自己のノード名、自己のＩＰアドレスの設定手法を示す設定手法情報等を含む第１の応答を端末装置１０に送信する。この結果、取得部３２は、プログラム２２に含まれるモデル名を含む第１の応答を取得し、Ｓ１２でＹＥＳと判断する。一方において、例えば、プリンタ６０がＬＡＮ４に正常に接続されていない状態では、プリンタ６０は、第１のコマンドを受信することができず、第１の応答を送信しない。この場合、取得部３２は、Ｓ１２でＮＯと判断する。
【００３０】
Ｓ１２でＮＯの場合、制御部３０は、警告画面を表示部１４に表示させ（Ｓ１４）、処理を終了する。一方において、Ｓ１２でＹＥＳの場合、取得部３２は、第１の応答に含まれるＩＰアドレス、ノード名、及び、設定手法情報を読み込む（Ｓ１６）。即ち、取得部３２は、プリンタ６０のＩＰアドレス、プリンタ６０のノード名、及び、プリンタ６０のＩＰアドレスの設定手法を示す設定手法情報を読み込む。次いで、ポート生成部３４（図１参照）は、Ｓ１６で読み込まれた設定手法情報が「Ｓｔａｔｉｃ」を示すのか否かを判断する（Ｓ１８）。ここでＹＥＳの場合、ポート生成部３４は、Ｓ１６で読み込まれたプリンタ６０のＩＰアドレスを用いて、プリンタポートを生成する（Ｓ２０）。即ち、ポート生成部３４は、Ｓ１６で読み込まれたプリンタ６０のＩＰアドレスが指定されたプリンタポートを生成する。この結果、プリンタ６０に対応するプリンタポートが生成される。プリンタポートは、記憶部２４に格納される。
【００３１】
Ｓ１６で読み込まれた設定手法情報が「Ｓｔａｔｉｃ」以外の設定手法（「ＤＨＣＰ」、「ＢＯＯＴＰ」、「ＲＡＲＰ」、又は、「ＡＵＴＯ」）を示す場合には、ポート生成部３４は、Ｓ１８でＮＯと判断する。この場合、ポート生成部３４は、Ｓ１６で読み込まれたプリンタ６０のノード名を用いて、プリンタポートを生成する（Ｓ２２）。即ち、ポート生成部３４は、Ｓ１６で読み込まれたプリンタ６０のノード名が指定されたプリンタポートを生成する。この結果、プリンタ６０に対応するプリンタポートが生成される。Ｓ２０又はＳ２２を終えると、制御部３０は、プログラム２２に含まれるプリンタドライバを記憶部２４内の所定の領域に格納することによって、プリンタドライバをインストールする（Ｓ２４）。
【００３２】
Ｓ２０又はＳ２２で生成されるプリンタポートと、Ｓ２４でインストールされるプリンタドライバと、を用いて、印刷が実行される様子を簡単に説明しておく。ユーザは、プリンタ６０に印刷を実行させることを望む場合に、端末装置１０の操作部１２を操作することによって、印刷されるべき対象データを選択する。この場合、制御部３０は、記憶部２４に格納されているプリンタドライバを起動する。プリンタドライバは、対象データを、プリンタ６０が解釈可能なＰＤＬ（Page Description Language）データに変換する。上述したように、Ｓ２０で生成されるプリンタポートでは、プリンタ６０のＩＰアドレスが指定されている。Ｓ２０で生成されるプリンタポートが記憶部２４に格納されている場合には、制御部３０は、プリンタポートにおいて指定されているＩＰアドレスを送信先として、ＰＤＬデータを送信する。この結果、プリンタ６０は、ＰＤＬデータに従って、印刷を実行する。また、Ｓ２２で生成されるプリンタポートでは、プリンタ６０のノード名が指定されている。Ｓ２２で生成されるプリンタポートが記憶部２４に格納されている場合には、制御部３０は、プリンタポートにおいて指定されているノード名を用いて名前解決を実行することによって、プリンタ６０のＩＰアドレスを取得する。名前解決の手法については、後述の第３実施例で詳しく説明する。制御部３０は、取得されたＩＰアドレスを送信先として、ＰＤＬデータを送信する。この結果、プリンタ６０は、ＰＤＬデータに従って、印刷を実行する。
【００３３】
本実施例のネットワークシステム２の構成について詳しく説明した。端末装置１０は、プリンタ６０から設定手法情報を取得するので、当該設定手法情報に基づいてプリンタポートを生成することにより、新たなプリンタポートが生成されるのを抑制することができる。具体的には、プリンタ６０の設定手法情報が「Ｓｔａｔｉｃ」を示す場合に、端末装置１０は、プリンタ６０に現在設定されているＩＰアドレスを用いて、プリンタポートを生成する（Ｓ２０）。「Ｓｔａｔｉｃ」の場合には、プリンタ６０のＩＰアドレスは、通常、変更されない。ユーザ自身によって入力されたＩＰアドレスがプリンタ６０に設定されるからである。このために、ＩＰアドレスを用いてポートが生成されても、プリンタ６０のＩＰアドレスが変更されることに起因して、新たなプリンタポートが生成されるのを抑制することができる。また、上述したように、「Ｓｔａｔｉｃ」以外の設定手法は、「ＤＨＣＰ」と「ＢＯＯＴＰ」とを含む。これらの設定手法では、プリンタ６０のＩＰアドレスが変更される可能性が高い。例えば、プリンタ６０の電源がＯＮされる毎に、プリンタ６０に新たなＩＰアドレスが設定される。このために、仮に、ＩＰアドレスを用いてプリンタポートが生成されると、ＩＰアドレスの変更に伴って新たなプリンタポートを生成する必要がある。従って、本実施例では、プリンタ６０のＩＰアドレスの設定手法が「Ｓｔａｔｉｃ」以外の設定手法である場合には、端末装置１０は、プリンタ６０に現在設定されているノード名を用いて、プリンタポートを生成する（Ｓ２２）。プリンタ６０のノード名は、通常、変更されない。このために、ノード名を用いてプリンタポートを生成すれば、新たなプリンタポートが生成されるのを抑制することができる。
【００３４】
なお、プリンタ６０のノード名が変更される可能性が低いという前提に基づくと、ノード名を用いてプリンタポートを生成する処理のみを実行し、ＩＰアドレスを用いてプリンタポートを生成する処理を実行しない構成を採用することも考えられる。しかしながら、上述したように、ノード名を用いてプリンタポートが生成される場合には、端末装置１０は、プリンタ６０に印刷を実行させる際に、名前解決を実行する必要がある。名前解決では、端末装置１０は、例えば、ＤＮＳサーバ６８から、プリンタ６０のＩＰアドレスを含むパケットを取得する。あるいは、名前解決では、端末装置１０は、例えば、所定のコマンドをブロードキャストすることによって、プリンタ６０から、プリンタ６０のＩＰアドレスを含むパケットを取得する。例えば、端末装置１０にセキュリティソフトがインストールされている場合には、そのセキュリティソフトが、上記のパケットを破棄する可能性がある。この場合、端末装置１０は、名前解決によってプリンタ１０のＩＰアドレスを取得することができない。このような観点に鑑みると、ＩＰアドレスを用いて生成されるＳ２０のプリンタポートが有効である。また、名前解決の処理の負荷という観点でも、名前解決の処理を実行せずに済むＳ２０のプリンタポートが有効である。
【００３５】
第１実施例の構成と本発明の構成との対応関係を記載しておく。プリンタ６０、端末装置１０が、それぞれ、「デバイス」、「端末装置」の一例である。Ｓ１６で読み込まれるＩＰアドレス、ノード名が、それぞれ、「第１のＩＰアドレス」、「デバイス名」の一例である。また、Ｓｔａｔｉｃが「第１種の設定手法」の一例であり、ＤＨＣＰ、ＢＯＯＴＰ、ＲＡＲＰ、又は、ＡＵＴＯが「第２種の設定手法」の一例である。Ｓ１８でＹＥＳの場合、Ｓ１８でＮＯの場合が、それぞれ、「第１の場合」、「第２の場合」の一例である。
【００３６】
（第２実施例）
本実施例では、端末装置１０の制御部３０は、図２のフローチャートに代えて、図３のフローチャートを実行する。図３のフローチャートは、Ｓ１８の代わりにＳ１９の処理を含む。この点のみが、図２のフローチャートと異なる。Ｓ１９では、ポート生成部３４は、Ｓ１６で読み込まれた設定手法情報が「Ｓｔａｔｉｃ」又は「ＲＡＲＰ」を示すのか否かを判断する。ここでＹＥＳの場合、ポート生成部３４は、Ｓ１６で読み込まれたＩＰアドレスを用いて、プリンタポートを生成する（Ｓ２０）。一方において、Ｓ１６で読み込まれた設定手法情報が「Ｓｔａｔｉｃ」及び「ＲＡＲＰ」以外の設定手法（「ＤＨＣＰ」、「ＢＯＯＴＰ」、又は、「ＡＵＴＯ」）を示す場合には、ポート生成部３４は、Ｓ１９でＮＯと判断する。この場合、ポート生成部３４は、Ｓ１６で読み込まれたノード名を用いて、プリンタポートを生成する（Ｓ２２）。
【００３７】
「ＲＡＲＰ」の場合には、プリンタ６０のＩＰアドレスは、通常、変更されない。ユーザ自身によって入力されたＩＰアドレスがプリンタ６０に設定されるからである。従って、本実施例では、プリンタ６０のＩＰアドレスの設定手法が「ＲＡＲＰ」である場合には、端末装置１０は、プリンタ６０に現在設定されているＩＰアドレスを用いて、プリンタポートを生成する（Ｓ２０）。プリンタ６０のＩＰアドレスが変更され難いために、プリンタ６０のＩＰアドレスが変更されることに起因して、新たなプリンタポートが生成されるのを抑制することができる。
【００３８】
第２実施例の構成と本発明の構成との対応関係を記載しておく。「Ｓｔａｔｉｃ」が「第１種の設定手法」の一例であり、ＤＨＣＰ、ＢＯＯＴＰ、又は、ＡＵＴＯが「第２種の設定手法」の一例であり、ＲＡＲＰが「第３種の設定手法」の一例である。Ｓ１６で読み込まれた設定手法情報が「Ｓｔａｔｉｃ」を示すためにＳ１９でＹＥＳと判断される場合が「第１の場合」の一例であり、Ｓ１６で読み込まれた設定手法情報が「ＲＡＲＰ」を示すためにＳ１９でＹＥＳと判断される場合が「第３の場合」の一例であり、Ｓ１９でＮＯと判断される場合が「第２の場合」の一例である。
【００３９】
（第３実施例）
本実施例では、端末装置１０の制御部３０は、図２及び図３のフローチャートに代えて、図４のフローチャートを実行する。図４のフローチャートのＳ１０〜Ｓ１６は、図２及び図３のＳ１０〜Ｓ１６と同様である。Ｓ１６を終えると、制御部３０は、Ｓ３０を実行する。Ｓ３０では、制御部３０は、Ｓ１６で読み込まれたプリンタ６０のＩＰアドレスがＡＰＩＰＡに従って生成されたものであるのか否かを判断する。ＡＰＩＰＡでは、ＩＰアドレスの範囲（例えば「１６９．２５４．０．０」〜「１６９．２５４．２５５．２５４」）が予め決められており、その範囲に含まれるＩＰアドレスが生成される。制御部３０は、Ｓ１６で読み込まれたプリンタ６０のＩＰアドレスが上記の範囲に含まれる場合に、Ｓ３０でＹＥＳと判断する。
【００４０】
Ｓ３０でＹＥＳの場合、第２の準備部４４（図１参照）は、プリンタ６０に設定されるべき新たなＩＰアドレスを準備する（Ｓ３２）。例えば、第２の準備部４４は、端末装置１０に設定されているＩＰアドレスの最下位の８ビットの値を変更することによって、新たなＩＰアドレスを準備する。端末装置１０は、上記の新たなＩＰアドレスが、ＬＡＮ４に接続されている他のデバイスによって利用されていないことを確認する。次いで、提示部４６（図１参照）は、確認済みの新たなＩＰアドレスを表示部１４に表示させる（Ｓ３４）。この結果、ユーザは、新たなＩＰアドレスを知ることができる。ユーザは、例えば、プリンタ６０の操作部を操作することによって、設定手法「Ｓｔａｔｉｃ」を選択して、新たなＩＰアドレスをプリンタ６０に設定することができる。Ｓ３４を終えると、ポート生成部３４は、Ｓ３２で準備された新たなＩＰアドレスを用いて、プリンタポートを生成する（Ｓ５０）。
【００４１】
一方において、Ｓ３０でＮＯの場合、ポート生成部３４は、Ｓ１６で読み込まれた設定手法情報が「Ｓｔａｔｉｃ」を示すのか否かを判断する（Ｓ３６）。ここでＹＥＳの場合、ポート生成部３４は、Ｓ１６で読み込まれたプリンタ６０のＩＰアドレスを用いて、プリンタポートを生成する（Ｓ５０）。一方において、Ｓ３６でＮＯの場合、確認部３６（図１参照）は、名前解決によってプリンタ６０のＩＰアドレスを取得可能であるのか否かを確認する（Ｓ４０）。具体的には、確認部３６は、Ｓ１６で読み込まれたプリンタ６０のノード名を含む第２のコマンドをブロードキャストする。ＬＡＮ４に接続されているプリンタ６０は、第２のコマンドを受信する。第２のコマンドに含まれるノード名を有するプリンタ６０は、自己のＩＰアドレスを含む第２の応答を端末装置１０に送信する。ＬＡＮ４に接続されている他のプリンタ（図示省略）も第２のコマンドを受信するが、そのプリンタは、第２のコマンドに含まれるノード名と異なるノード名を有するために、応答を送信しない。なお、端末装置１０のネットワークインターフェイス１６によって第２の応答が受信されても、確認部３６が第２の応答を取得できないことがあり得る。例えば、端末装置１０にセキュリティソフトが格納されている場合には、そのセキュリティソフトが、第２の応答を破棄する可能性がある。この場合、確認部３６は、第２の応答を取得することができない。
【００４２】
なお、上記の名前解決手法の代わりに、以下の名前解決手法を採用してもよい。即ち、確認部３６は、Ｓ１６で読み込まれたプリンタ６０のノード名を含む第３のコマンドをＤＮＳサーバ６８に送信する。プリンタ６０のノード名とプリンタ６０のＩＰアドレスとの組合せがＤＮＳサーバ６８に登録されている場合には、ＤＮＳサーバ６８は、プリンタ６０のＩＰアドレスを含む第３の応答を端末装置１０に送信する。なお、上記の第２の応答の場合と同様に、ネットワークインターフェイス１６によって第３の応答が受信されても、確認部３６が第３の応答を取得できないことがあり得る。また、プリンタ６０のノード名とプリンタ６０のＩＰアドレスとの組合せがＤＮＳサーバ６８に登録されていない場合、又は、ＤＮＳサーバ６８がＬＡＮ４に接続されていない場合にも、確認部３６は、第３の応答を取得することができない。
【００４３】
上記した名前解決手法によって応答（第２の応答又は第３の応答）を取得可能である場合には、確認部３６は、Ｓ４０でＹＥＳと判断する。この場合、判断部４２（図１参照）は、上記の応答に含まれるＩＰアドレスと、Ｓ１６で読み込まれたＩＰアドレスと、が一致するのか否かを判断する（Ｓ４２）。ここでＹＥＳの場合、ポート生成部３４は、Ｓ１６で読み込まれたノード名を用いて、プリンタポートを生成する（Ｓ４４）。Ｓ４４を終えると、Ｓ５２に進む。
【００４４】
Ｓ４０又はＳ４２でＮＯの場合、第１の準備部３８（図１参照）は、プリンタ６０に設定されるべき新たなＩＰアドレスを準備する（Ｓ４６）。Ｓ４６の処理は、Ｓ３２の処理と同様である。次いで、設定部４０（図１参照）は、Ｓ１６で読み込まれたプリンタ６０のＩＰアドレスを送信先として、Ｓ４６で準備された新たなＩＰアドレスを送信する（Ｓ４８）。なお、Ｓ４８の処理は、例えば、ＳＮＭＰ（Simple Network Management Protocol）のＳＥＴコマンドを利用する。プリンタ６０は、端末装置１０から送信される新たなＩＰアドレスを、自己のＩＰアドレスとして、新たに設定する。なお、Ｓ４８が実行された場合には、プリンタ６０は、自己のＩＰアドレスの設定手法が「Ｓｔａｔｉｃ」であることを示す設定手法情報を新たに記憶する。
【００４５】
Ｓ４８を終えると、ポート生成部３４は、Ｓ４６で準備された新たなＩＰアドレスを用いて、プリンタポートを生成する（Ｓ５０）。次いで、制御部３０は、図２及び図３のＳ２４と同様に、プリンタドライバをインストールする（Ｓ５２）。
【００４６】
本実施例の端末装置１０が実行する処理について詳しく説明した。通常、ＰＣのような端末装置１０は、ＡＰＩＰＡ以外の手法によってＩＰアドレスが設定される。仮に、ＡＰＩＰＡに従って生成されたＩＰアドレスがプリンタ６０に設定されている場合には、プリンタ６０は、端末装置１０からのブロードキャストのコマンドに応じて応答を送信することができるが（Ｓ１６参照）、端末装置１０からのユニキャストのコマンド（例えば印刷指示コマンド）に応じて処理（例えば印刷処理）を実行することができない。従って、本実施例では、プリンタ６０のＩＰアドレスがＡＰＩＰＡに従って生成されたものである場合に、端末装置１０は、プリンタ６０に設定されるべき新たなＩＰアドレスを準備し（Ｓ３２）、その新たなＩＰアドレスを表示部１４に表示させる（Ｓ３４）。ユニキャスト通信を実行することができないために、Ｓ３４では、ユニキャスト通信を用いた設定処理（Ｓ４８参照）を採用しない。Ｓ３４の処理が実行されるために、ユーザは、設定手法「Ｓｔａｔｉｃ」を用いて、新たなＩＰアドレスをプリンタ６０に入力することによって、新たなＩＰアドレスをプリンタ６０に設定することができる。この結果、プリンタ６０がユニキャスト通信を適切に実行し得る新たなＩＰアドレスがプリンタ６０に設定される。設定手法「Ｓｔａｔｉｃ」に従って設定されたＩＰアドレスは、通常、変更されない。従って、本実施例では、端末装置１０は、Ｓ３２で準備された新たなＩＰアドレスを用いて、プリンタポートを生成する（Ｓ５０）。
【００４７】
また、本実施例では、プリンタ６０の設定手法が「Ｓｔａｔｉｃ」以外の設定手法である場合には、端末装置１０は、名前解決を試行する。名前解決によってＩＰアドレスを取得不可能である場合（Ｓ４０でＮＯの場合）には、端末装置１０は、プリンタ６０のノード名を用いずに、プリンタ６０に設定されるべき新たなＩＰアドレス（Ｓ４６で準備されるＩＰアドレス）を用いて、プリンタポートを生成する（Ｓ５０）。名前解決によってＩＰアドレスを取得不可能なノード名を用いて、プリンタポートが生成されるのを抑制することができる。また、名前解決によって取得されるＩＰアドレスと、Ｓ１６で読み込まれるプリンタ６０のＩＰアドレスと、が一致しない場合（Ｓ４２でＮＯの場合）は、名前解決が適切に機能していないことを意味する。例えば、ＤＨＣＰサーバ６２等によってプリンタ６０のＩＰアドレスが変更されたにも関わらず、変更後のＩＰアドレスとプリンタ６０のノード名との対応関係がＤＮＳサーバ６８に登録されていない場合（即ち変更前のＩＰアドレスとプリンタ６０のノード名との対応関係がＤＮＳサーバ６８に依然として登録されている場合）には、名前解決が適切に機能しない。端末装置１０は、名前解決によってＩＰアドレスを取得可能である場合（Ｓ４０でＹＥＳの場合）であっても、Ｓ４２でＮＯの場合には、端末装置１０は、プリンタ６０に設定されるべき新たなＩＰアドレス（Ｓ４６で準備されるＩＰアドレス）を用いて、プリンタポートを生成する（Ｓ５０）。名前解決が適切に機能しない場合に、ノード名を用いて、プリンタポートが生成されるのを抑制することができる。
【００４８】
第３実施例の構成と本発明の構成との対応関係を記載しておく。Ｓ４０でＹＥＳの場合、Ｓ４０でＮＯの場合が、それぞれ、「第４の場合」、「第５の場合」の一例である。Ｓ４２でＹＥＳの場合、Ｓ４２でＮＯの場合が、それぞれ、「第６の場合」、「第７の場合」の一例である。また、Ｓ４６で準備されるＩＰアドレスが「第２のＩＰアドレス」の一例である。さらに、ＡＰＩＰＡが「アルゴリズム」の一例である。Ｓ３０でＹＥＳの場合が「第８の場合」の一例であり、Ｓ３２で準備されるＩＰアドレスが「第３のＩＰアドレス」の一例である。
【００４９】
上記の各実施例の変形例を以下に列挙する。
（１）制御部３０は、図２のＳ１６で読み込まれるプリンタ６０のＩＰアドレスがＡＰＩＰＡに従って生成されたものである場合に、Ｓ１８でＹＥＳと判断し、Ｓ１６で読み込まれるプリンタ６０のＩＰアドレス（ＡＰＩＰＡに従って生成されたＩＰアドレス）を用いて、プリンタポートを生成してもよい。
【００５０】
（２）図４のＳ３４では、提示部４６は、新たなＩＰアドレスを表示部１４に表示させることによって、新たなＩＰアドレスをユーザに提示する。これに代えて、提示部４６は、新たなＩＰアドレスを示す情報を特定のプリンタに印刷させてもよいし、新たなＩＰアドレスを音声出力してもよいし、新たなＩＰアドレスを他のデバイスの表示部に表示させてもよい。
【００５１】
（３）図４のＳ３６では、制御部３０は、図３のＳ１９の場合と同様に、Ｓｔａｔｉｃ又はＲＡＲＰの場合にＹＥＳと判断してもよい。
【００５２】
（４）制御部３０は、図４のＳ４０又はＳ４２でＮＯの場合に、Ｓ４６及びＳ４８をスキップし、Ｓ１６で読み込まれたＩＰアドレスを用いて、プリンタポートを生成してもよい。本変形例では、本発明の「第１のＩＰアドレス」と「第２のＩＰアドレス」とが一致する。
【００５３】
（５）デバイスドライバは、記録媒体２０からインストールされなくてもよい。例えば、端末装置１０のＯＳプログラム２６は、プリンタ６０のためのデバイスドライバを含んでいてもよい。この場合、端末装置１０は、ＯＳプログラム２６に含まれるデバイスドライバを記憶部２４内の所定の領域に格納することによって、デバイスドライバをインストールしてもよい。
【００５４】
（６）上記の各実施例の技術は、プリンタドライバとは異なる他のデバイスドライバが端末装置１０にインストールされる場合にも適用することできる。他のデバイスドライバの例として、例えば、スキャナドライバを挙げることができる。
【００５５】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
【００５６】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【００５７】
２：ネットワークシステム、１０：端末装置、１８：記録媒体読取部、２０：記録媒体、２２：プログラム、３０：制御部、６０：プリンタ
【図１】
2011076165.tif 000003
【図２】
2011076165.tif 000004
【図３】
2011076165.tif 000005
【図４】
2011076165.tif 000006