JP2016224731A - 情報処理装置、情報処理方法、及びコンピュータプログラム - Google Patents

情報処理装置、情報処理方法、及びコンピュータプログラム Download PDF

Info

Publication number
JP2016224731A
JP2016224731A JP2015110805A JP2015110805A JP2016224731A JP 2016224731 A JP2016224731 A JP 2016224731A JP 2015110805 A JP2015110805 A JP 2015110805A JP 2015110805 A JP2015110805 A JP 2015110805A JP 2016224731 A JP2016224731 A JP 2016224731A
Authority
JP
Japan
Prior art keywords
subnet
search
information processing
processing apparatus
communication port
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015110805A
Other languages
English (en)
Other versions
JP6433378B2 (ja
JP2016224731A5 (ja
Inventor
高志 堀越
Takashi Horikoshi
高志 堀越
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2015110805A priority Critical patent/JP6433378B2/ja
Priority to EP16000938.7A priority patent/EP3098705B1/en
Priority to US15/152,662 priority patent/US10082991B2/en
Priority to KR1020160062567A priority patent/KR102070194B1/ko
Priority to CN201610350082.1A priority patent/CN106209762B/zh
Publication of JP2016224731A publication Critical patent/JP2016224731A/ja
Publication of JP2016224731A5 publication Critical patent/JP2016224731A5/ja
Application granted granted Critical
Publication of JP6433378B2 publication Critical patent/JP6433378B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1225Software update, e.g. print driver, modules, plug-ins, fonts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/26Special purpose or proprietary protocols or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1204Improving or facilitating administration, e.g. print management resulting in reduced user or operator actions, e.g. presetting, automatic actions, using hardware token storing data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • G06F3/1209Improving or facilitating administration, e.g. print management resulting in adapted or bridged legacy communication protocols, e.g. emulation, protocol extension
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1224Client or server resources management
    • G06F3/1226Discovery of devices having required properties
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1278Dedicated interfaces to print systems specifically adapted to adopt a particular infrastructure
    • G06F3/1285Remote printer device, e.g. being remote from client or server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/303Terminal profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】 コンピュータとデバイスとが同一サブネット内に存在するか否かによらず、ユーザが通信ポートの種類を意識することなく、デバイスを確実にかつ安定して利用可能とするための技術を提供すること。
【解決手段】 情報処理装置が接続されている第1のサブネット及び該第1のサブネットとは別個の第2のサブネットをデバイスの検索範囲とする第1のネットワークプロトコルを用いて、第1、2のサブネットからデバイスを検索する(第1の検索)。第1のサブネットをデバイスの検索範囲とする第2のネットワークプロトコルを用いて、第1のサブネットからデバイスを検索する(第2の検索)。第1の検索によって検索されたデバイスのうちユーザによって選択された選択デバイスが第2の検索によって検索可能か否かに応じて、選択デバイスに対する通信ポートを決定する。
【選択図】 図4

Description

本発明は、情報処理技術に関し、特に、ネットワークに接続されたデバイスの通信ポートを決定する技術に関する。
コンピュータから、ネットワークに接続された画像形成装置等のデバイスを検索し、該検索によって特定されたデバイスに対応するデバイスドライバを当該コンピュータにインストールする方法において、次のような方法が広く知られている。すなわち、プリンタドライバやスキャナドライバを予め定められたネットワークプロトコルに対応した通信ポートに関連付ける方法である。
従来、デバイス検索プロトコルを、デバイスを開発するメーカが独自に開発してきた。しかし近年では、OSの標準機能として、UPnPプロトコルに対応したデバイスを検索し、そのプロトコルに対応した通信ポートに関連付けてデバイスドライバをインストールすることが可能となっている。なお、OSはOperating Systemの略、UPnPはUniversal Plug and Playの略である。
そして独自のデバイス検索プロトコルとOS標準のデバイス検索プロトコルの両方に対応したデバイスが普及しているが、ネットワークの状態やデバイスの状態によってはデバイスを検出できない可能性がある。特許文献1では、第一のプロトコルで検出され、優先順位の高い第二のプロトコルで検出されなかったプリンタを第二のプロトコルで再検索する事により、特定のプロトコルに対応したデバイスを確実に検出する方法が開示されている。
特許第4877127号公報
例えばオフィス環境においては、デバイスを異なるサブネット上に設置する場面が多々あり、異なるサブネット上に設置されたデバイスを確実にかつ安定して利用できる事が求められる。
しかしながら、OS標準のUPnPプロトコルによるデバイス検索は同一サブネット内に限定されている場合があり、異なるサブネット上に設置されたデバイスを検出できない場合がある。
また、デバイスドライバをネットワークプロトコルに対応した通信ポートに関連付ける事に成功して、はじめてデバイスを使用可能となる。しかし、ユーザがデバイスドライバをインストールする際に、コンピュータとデバイスが同一サブネット内に存在するか否かをユーザ自身が判断し、その判断結果に応じて通信ポートを決定しなくてはならない。例えばユーザがOS標準のプロトコルを用いた通信ポートを使用したい場合、コンピュータとデバイスが同一サブネット内に存在するか否かをユーザ自身が確認しなくてはならない。そして、同一サブネット内に存在する場合には、OS標準のものを、同一サブネット内に存在しなければ、コンピュータとは別のサブネットに存在するデバイスを検出可能な別のプロトコルの通信ポートをユーザ自身が決定しなくてはならない。
本発明はこのような問題に鑑みてなされたものであり、情報処理装置とデバイスとが同一サブネット内に存在するか否かによらず、ユーザがデバイスを確実にかつ安定して利用可能とするための技術を提供する。
本発明の一様態は、情報処理装置であって、前記情報処理装置が接続されている第1のサブネット及び該第1のサブネットとは別個の第2のサブネットをデバイスの検索範囲とする第1のネットワークプロトコルを用いて、前記第1のサブネット及び前記第2のサブネットからデバイスを検索する第1の検索手段と、前記第1のサブネットをデバイスの検索範囲とする第2のネットワークプロトコルを用いて、前記第1のサブネットからデバイスを検索する第2の検索手段と、前記第1の検索手段によって検索されたデバイスのうちユーザによって選択された選択デバイスが前記第2の検索手段によって検索可能か否かに応じて、前記選択デバイスに対する通信ポートを決定する決定手段とを備えることを特徴とする。
本発明の構成によれば、情報処理装置とデバイスとが同一サブネット内に存在するか否かによらず、ユーザがデバイスを確実にかつ安定して利用可能とすることができる。
システムの構成例を示すブロック図。 コンピュータ101のハードウェア構成例を示すブロック図。 デバイス103,104のハードウェア構成例を示すブロック図。 補助記憶装置205に保存されているソフトウェア構成例を示すブロック図。 コンピュータ101が行う処理のフローチャート。 デバイス検出部408によるデバイスに係る情報の表示例を示す図。 アプリケーション401による表示例を示す図。 コンピュータ101が行う処理のフローチャート。
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載した構成の具体的な実施例の1つである。
以下の各実施形態では、次のような情報処理装置の一例について説明する。即ち、情報処理装置が接続されている第1のサブネット及び該第1のサブネットとは別個の第2のサブネットをデバイスの検索範囲とする第1のネットワークプロトコルを用いて、第1のサブネット及び第2のサブネットからデバイスを検索する(第1の検索)。また、第1のサブネットをデバイスの検索範囲とする第2のネットワークプロトコルを用いて、第1のサブネットからデバイスを検索する(第2の検索)。そして、第1の検索によって検索されたデバイスのうちユーザによって選択された選択デバイスが第2の検索によって検索可能か否かに応じて、選択デバイスに対する通信ポートを決定する。
先ず、以下の各実施形態に係るシステムの構成例について、図1のブロック図を用いて説明する。図1に示す如く、本実施形態に係るシステムは、コンピュータ101及びデバイス103が属するサブネット1と、デバイス104が属するサブネット2と、を含み、サブネット1とサブネット2とは、ルータ102を介して接続されている。
コンピュータ101は、PC(パーソナルコンピュータ)やタブレット端末装置などのコンピュータ装置である。デバイス103、104は、プリンタ、複写機、ファクシミリ、スキャナ等の周辺機器またはそれらの複合機能を備える装置である。本実施形態では、デバイス103、104は、TCP/IPプロトコルに対応すると共に、UPnPに対応したWindows OS標準のネットワークプロトコルであるWSD(Web Services for Devices)にも対応している。
なお、図1に示したシステムの構成は以下の説明のために挙げた一例であり、このような構成に限定することを意図するものではない。例えば、サブネット1に属するデバイスの数、サブネット2に属するデバイスの数は図1の通り1に限るものではなく複数であっても良い。また、サブネットの数も、図1の通り2に限るものではなく、3以上であっても良い。
次に、コンピュータ101のハードウェア構成例について、図2のブロック図を用いて説明する。なお、図2に示した構成は、コンピュータ101に適用可能な構成の一例に過ぎない。
モニタ201は、CRTや液晶画面などにより構成されており、CPU202による処理結果を画像や文字などでもって表示することができる表示装置である。また、モニタ201は、画像や文字を投影する投影装置(例えばプロジェクタ装置)であっても良いし、表示機能及びユーザインターフェース機能を有するタッチパネル画面であっても構わない。
CPU202は、ROM203やRAM204に格納されているコンピュータプログラムやデータを用いて処理を実行することで、コンピュータ101全体の動作制御を行うと共に、コンピュータ101が行うものとして後述する各処理を実行若しくは制御する。
ROM203には、BIOS等の基本ソフトウェアや、変更不要の設定データなどが格納されている。
RAM204は、補助記憶装置205やROM203からロードされたコンピュータプログラムやデータ、ネットワークボード208を介して外部から受信した様々なコンピュータプログラムやデータを格納するためのエリアを有する。更に、RAM204は、CPU202が各種の処理を実行する際に用いるワークエリアも有する。このように、RAM204は、各種のエリアを適宜提供することができる。
補助記憶装置205は、ハードディスクドライブ装置に代表される大容量情報記憶装置である。補助記憶装置205には、OS、各種のドライバソフトウェア、各種のアプリケーションソフトウェア等が保存されている。
補助記憶装置205に保存されているドライバソフトウェアには、例えば、モニタ201による表示を制御するための表示制御ドライバソフトウェアが含まれている。また、補助記憶装置205に保存されているドライバソフトウェアには、キーボード206を制御するためのキーボードドライバソフトウェア、ポインティングデバイス207を制御するためのポインティングデバイスドライバソフトウェアが含まれている。また、補助記憶装置205に保存されているドライバソフトウェアには、ネットワークボード208による通信を制御するためのネットワークドライバが含まれている。また、補助記憶装置205に保存されているドライバソフトウェアには、デバイス103、104を含む様々なデバイス(それぞれのサブネットに接続されているデバイス)を制御するためのドライバソフトウェアも含まれている。デバイス103、104を制御するためのドライバソフトウェアとは、例えば、スキャナドライバ、プリンタドライバ、ファクシミリドライバ等である。
また、補助記憶装置205には、ドライバソフトウェアをコンピュータ101にインストールするためのドライバインストーラも保存されている。このドライバインストーラには、TCP/IPプロトコルによるデバイスの検索機能と、WSDによるデバイス検索機能と、が含まれている。なお、TCP/IPプロトコルによるデバイスの検索機能とWSDによるデバイス検索機能とをそれぞれ専用モジュールに設け、デバイスドライバやアプリケーションから呼び出してデバイス検索を実行させるようにしてもよい。
このほか、補助記憶装置205には、コンピュータ101が行うものとして後述する各処理をCPU202に実行させるためのコンピュータプログラムやデータも保存されている。補助記憶装置205に保存されているコンピュータプログラムやデータは、CPU202による制御に従って適宜RAM204にロードされ、CPU202による処理対象となる。
キーボード206、ポインティングデバイス207は何れも、コンピュータ101の操作者が操作することで、各種の指示をCPU202に入力するためのユーザインターフェースである。
ネットワークボード208は、外部の機器との間のデータ通信を行う。上記のモニタ201、CPU202、ROM203、RAM204、補助記憶装置205、キーボード206、ポインティングデバイス207、ネットワークボード208は何れも、バス209に接続されている。
次に、デバイス103、104のハードウェア構成例について、図3のブロック図を用いて説明する。なお、以下では説明を簡単にするために、デバイス103とデバイス104とは同じ構成を有する機器であるものとしている。そのため、図3では、デバイス103のハードウェア構成例を示しており、同様の説明はデバイス104にも適用される。なお、図3に示した構成は、デバイス103に適用可能な構成の一例に過ぎない。もちろん、デバイス103とデバイス104とが互いに異なる構成を有する機器(例えば一方がプリンタで、他方がスキャナ)であっても構わない。
CPU301は、ROM302やRAM303に格納されているコンピュータプログラムやデータを用いて処理を実行することで、デバイス103全体の動作制御を行うと共に、デバイス103が行うものとして説明する各処理を実行若しくは制御する。
ROM203には、デバイス103が行うものとして説明する各処理をCPU301に実行若しくは制御させるためのコンピュータプログラムやデータが格納されている。RAM303は、ROM302からロードされたコンピュータプログラムやデータ、通信部304が外部から受信したコンピュータプログラムやデータを格納するためのエリアを有する。更にRAM303は、CPU301が各種の処理を実行する際に用いるワークエリアも有する。このように、RAM303は、各種のエリアを適宜提供する。
通信部304は、外部の機器との間のデータ通信を行う。記録部305は、印刷データに基づいて、紙などの記録媒体に画像や文字などを記録する。操作部306は、タッチパネルやハードキーなどの入力機器である。表示部307は、液晶画面であり、CPU301による処理結果を画像や文字などでもって表示することができる。
上記のCPU301、ROM302、RAM303、通信部304、記録部305、操作部306、表示部307は何れも、バス308に接続されている。なお、図3に示した構成は、プリンタとしてのデバイス103の構成例であり、例えばデバイス103がスキャナである場合には、更に、紙などの記録媒体に記録された情報を画像として読み取る構成を有することになる。
[第1の実施形態]
補助記憶装置205に保存されているソフトウェア構成例を図4に示す。以下では、図4に示したソフトウェア(機能部)を処理の主体として説明する場合もあるが、実際には、対応するソフトウェアをCPU202が実行することで、対応する機能が実現されることになる。
アプリケーション401は、次のように動作するインストーラである。即ち、ネットワーク上のデバイスを検索し、該検索により検出したデバイスに係る情報をモニタ201に表示させ、該表示された情報のうちユーザにより選択された情報に対応するデバイスのドライバをコンピュータ101にインストールするインストーラである。なお、アプリケーション401は、ユーザによって選択されたデバイスがプリンタであれば、コンピュータ101はプリンタドライバ403をインストールする。また、アプリケーション401は、ユーザによって選択されたデバイスがスキャナであれば、コンピュータ101はスキャナドライバ404をインストールする。また、ユーティリティ405は、選択されたデバイスに応じて適宜インストールされる。
アプリケーション401を起動すると、TCP/IPデバイス検索部406は、コンピュータ101が属するサブネット(図1ではサブネット1)と同一サブネットからデバイスを検索する。更にTCP/IPデバイス検索部406は、ルータ102を超えた先のサブネット(図1ではサブネット2)からデバイスを検索する。図1の場合、アプリケーション401を起動すると、これらの検索により、サブネット1上のデバイス103と、サブネット2上のデバイス104と、が検出される。
ドライバINFファイル402には、アプリケーション401がインストールするドライバ(プリンタドライバ403および/またはスキャナドライバ404)に対応するデバイスの機種が含まれる。
デバイス検出部408は、ドライバ情報を含むドライバINFファイル402から得たターゲットデバイス(アプリケーション401が対応するデバイスの機種)のデバイス名情報と、TCP/IPデバイス検索部406が検索したデバイスのデバイス名情報と、を比較する。そしてデバイス検出部408は、デバイス名情報が一致したデバイスに係る情報をモニタ201に表示する。図1の場合、仮にデバイス103及びデバイス104が、TCP/IPデバイス検索部406による検出対象となるべきデバイス(アプリケーション401が対応するデバイスの機種)であった場合、デバイス103に係る情報及びデバイス104に係る情報がモニタ201に表示される。表示する情報は、デバイス名、IPアドレス、MACアドレス等、ユーザが所望するデバイスを識別するために利用できる情報である。
即ち、例えばネットワーク上に複数の機種のデバイスが含まれていたとしても、モニタ201には、アプリケーション401がインストールするドライバに対応するデバイスの機種のみが表示される。そして、当該機種のデバイスが複数検出された場合、ユーザはIPアドレス、MACアドレスを参照することで、同一機種の複数のデバイスから、所望のデバイスを選択することができる。上記の表示については、図6を用いて詳細に説明する。
ユーザがキーボード206やポインティングデバイス207を用いて、モニタ201に表示されたデバイスに係る情報のうち何れか1つを指示(選択)すると、WSDデバイス検索部407は、該指示(選択)された情報に対応するデバイスを検索する。このとき、WSDプロトコルによるデバイス検索の範囲は、アプリケーション401が起動しているコンピュータ101と同一サブネットに限定される。そのため、WSDデバイス検索部407は、コンピュータ101が属するサブネット(図1ではサブネット1)と同一サブネットからはデバイスを検索することはできる。しかし、WSDプロトコルによるデバイス検索の範囲の制約により、WSDデバイス検索部407は、ルータ102を超えた先のサブネット(図1ではサブネット2)からはデバイスを検索することはできない。然るに図1の場合、WSDデバイス検索部407による検索結果は、サブネット1にデバイス103が接続されていれば「デバイス103」となるが、サブネット1にデバイス103が接続されていなければ「デバイス無し」となる。
WSDデバイス検索部407が、コンピュータ101が属するサブネットと同一サブネットからデバイス(ユーザによって選択されたデバイス)を検出した場合、アプリケーション401はWSDプロトコルでの通信が可能と判断する。そしてアプリケーション401は、該デバイス用のドライバソフトウェアをWSD通信ポートに割り付けてコンピュータ101にインストールする。
一方、WSDデバイス検索部407が、コンピュータ101が属するサブネットと同一サブネットからデバイス(ユーザによって選択されたデバイス)を検出することができなかった場合、アプリケーション401はWSDプロトコルでの通信が不可能と判断する。そしてアプリケーション401は、該デバイス用のドライバソフトウェアをTCP/IP通信ポートに割り付けてコンピュータ101にインストールする。
デバイス検出部408によるデバイスに係る情報の表示例を図6に示す。ウィンドウ601は、デバイス検出部408によりモニタ201に表示されるものである。ウィンドウ601内には、デバイス検出部408による比較においてデバイス名情報が一致したデバイスに係る情報として、デバイス名、MACアドレス、IPアドレスが表示されている。図6の例では、1行目には、デバイス名が「Cano ABC−123」であるデバイスのデバイス名、MACアドレス、IPアドレスが表示されている。また2行目、3行目には、同一機種「Cano ABC−123」である他のデバイスのデバイス名、MACアドレス、IPアドレスが表示される。3つの行において、同一機種のデバイスが表示されるためデバイス名は同じであるが、MACアドレス、IPアドレスはデバイスに個別に割り当てられるため、その値が異なる。そのためユーザは、アプリケーション401に対応するデバイス機種「Cano ABC−123」が適切に検出されたことを確認できるとともに、それぞれのデバイスのMACアドレス、IPアドレスを確認することができる。このように、デバイス毎の情報が各行に表示される。ユーザは、MACアドレス、IPアドレスを確認し、キーボード206やポインティングデバイス207を用いて、所望のデバイスに対応する行を指示(選択)することができる。ユーザが何れかの行を指示した後、「次へ」ボタンを指示すると、WSDデバイス検索部407は、該指示された行に対応するデバイスを検索する。
一方、TCP/IPデバイス検索部406がデバイスを検索することができなかった場合、アプリケーション401は、図7に例示するウィンドウ701をモニタ201に表示する。このウィンドウ701は、何れのサブネットからもデバイスを検出することができなかったことを示すメッセージを含むウィンドウである。ここでユーザが「再試行」ボタン702を指示すると、TCP/IPデバイス検索部406は再度、検索を開始する。一方、ユーザが「中止」ボタン703を指示すると、処理を中止する。
コンピュータ101のCPU202が、補助記憶装置205からRAM204にロードされたアプリケーション401を実行することで行われる処理について、図5のフローチャートを用いて説明する。ステップS102では、デバイス検出部408は、ドライバ情報を含むドライバINFファイル402から、アプリケーション401に対応するデバイスのドライバ名情報を取得する。
ステップS103では、TCP/IPデバイス検索部406は、コンピュータ101が属するサブネットと同一サブネットからデバイスを検索する。更にTCP/IPデバイス検索部406は、ルータ102を超えた先のサブネットからデバイスを検索する。
ステップS104では、デバイス検出部408は、ステップS102で取得したデバイス名情報と、TCP/IPデバイス検索部406が検索したデバイスのデバイス名情報と、を比較する。この比較の結果、デバイス名情報が一致するものがあれば、処理はステップS105に進み、一致するものがなければ、処理はステップS111に進む。一致するものがあった場合とは、即ち、アプリケーション401がインストール可能なドライバに対応する機種のデバイスがネットワーク上に存在した場合である。
ステップS105では、デバイス検出部408は、デバイス名情報が一致したデバイスに係る情報をモニタ201に表示する。S104、S105における処理により、モニタ201には、ネットワーク上に存在する複数のデバイスのうち、アプリケーション401に対応するデバイスに限定されて、表示が行われる。
ステップS106では、WSDデバイス検索部407は、モニタ201に表示された同一機種のデバイスに係る情報のうちユーザによって指示(選択)された情報に対応するデバイスを「コンピュータ101と同一サブネット」から検索する。この検索の結果、デバイスを検索することができた場合には、処理はステップS107を介してステップS108に進み、デバイスを検索することができなかった場合には、処理はステップS107を介してステップS109に進む。
ステップS108では、アプリケーション401はWSDプロトコルでの通信が可能と判断し、通信ポートを、WSDプロトコルで使用可能な通信ポートであるWSD通信ポートに決定する。
一方、ステップS109では、アプリケーション401はWSDプロトコルでの通信が不可能と判断し、通信ポートを、TCP/IPプロトコルで使用可能な通信ポートであるTCP/IP通信ポートに決定する。
ステップS110では、アプリケーション401は、ユーザによって選択されたデバイス用のドライバソフトウェアを、ステップS108若しくはステップS109において決定した通信ポートに割り付けてコンピュータ101にインストールする。
図1の場合、ユーザがデバイス103を選択した場合、デバイス103は「コンピュータ101と同一サブネット」であるサブネット1上に接続されているため、WSDデバイス検索部407により検出可能である。このような場合、通信ポートはWSD通信ポートに決定される。一方、ユーザがデバイス104を選択した場合、デバイス104は「コンピュータ101と同一サブネット」であるサブネット1上ではなくサブネット2上に接続されているため、WSDデバイス検索部407により検出不可能である。このような場合、通信ポートはTCP/IP通信ポートに決定される。
ステップS111では、アプリケーション401は、図7に例示したウィンドウ701をモニタ201に表示する。このウィンドウ701において「中止」ボタン703が指示されると、図5のフローチャートに従った処理は終了し、「再試行」ボタン702が指示されると、処理はステップS103に戻る。
図5に示した処理によれば、S103において、サブネット1、サブネット2の両方からデバイス検索が可能なTCP/IPにより検索された、同一機種のデバイスが一覧表示される。そのため、ユーザはコンピュータ101が含まれるサブネット1のみならず、サブネット2からもデバイスを検索することができる。またユーザにより一覧表示から選択されたデバイスが、S106においてWSDにより検索される。そしてWSDで検索された場合には、WSDの通信ポート、WSDで検索されなかった場合には、TCP/IPの通信ポートが自動的に設定される。そのためユーザは通信ポートを意識しなくても、選択したデバイスが存在するサブネットに応じた通信ポートを容易に決定させることができる。
なお、例えばS108またはS109において決定された通信ポートがモニタ201を通じてユーザに通知されてもよい。その場合、S110のドライバのインストール後に通知されてもよいし、ドライバのインストールの前に通知され、ユーザが了承の旨の指示を行ったことに応じて、インストールが開始されてもよい。
また以上の説明では、ドライバINFファイル402には、アプリケーション401がインストールするドライバに対応するデバイスの機種として、1種類のデバイス(「Cano ABC−123」)の情報が含まれる例を説明した。しかしこれに限らず、アプリケーション401がインストールするドライバが、複数の機種に対して使用可能なものであれば、その複数の機種の情報がドライバINFファイル402に含まれる。この場合において、当該複数の機種に対応する複数のデバイスがネットワーク上で検出されたとき、図6に示した一覧表示画面には、複数の機種に対応する情報が表示される。
[第2の実施形態]
以下では、第1の実施形態との差分について重点的に説明し、以下で特に触れない限りは、第1の実施形態と同様であるものとする。本実施形態では、コンピュータ101は、図5のフローチャートに従った処理の代わりに、図8のフローチャートに従った処理を行う点が、第1の実施形態と異なる。図8において、図5に示した処理ステップと同じ処理ステップには同じステップ番号を付しており、該処理ステップに係る説明は省略する。
ステップS203では、WSDデバイス検索部407は、「コンピュータ101と同一サブネット」からデバイスを検索する。
ここで、TCP/IPデバイス検索部406の検索範囲はWSDデバイス検索部407の検索範囲を含んでいるため、WSDデバイス検索部407の検索結果は、TCP/IPデバイス検索部406による検索結果に含まれる場合がある。然るに、モニタ201に表示しているデバイス名情報には、TCP/IPデバイス検索部406によって検索されたデバイスのデバイス名情報だけでなく、WSDデバイス検索部407によって検索されたデバイスのデバイス名情報をも含む。ただし、OSの設定やネットワーク設定等によりTCP/IPでは検索できず、WSDでのみ検索できる場合がある。そのため、S104では、WSDまたはTCP/IPで検出されたか否かが判定される。そして、モニタ201に表示された情報のうちユーザによって指示(選択)された情報に対応するデバイスが、WSDデバイス検索部407でも検索されたデバイスであれば、処理はステップS207を介してステップS108に進む。一方、モニタ201に表示された情報のうちユーザによって指示(選択)された情報に対応するデバイスが、WSDデバイス検索部407で検索されたデバイスではない場合には、処理はステップS207を介してステップS109に進む。
<変形例>
WSDに対応したデバイスの代わりに、Bonjour等の他の標準プロトコルや、独自のプロトコルに対応するデバイスを用いても構わないし、種々のプロトコルを複数備えるデバイスを用いても構わない。また、デバイス検索に使用する通信方式は、その用途に応じて、ユニキャスト、マルチキャスト、ブロードキャストを適宜使い分けても構わない。このように、第1,2の実施形態で用いた構成、フォーマット、通信形式は、あくまでも一例である。
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
401:アプリケーション 406:TCP/IPデバイス検索部 407:WSDデバイス検索部 408:デバイス検出部

Claims (10)

  1. 情報処理装置であって、
    前記情報処理装置が接続されている第1のサブネット及び該第1のサブネットとは別個の第2のサブネットをデバイスの検索範囲とする第1のネットワークプロトコルを用いて、前記第1のサブネット及び前記第2のサブネットからデバイスを検索する第1の検索手段と、
    前記第1のサブネットをデバイスの検索範囲とする第2のネットワークプロトコルを用いて、前記第1のサブネットからデバイスを検索する第2の検索手段と、
    前記第1の検索手段によって検索されたデバイスのうちユーザによって選択された選択デバイスが前記第2の検索手段によって検索可能か否かに応じて、前記選択デバイスに対する通信ポートを決定する決定手段と
    を備えることを特徴とする情報処理装置。
  2. 更に、
    前記第1の検索手段によって検索されたデバイスに係る情報を表示する表示手段を備えることを特徴とする請求項1に記載の情報処理装置。
  3. 前記第2の検索手段は、前記表示手段に表示された情報のうちユーザによって選択された情報に対応する前記選択デバイスを検索し、
    前記決定手段は、
    前記第2の検索手段による検索によって前記選択デバイスを検出した場合には、前記第2のネットワークプロトコルで使用可能な通信ポートを、前記選択デバイスに対する通信ポートとして決定し、
    前記第2の検索手段による検索によって前記選択デバイスを検出できなかった場合には、前記第1のネットワークプロトコルで使用可能な通信ポートを、前記選択デバイスに対する通信ポートとして決定する
    ことを特徴とする請求項2に記載の情報処理装置。
  4. 前記決定手段は、
    前記表示手段に表示された情報のうちユーザによって選択された情報に対応する前記選択デバイスが前記第2の検索手段によっても検索されたデバイスである場合には、前記第2のネットワークプロトコルで使用可能な通信ポートを、前記選択デバイスに対する通信ポートとして決定し、
    前記表示手段に表示された情報のうちユーザによって選択された情報に対応する前記選択デバイスが前記第2の検索手段によって検索されていないデバイスである場合には、前記第1のネットワークプロトコルで使用可能な通信ポートを、前記選択デバイスに対する通信ポートとして決定する
    ことを特徴とする請求項2に記載の情報処理装置。
  5. 前記表示手段は、前記第1の検索手段によって検索されたデバイスのうち、ドライバINFファイルに含まれているデバイス名情報と一致するデバイス名情報を有するドライバに係る情報を表示することを特徴とする請求項2乃至4の何れか1項に記載の情報処理装置。
  6. 更に、
    前記情報処理装置にインストールするドライバを、前記決定手段が決定した通信ポートに割り付けて、該情報処理装置にインストールする手段を備えることを特徴とする請求項1乃至5の何れか1項に記載の情報処理装置。
  7. 前記第1のネットワークプロトコルは、TCP/IPプロトコルであることを特徴とする請求項1乃至6の何れか1項に記載の情報処理装置。
  8. 前記第2のネットワークプロトコルは、WSD(Web Services for Devices)プロトコルであることを特徴とする請求項1乃至7の何れか1項に記載の情報処理装置。
  9. 情報処理装置が行う情報処理方法であって、
    前記情報処理装置の第1の検索手段が、前記情報処理装置が接続されている第1のサブネット及び該第1のサブネットとは別個の第2のサブネットをデバイスの検索範囲とする第1のネットワークプロトコルを用いて、前記第1のサブネット及び前記第2のサブネットからデバイスを検索する第1の検索工程と、
    前記情報処理装置の第2の検索手段が、前記第1のサブネットをデバイスの検索範囲とする第2のネットワークプロトコルを用いて、前記第1のサブネットからデバイスを検索する第2の検索工程と、
    前記情報処理装置の決定手段が、前記第1の検索工程で検索されたデバイスのうちユーザによって選択された選択デバイスが前記第2の検索工程で検索可能か否かに応じて、前記選択デバイスに対する通信ポートを決定する決定工程と
    を備えることを特徴とする情報処理方法。
  10. コンピュータを、請求項1乃至8の何れか1項に記載の情報処理装置の各手段として機能させるためのコンピュータプログラム。
JP2015110805A 2015-05-29 2015-05-29 情報処理装置、情報処理方法、及びコンピュータプログラム Active JP6433378B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2015110805A JP6433378B2 (ja) 2015-05-29 2015-05-29 情報処理装置、情報処理方法、及びコンピュータプログラム
EP16000938.7A EP3098705B1 (en) 2015-05-29 2016-04-26 Information processing apparatus, control method of information processing apparatus, and computer program
US15/152,662 US10082991B2 (en) 2015-05-29 2016-05-12 Information processing apparatus, control method of information processing apparatus, and non-transitory computer-readable storage medium
KR1020160062567A KR102070194B1 (ko) 2015-05-29 2016-05-23 정보 처리장치, 정보 처리장치의 제어방법, 및 컴퓨터 판독가능한 기록매체
CN201610350082.1A CN106209762B (zh) 2015-05-29 2016-05-24 信息处理装置及信息处理装置的控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015110805A JP6433378B2 (ja) 2015-05-29 2015-05-29 情報処理装置、情報処理方法、及びコンピュータプログラム

Publications (3)

Publication Number Publication Date
JP2016224731A true JP2016224731A (ja) 2016-12-28
JP2016224731A5 JP2016224731A5 (ja) 2018-02-08
JP6433378B2 JP6433378B2 (ja) 2018-12-05

Family

ID=55968856

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015110805A Active JP6433378B2 (ja) 2015-05-29 2015-05-29 情報処理装置、情報処理方法、及びコンピュータプログラム

Country Status (5)

Country Link
US (1) US10082991B2 (ja)
EP (1) EP3098705B1 (ja)
JP (1) JP6433378B2 (ja)
KR (1) KR102070194B1 (ja)
CN (1) CN106209762B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018194910A (ja) * 2017-05-12 2018-12-06 キヤノン株式会社 情報処理装置、ドライバのインストール方法およびプログラム
JP2021093011A (ja) * 2019-12-11 2021-06-17 キヤノン株式会社 情報処理装置、方法、及びプログラム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6882059B2 (ja) * 2017-05-12 2021-06-02 キヤノン株式会社 プログラム、方法、及び装置
JP6932586B2 (ja) 2017-09-14 2021-09-08 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム
CN109885266A (zh) * 2019-01-18 2019-06-14 联想图像(天津)科技有限公司 一种打印机网络连接的方法、装置、***及移动终端
JP2022025598A (ja) * 2020-07-29 2022-02-10 キヤノン株式会社 情報処理装置、制御方法およびプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1339190A2 (en) * 2002-02-26 2003-08-27 Xerox Corporation System and method for locating devices on a network
JP2004013662A (ja) * 2002-06-10 2004-01-15 Canon Inc 情報処理装置、情報処理方法、制御プログラム
US20070201384A1 (en) * 2006-02-28 2007-08-30 Microsoft Corporation Network explorer
JP2011022695A (ja) * 2009-07-14 2011-02-03 Ricoh Co Ltd 情報処理装置、プログラムおよび記録媒体

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7366527B2 (en) * 2005-08-24 2008-04-29 Inventec Multimedia&Telecom Corporation Communication device for transmitting/acquiring a phone number via a link network and method thereof
JP4877127B2 (ja) 2007-07-25 2012-02-15 セイコーエプソン株式会社 印刷クライアントおよびプリンタ検索方法。
CN101217398A (zh) * 2007-12-28 2008-07-09 华为技术有限公司 分布式网管采集***、实现方法及相关设备
DE102009009445A1 (de) * 2009-02-13 2010-10-07 Thinprint Gmbh Verfahren und Anordnung zur Ermittlung von Druckern, sowie ein entsprechendes Computerprogramm und ein entsprechendes computerlesbares Speichermedium
JP5464960B2 (ja) * 2009-10-05 2014-04-09 キヤノン株式会社 通信装置及び通信装置の通信方法並びにプログラム
US8610928B2 (en) * 2010-02-09 2013-12-17 Apple Inc. Framework that supports driverless printing
JP4930811B2 (ja) * 2010-04-27 2012-05-16 ブラザー工業株式会社 印刷制御プログラム、監視プログラム、及び印刷制御方法
CN101917492B (zh) * 2010-08-06 2013-06-05 北京乾唐视联网络科技有限公司 一种新型网的通信方法及***
US9392010B2 (en) * 2011-11-07 2016-07-12 Netflow Logic Corporation Streaming method and system for processing network metadata

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1339190A2 (en) * 2002-02-26 2003-08-27 Xerox Corporation System and method for locating devices on a network
JP2004013662A (ja) * 2002-06-10 2004-01-15 Canon Inc 情報処理装置、情報処理方法、制御プログラム
US20070201384A1 (en) * 2006-02-28 2007-08-30 Microsoft Corporation Network explorer
JP2011022695A (ja) * 2009-07-14 2011-02-03 Ricoh Co Ltd 情報処理装置、プログラムおよび記録媒体

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018194910A (ja) * 2017-05-12 2018-12-06 キヤノン株式会社 情報処理装置、ドライバのインストール方法およびプログラム
JP2021093011A (ja) * 2019-12-11 2021-06-17 キヤノン株式会社 情報処理装置、方法、及びプログラム
US11526364B2 (en) 2019-12-11 2022-12-13 Canon Kabushiki Kaisha Method, information processing apparatus, and storage medium
JP7433874B2 (ja) 2019-12-11 2024-02-20 キヤノン株式会社 情報処理装置、方法、及びプログラム

Also Published As

Publication number Publication date
JP6433378B2 (ja) 2018-12-05
EP3098705B1 (en) 2021-03-03
EP3098705A1 (en) 2016-11-30
KR102070194B1 (ko) 2020-01-28
CN106209762B (zh) 2020-06-02
US10082991B2 (en) 2018-09-25
US20160350035A1 (en) 2016-12-01
CN106209762A (zh) 2016-12-07
KR20160140415A (ko) 2016-12-07

Similar Documents

Publication Publication Date Title
JP6433378B2 (ja) 情報処理装置、情報処理方法、及びコンピュータプログラム
JP2018128790A (ja) 情報処理装置、プログラム、インストール方法
JP6324251B2 (ja) 情報処理装置、プログラム及び制御方法
US9965299B2 (en) Information processing apparatus, method for controlling the same, and storage medium
JP2007109211A (ja) 印刷システム
JP4788127B2 (ja) インストールシステム、インストール方法
JP6882060B2 (ja) 情報処理装置、ドライバのインストール方法およびプログラム
JP2011180681A (ja) インストーラ及びプリンタドライバのインストール方法
US8838790B2 (en) Configuration value management apparatus and management method
US11520532B2 (en) Information processing apparatus, control method, and storage medium storing program
US20130083340A1 (en) Storage medium in which information processing program is stored, information processing apparatus, and information processing system
JP2009301138A (ja) 画像処理装置、端末装置及びプリンタドライバインストール方法
JP6470635B2 (ja) 情報処理装置、情報処理方法
JP4802613B2 (ja) インストールシステム及びインストールプログラム
JP2015114842A (ja) 情報処理装置及びその制御方法、プログラム
JP6407465B2 (ja) 情報処理装置、プログラム及び制御方法
US10608885B2 (en) Information processing method and storage medium
US11778119B2 (en) Information processing apparatus performing setting of application in client device, information processing system including same, and non-transitory computer-readable recording medium storing setting tool program
JP6906990B2 (ja) 情報処理装置、制御方法、およびプログラム
US11526364B2 (en) Method, information processing apparatus, and storage medium
JP6752303B2 (ja) プログラム
JP2018081448A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2010252079A (ja) 画像形成装置のジョブ登録及びその高速起動
JP2009099093A (ja) 管理プログラム、情報処理装置および情報処理システム
JP2019003471A (ja) 情報処理装置、画像処理システム及びプログラム

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171219

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180928

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20181009

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181106

R151 Written notification of patent or utility model registration

Ref document number: 6433378

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151