JP2018194910A - Information processing device, driver installation method and program - Google Patents
Information processing device, driver installation method and program Download PDFInfo
- Publication number
- JP2018194910A JP2018194910A JP2017095883A JP2017095883A JP2018194910A JP 2018194910 A JP2018194910 A JP 2018194910A JP 2017095883 A JP2017095883 A JP 2017095883A JP 2017095883 A JP2017095883 A JP 2017095883A JP 2018194910 A JP2018194910 A JP 2018194910A
- Authority
- JP
- Japan
- Prior art keywords
- driver
- print queue
- information processing
- processing apparatus
- 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
Links
Images
Abstract
Description
本発明は、デバイスドライバのインストール技術に関する。 The present invention relates to a device driver installation technique.
コンピュータにインストールされるデバイスドライバの種類は、大きく2種類に分類することができる。1つは、デバイスの製造元が提供するドライバであり、これらはOutboxドライバと称される。もう1つは、OSが提供するドライバであり、これらはInboxドライバと称される。一般的には、Outboxドライバの方がInboxドライバよりも優れた機能を有しており、デバイスの製造元はOutboxドライバを使用することを推奨している。 The types of device drivers installed on the computer can be roughly classified into two types. One is a driver provided by the device manufacturer, which is called an Outbox driver. The other is a driver provided by the OS, and these are called Inbox drivers. In general, the Outbox driver has a better function than the Inbox driver, and the device manufacturer recommends using the Outbox driver.
Windows(登録商標)OSではPnP−X(Plug and Play Extension for Network Connected Device)機能が提供されている。Windows OSは、自身のPnP−X機能に基づいてデバイスを検出し、そのデバイスに関連付けられたInboxドライバを自動的にコンピュータにインストールする。すなわち、コンピュータとデバイスとをネットワークを介して接続するだけで、Inboxドライバが自動的にコンピュータにインストールされる。 The Windows (registered trademark) OS provides a PnP-X (Plug and Play Extension for Network Connected Device) function. The Windows OS detects a device based on its PnP-X function, and automatically installs an Inbox driver associated with the device in the computer. In other words, the Inbox driver is automatically installed in the computer simply by connecting the computer and the device via a network.
Inboxドライバがインストールされた後に、Outboxドライバのインストールを実行する場合、PnP−X機能によってデバイスの自動検出が行われない。そのため、ユーザは、Inboxドライバを削除してからOutboxドライバのインストールを実行する場合がある。この場合、例えば、特許文献1の手法を適用してInboxドライバを削除することができる。特許文献1は、プリンタドライバに付加された固有削除情報を参照することにより、コンピュータにインストールされているプリンタドライバを選択的に削除する手法を開示している。
When installing the Outbox driver after the Inbox driver is installed, automatic device detection is not performed by the PnP-X function. Therefore, the user may delete the Inbox driver and then install the Outbox driver. In this case, for example, the Inbox driver can be deleted by applying the method of
最新OSであるWindows10(登録商標)は、Microsoft Mobile Print(以下「MMP」と記す)用のドライバを標準装備しており、このMMPドライバは全てのデバイスの製造元に共通する仕様となっている。 The latest OS, Windows 10 (registered trademark), is equipped with a standard driver for Microsoft Mobile Print (hereinafter referred to as “MMP”), and this MMP driver has a specification common to all device manufacturers.
そのため、MMPドライバを削除してからOutboxドライバのインストールを実行する場合、製造元が異なる他のデバイスに関連付けられたMMPドライバの印刷キューまでもが意図せず削除されてしまうという課題があった。 Therefore, when installing the Outlook driver after deleting the MMP driver, there is a problem that even the print queue of the MMP driver associated with another device with a different manufacturer is deleted unintentionally.
本発明は上記課題に鑑みなされたものである。すなわち、デバイスに関連付けて生成された、OSが提供する汎用ドライバの印刷キューを削除しつつ、デバイスの製造元が提供するドライバの印刷キューを生成することを目的とする。 The present invention has been made in view of the above problems. In other words, an object is to generate a print queue for a driver provided by a device manufacturer while deleting a print queue for a general-purpose driver provided by an OS generated in association with the device.
本発明の情報処理装置は、デバイスの製造元が提供するドライバを登録する登録手段と、前記デバイスのUUIDと前記情報処理装置の印刷ポート名とを用いてPnP−X IDを取得する取得手段と、前記情報処理装置にインストール済みのドライバの印刷キューが、前記PnP−X IDが取得された印刷ポートに割り当てられており、かつ、前記印刷キューに対応するドライバが前記登録されたドライバと一致しない場合、前記印刷キューを削除する削除手段と、前記登録されたドライバの印刷キューをWSD通信ポートに割り当てて生成する生成手段と、を有することを特徴とする。 An information processing apparatus according to the present invention includes a registration unit that registers a driver provided by a device manufacturer, an acquisition unit that acquires a PnP-X ID using the UUID of the device and a print port name of the information processing apparatus, The print queue of the driver installed in the information processing apparatus is assigned to the print port from which the PnP-X ID has been acquired, and the driver corresponding to the print queue does not match the registered driver And deleting means for deleting the print queue, and generating means for assigning and generating a print queue of the registered driver to a WSD communication port.
本発明によれば、デバイスに関連付けて生成された、OSが提供する汎用ドライバの印刷キューを削除しつつ、デバイスの製造元が提供するドライバの印刷キューを生成することができる。 According to the present invention, it is possible to generate a print queue for a driver provided by a device manufacturer while deleting a print queue for a general-purpose driver provided by an OS that is generated in association with a device.
[実施形態1]
以下、本発明を実施するための形態について図面を参照して説明する。ただし、この実施形態に記載されている構成はあくまで例示であり、本発明の範囲をそれらに限定する趣旨のものではない。
[Embodiment 1]
Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings. However, the configuration described in this embodiment is merely an example, and is not intended to limit the scope of the present invention.
(情報処理システムの構成)
図1は、本実施形態における情報処理システムの構成例を示すブロック図である。本実施形態の情報処理システム1は、コンピュータ100と、デバイス200、400とから構成される。図1に示される通り、コンピュータ100およびデバイス200が属するサブネットワークAと、デバイス400が属するサブネットワークBとは、ルータ300を介して接続されている。コンピュータ100は、PC(パーソナルコンピュータ)やタブレットなどの情報処理装置である。デバイス200、400は、プリンタ、複写機、ファクシミリ、スキャナ等の周辺機器またはそれらの複合機能を備える装置である。デバイス200、400は、TCP/IPプロトコルに対応すると共に、Microsoft Windows OS標準のネットワークプロトコルであるWSD(Web Services on Devices)にも対応している。なお、情報処理システム1の構成は一例であり、図1の情報処理システム1の構成に限定されるものではない。例えば、サブネットワークAおよびサブネットワークBそれぞれに属するコンピュータ、デバイスの数は図1の情報処理システム1の構成に限定されず、複数であってもよい。
(Configuration of information processing system)
FIG. 1 is a block diagram illustrating a configuration example of an information processing system according to the present embodiment. The
(コンピュータのハードウェア構成)
図2は、本実施形態におけるコンピュータ100のハードウェア構成例を示すブロック図である。コンピュータ100は、CPU101、RAM102、ROM103、グラフィックコントローラ104、表示部105、補助記憶装置106を含んで構成される。さらに、コンピュータ100は、外部接続インタフェース107(以下インタフェースは「I/F」と記す)、ネットワークI/F108を含み、各構成部はバス109を介して通信可能に接続されている。CPU101は演算回路からなり、コンピュータ100を統括制御する。CPU101はROM103または補助記憶装置106に記憶されたプログラムをRAM102に読み出し、種々の処理を実行する。ROM103は、コンピュータ100の制御に用いられるBIOSなどのシステムソフトウェアなどを記憶する。グラフィックコントローラ104は、表示部105に表示させるための画面を生成する。表示部105は、LCD(液晶ディスプレイ)などによって構成され、グラフィックコントローラ104によって生成された画面を表示する。また、表示部105は、タッチスクリーン機能を有していてもよい。その場合、表示部105を介して入力を受け付けたユーザ指示を、コンピュータ100への入力として扱うことも可能である。補助記憶装置106は記憶領域としての機能を有し、OS(オペレーティングシステム)、種々のデバイスを制御するためのデバイスドライバ、種々の処理を実行するアプリケーションプログラムなどを記憶する。補助記憶装置106は記憶装置の一例であり、HDD(ハードディスクドライブ)以外にもSSD(ソリッドステートドライブ)などにより構成することができる。補助記憶装置106に記憶されているデバイスドライバには、デバイス200、400を含む種々のデバイスを制御するために用いられるドライバソフトウェアが含まれる。このようなドライバソフトウェアとは、例えば、スキャナドライバ、プリンタドライバ、ファクシミリドライバなどである。外部接続I/F107は、コンピュータ100に種々の機器を接続するためのインタフェースである。例えば、外部接続I/F107を介して、キーボード、マウスなどのポインティングデバイスを接続することができる。ネットワークI/F108は、CPU101の制御に基づいてデバイス200、400とネットワークを介して通信を行う。
(Computer hardware configuration)
FIG. 2 is a block diagram illustrating a hardware configuration example of the
本実施形態の補助記憶装置106は、ドライバソフトウェア(以下、単に「ドライバ」と記す場合がある)を対象デバイスにインストールするために必要なドライバインストーラも記憶している。なお、本実施形態において、対象デバイスは、デバイスをインストールする対象となるデバイスを意味する。このドライバインストーラは、TCP/IPプロトコルによるデバイスの検索機能と、WSDプロトコルによるデバイス検索機能とを備えている。本実施形態では、ドライバインストーラが、TCP/IPプロトコルによるデバイスの検索機能と、WSDプロトコルによるデバイス検索機能とを備える構成を示したが、実施形態は上記示した構成に限定されない。別実施形態では、補助記憶装置106が、TCP/IPプロトコルによるデバイスの検索機能を備える専用モジュールと、WSDによるデバイス検索機能を備える専用モジュールとを記憶していてもよい。その場合、デバイスドライバやアプリケーションからこれら専用モジュールを呼び出してデバイス検索を実行させるようにしてもよい。 The auxiliary storage device 106 according to the present embodiment also stores a driver installer necessary for installing driver software (hereinafter simply referred to as “driver”) on the target device. In the present embodiment, the target device means a device that is a target for installing the device. This driver installer has a device search function based on the TCP / IP protocol and a device search function based on the WSD protocol. In the present embodiment, the driver installer has a configuration including a device search function based on the TCP / IP protocol and a device search function based on the WSD protocol. However, the embodiment is not limited to the configuration described above. In another embodiment, the auxiliary storage device 106 may store a dedicated module having a device search function by the TCP / IP protocol and a dedicated module having a device search function by the WSD. In that case, the device search may be executed by calling these dedicated modules from the device driver or application.
(デバイスのハードウェア構成)
図3は、本実施形態におけるデバイス200、400のハードウェア構成例を示すブロック図である。デバイス200、400は、CPU201、RAM202、ROM203、グラフィックコントローラ204、表示部205、操作部206を含んで構成される。さらに、デバイス200、400は、ネットワークI/F207、印刷部208を含み、各構成部はバス209を介して通信可能に接続されている。CPU201は演算回路からなり、デバイス200、400を統括制御する。CPU201はROM203に記憶されたプログラムをRAM202に読み出し、種々の処理を実行する。ROM203は、デバイス200、400の制御に用いられるプログラムやデータを記憶する。グラフィックコントローラ204は、表示部205に表示させるための画面を生成する。表示部205は、LCD(液晶ディスプレイ)などによって構成され、グラフィックコントローラ204によって生成された画面を表示する。操作部206は、タッチパネルやハードウェアキーなどによって構成され、ユーザ指示を受け付けることができる。ネットワークI/F207は、CPU201の制御に基づいて外部デバイスとネットワークを介して通信を行う。印刷部208は、コンピュータ100から送信された印刷ジョブや、デバイス200、400自身が読み取った画像データに基づいて、用紙などの記録媒体に文字や画像を形成する。なお、図3に示されるデバイス200、400の構成は、デバイス200、400がプリンタである場合の構成である。デバイス200、400がスキャナである場合、デバイス200、400は、用紙などの記録媒体上に形成されている文字や画像を読み取る読取部を更に有することになる。
(Device hardware configuration)
FIG. 3 is a block diagram illustrating a hardware configuration example of the
(ソフトウェア機能構成)
図4は、本実施形態におけるコンピュータ100のソフトウェア機能構成を示すブロック図である。図4に示される各ブロックの機能は、CPU101がアプリケーション(ドライバインストーラ)110のプログラムコードをRAM102に読み出して実行することにより実現される。
(Software function configuration)
FIG. 4 is a block diagram showing a software functional configuration of the
アプリケーション110は、ネットワークに接続されるデバイスを検索し、検索されたデバイスのなかからユーザによって選択されたデバイスに関連付けられたドライバをコンピュータ100にインストールする。アプリケーション110は、ユーザによって選択されたデバイスがプリンタであれば、プリンタドライバ122をコンピュータ100にインストールする。ユーザによって選択されたデバイスがスキャナであれば、スキャナドライバ123をコンピュータ100にインストールする。また、ユーティリティ124は、ユーザによって選択されたデバイスの種類に応じて適宜コンピュータ100にインストールされる。
The
デバイス検出部111は、ドライバINFファイル121からデバイスのドライバ情報を取得する。ドライバ情報には、ドライバ名が含まれる。
The
TCP/IPデバイス検索部112は、TCP/IPプロトコルにより、コンピュータ100とネットワークを介して接続されるデバイスを検索する。アプリケーション110は、上記検索によって検出されたデバイスに関する情報を表示部105に表示する。本実施形態では、デバイスに関する情報として、デバイス名、IPアドレス、MACアドレスなどが表示部105に表示される。これらデバイスに関する情報は、対象デバイスを識別するために利用可能な情報である。さらに、アプリケーション110は、表示部105に表示されたデバイスに関する情報のうち、選択されたデバイスの制御に用いられるドライバをコンピュータ100に登録する。
The TCP / IP
WSDデバイス検索部113は、WSDプロトコルにより、選択されたデバイスを、コンピュータ100が属するサブネットワークと同一のサブネットワークに接続されるデバイスから検索する。WSDの仕様により、WSDプロトコルによる検索は、ルータ300を越えた先のサブネットワークからはデバイスを検索することができない。そのため、図1を例に説明すると、WSDデバイス検索部113は、サブネットワークAに接続されるデバイス200を検索することはできるが、サブネットワークBに接続されるデバイス400を検索することはできない。WSDデバイス検索部113が、コンピュータ100が属するサブネットワークと同一のサブネットワークに接続されるデバイスを検出した場合、アプリケーション110は、当該デバイスとWSDプロトコルによる通信が可能と判定する。
The WSD
UUID取得部114は、WSDデバイス検索部113によって検出されたデバイスのUUIDを取得する。
The
Inboxドライバ検出部115は、コンピュータ100が具備する印刷ポートのリストを取得し、UUIDと印刷ポート名とを用いて、ポートモニタからPnP−X IDを取得する。次いで、Inboxドライバ検出部115は、コンピュータ100にインストール済みの印刷キューのリストを取得し、各印刷キューが、PnP−X IDが取得された印刷ポートに割り当てられているか否かを判定する。本実施形態では、PnP−X IDが取得された印刷ポートに割り当てられているか否かを判定することにより、印刷キューがWSD通信ポートに割り当てられているか否かが判定される。さらに、Inboxドライバ検出部115は、印刷キューに対応するドライバが、アプリケーション110によって登録されたドライバと一致するか否かを判定する。なお、PnP−X IDは、PnP−X Identifier の略であり、PnP−X機能によるデバイスの検出結果を一意に識別する識別子である。
The Inbox
登録されたドライバと一致しない場合、WSDデバイス登録部116は、OSによって制御され、デバイスの管理に用いられるアソシエーションデータベース(Association Database)から、対象デバイスを削除する。アソシエーションデータベースから対象デバイスが削除されると、OSは、対象デバイスに関連付けられたInboxドライバ(OSが提供する汎用ドライバ)の印刷キューを削除する。
If the driver does not match the registered driver, the WSD
WSDデバイス登録部116は、対象デバイスを再びOSのデータベースに登録する。対象デバイスが再びOSのデータベースに登録されると、OSのPnP−X機能が誘発され、登録されたドライバの印刷キューがWSD通信ポートに割り当てて生成される。
The WSD
(ドライバインストーラの処理手順)
図5は、本実施形態におけるドライバインストーラの処理手順を示すフローチャートである。図5に示されるフローチャートの処理は、CPU101がアプリケーション110のプログラムコードをRAM102に展開し実行することにより行われる。以下の各記号Sは、フローチャートにおけるステップであることを意味する。これらは図6以降のフローチャートについても同様である。
(Processing procedure of driver installer)
FIG. 5 is a flowchart showing the processing procedure of the driver installer in this embodiment. The processing of the flowchart shown in FIG. 5 is performed by the CPU 101 developing the program code of the
S501において、デバイス検出部111は、ドライバINFファイル121からデバイスのドライバ情報を取得する。ドライバ情報には、ドライバ名が含まれる。
In step S <b> 501, the
S502において、TCP/IPデバイス検索部112は、TCP/IPプロトコルにより、コンピュータ100が属するサブネットと同一のサブネットに接続されるデバイスを検索する。更に、TCP/IPデバイス検索部112は、ルータ300を越えた先のサブネットに接続されるデバイスを検索する。
In S502, the TCP / IP
S503において、TCP/IPプロトコルによるデバイス検索によって、ドライバINFファイル121から取得されたデバイス名と一致するデバイスが検出されたか否かが判定される。一致するデバイスが検出された場合(S503:YES)、S504に移行する。一致するデバイスが検出されなかった場合(S503:NO)、S512に移行する。
In step S <b> 503, it is determined whether or not a device matching the device name acquired from the
S504において、S503で検出されたデバイスに関する情報が表示部105に表示される。本実施形態では、デバイスに関する情報として、デバイス名、IPアドレス、MACアドレスなどが表示部105に表示される。これらデバイスに関する情報は、対象デバイスを識別するために利用可能な情報である。なお、S503において複数のデバイスが検出された場合、これら複数のデバイスに関する情報が一覧で表示される。
In step S <b> 504, information related to the device detected in step S <b> 503 is displayed on the
S505において、表示部105に表示されたデバイスに関する情報のうち、選択されたデバイスの制御に用いられるドライバがコンピュータ100に登録される。本実施形態では、タッチパネル機能を有する表示部105に入力されたユーザ指示に基づいてデバイスの選択が行われる。なお、本実施形態では、デバイス200の製造元が提供するOutboxドライバがコンピュータ100に登録される。
In step S <b> 505, a driver used to control the selected device among the information on the device displayed on the
S506において、WSDデバイス検索部113は、WSDプロトコルにより、S505で選択されたデバイスを、コンピュータ100が属するサブネットと同一のサブネットに接続されるデバイスから検索する。
In step S506, the WSD
S507において、WSDプロトコルによるデバイス検索によって、S505で選択されたデバイスが、コンピュータ100が属するサブネットと同一のサブネットに接続されるデバイスから検出されたか否かが判定される。デバイスが検出された場合(S507:YES)、S508に移行する。デバイスが検出されなかった場合(S507:NO)、S510に移行する。
In S507, it is determined whether or not the device selected in S505 is detected from a device connected to the same subnet to which the
デバイスが検出された場合(S507:YES)、コンピュータ100とデバイスとの間でWSDプロトコルによる通信が可能と判定される。そして、S508において、デバイスとの通信に用いられる通信ポートが、WSDプロトコルによって通信可能なWSD通信ポートに決定される。
If a device is detected (S507: YES), it is determined that communication using the WSD protocol is possible between the
S509において、UUID取得部114は、S507で検出されたデバイスのUUIDを取得する。
In step S509, the
S600において、アプリケーション110は、S507で検出されたデバイスの制御に用いられるドライバの印刷キューを生成する。S600の詳細は後述する。S600の処理が完了すると、本フローチャートの処理を終了する。
In step S600, the
デバイスが検出されなかった場合(S507:NO)、コンピュータ100とデバイスとの間でWSDプロトコルによる通信が不可能と判定される。そして、S510において、コンピュータ100とデバイスとの通信に用いられる通信ポートが、TCP/IPプロトコルによって通信可能なTCP/IP通信ポートに決定される。
If no device is detected (S507: NO), it is determined that communication using the WSD protocol is impossible between the
S511において、アプリケーション110は、S507で検出されたデバイスの制御に用いられるドライバの印刷キューを生成する。より詳細には、アプリケーション110は、S505で登録されたドライバの印刷キューをTCP/IP通信ポートに割り当てて生成する。S511の処理が完了すると、本フローチャートの処理を終了する。
In step S511, the
また、TCP/IPプロトコルによるデバイス検索によって、ドライバ情報と一致するデバイスが検出されなかった場合(S503:NO)、S512において、デバイス設定の確認ウィンドウが表示部105における表示画面に表示される。
If no device matching the driver information is detected by device search using the TCP / IP protocol (S503: NO), a device setting confirmation window is displayed on the display screen of the
図8は、本実施形態におけるデバイス設定の確認ウィンドウの一例を示す図である。本実施形態の確認ウィンドウ801には、ドライバINFファイル121から取得されたドライバ情報(デバイス名)と一致するデバイスが検出されなかった旨のメッセージが含まれる。そして、確認ウィンドウ801における再試行ボタン802への入力が受け付けられると(S513:YES)、再びS502に戻る。一方、確認ウィンドウ801における中止ボタン803への入力が受け付けられると(S513:NO)、本フローチャートの処理を終了する。
FIG. 8 is a diagram showing an example of a device setting confirmation window in the present embodiment. The
(印刷キューの生成手順)
図6は、本実施形態における印刷キューの生成手順(S600)の詳細を示すフローチャートである。以下、図6を参照して詳細に説明する。
(Print queue creation procedure)
FIG. 6 is a flowchart showing details of the print queue generation procedure (S600) in the present embodiment. Hereinafter, this will be described in detail with reference to FIG.
S601において、Inboxドライバ検出部115は、コンピュータ100が具備する印刷ポートのリストを取得する。
In step S <b> 601, the Inbox
S602において、全ての印刷ポートについて処理が完了したか否かが判定される。全ての印刷ポートについて処理が完了していない場合(S602:NO)、S603に移行する。全ての印刷ポートについて処理が完了している場合(S602:YES)、S602〜S603の処理ループを抜けてS604に移行する。 In step S602, it is determined whether or not processing has been completed for all print ports. If processing has not been completed for all print ports (S602: NO), the process proceeds to S603. If the processing has been completed for all the print ports (S602: YES), the processing loop of S602 to S603 is exited and the process proceeds to S604.
S603において、S509で取得したUUIDと、コンピュータ100の印刷ポート名とを用いて、ポートモニタからPnP−X IDを取得する。ポートモニタからPnP−X IDを取得する処理は、上記リストの最上位に記述されている印刷ポート名から上記リストの最下位に記述されている印刷ポート名まで、S602〜S603の処理ループごとに順番に実行される。S603の処理が終了すると再びS602の判定処理に戻る。なお、本実施形態において、ポートモニタの機能はコンピュータ100のOSによって提供されているものとする。
In step S603, the PnP-X ID is acquired from the port monitor using the UUID acquired in step S509 and the print port name of the
S604において、コンピュータ100にインストール済みの印刷キューのリストが取得される。具体的には、各種ドライバがコンピュータ100にインストールされる際に、インストーラによって生成された印刷キューのリストが取得される。
In step S604, a list of print queues already installed in the
S605において、全ての印刷キューについて処理が完了したか否かが判定される。全ての印刷キューについて処理が完了していない場合(S605:NO)、S606に移行する。全ての印刷キューについて処理が完了している場合(S605:YES)、S605〜S607の処理ループを抜けてS610に移行する。 In step S605, it is determined whether the processing has been completed for all print queues. If the processing has not been completed for all the print queues (S605: NO), the process proceeds to S606. If the processing has been completed for all the print queues (S605: YES), the processing loop of S605 to S607 is exited and the process proceeds to S610.
S606において、印刷キューは、PnP−X IDが取得された印刷ポートに割り当てられているか否かが判定される。S606の判定処理は、上記リストの最上位に記述されている印刷キュー名から上記リストの最下位に記述されている印刷キュー名まで、S605〜S607の処理ループごとに順番に実行される。本実施形態では、PnP−X IDが取得された印刷ポートに割り当てられているか否かを判定することにより、印刷キューがWSD通信ポートに割り当てられているか否かを判定する。印刷キューがPnP−X IDが取得された印刷ポートに割り当てられている場合(S606:YES)、S607に移行する。割り当てられていない場合(S606:NO)、再びS605の判定処理に戻る。 In S606, it is determined whether the print queue is assigned to the print port from which the PnP-X ID has been acquired. The determination processing of S606 is executed in order for each processing loop of S605 to S607 from the print queue name described at the top of the list to the print queue name described at the bottom of the list. In this embodiment, it is determined whether or not the print queue is assigned to the WSD communication port by determining whether or not the PnP-X ID is assigned to the acquired print port. When the print queue is assigned to the print port from which the PnP-X ID has been acquired (S606: YES), the process proceeds to S607. If not assigned (S606: NO), the process returns to the determination process of S605 again.
S607において、Inboxドライバ検出部115は、印刷キューに対応するドライバが、S505で登録されたドライバと一致するか否かを判定する。登録されたドライバと一致している場合(S607:YES)、再びS605の判定処理に戻る。一方、登録されたドライバと一致していない場合(S607:NO)、S605〜S607の処理ループを抜けてS608に移行する。
In step S607, the Inbox
S608において、WSDデバイス登録部116は、OSのデータベースから対象デバイスを削除する。
In step S608, the WSD
S609において、OSのデータベースから対象デバイスが削除されると(S608)、対象デバイスに関連付けられたInboxドライバ(OSが提供する汎用ドライバ)の印刷キューがOSにより削除される。なお、Inboxドライバの印刷キューを削除するために、削除対象となる印刷キューの名称を直接指定する手法も考えられるが、本実施形態ではこのような手法を適用していない。これは、印刷キューの名称は自由に変更可能であり、印刷キューの名称によって削除対象となる印刷キューを特定することができない場合があるからである。 In S609, when the target device is deleted from the OS database (S608), the print queue of the Inbox driver (a general-purpose driver provided by the OS) associated with the target device is deleted by the OS. In order to delete the print queue of the Inbox driver, a method of directly specifying the name of the print queue to be deleted can be considered, but this method is not applied in this embodiment. This is because the name of the print queue can be freely changed, and the print queue to be deleted may not be specified by the name of the print queue.
S610において、WSDデバイス登録部116は、対象デバイスを再びOSのデータベースに登録する。
In step S610, the WSD
S611において、対象デバイスが再びOSのデータベースに登録されると(S610)、OSのPnP−X機能が誘発され、S505で登録されたドライバの印刷キューがWSD通信ポートに割り当てて生成される。S611の処理が完了すると、本フローチャートの処理を終了し、再び図5のフローチャートに復帰する。 In S611, when the target device is registered again in the OS database (S610), the PnP-X function of the OS is triggered, and the driver print queue registered in S505 is assigned to the WSD communication port and generated. When the process of S611 is completed, the process of this flowchart is terminated, and the process returns to the flowchart of FIG.
以上説明した通り、本実施形態のドライバのインストール手法によれば、OSが提供する汎用ドライバの特性を考慮して印刷キューを生成する。そのため、本実施形態のドライバのインストール手法は、デバイスに関連付けて生成された、OSが提供する汎用ドライバの印刷キューを削除しつつ、デバイスの製造元が提供するドライバの印刷キューを生成することができる。 As described above, according to the driver installation method of the present embodiment, the print queue is generated in consideration of the characteristics of the general-purpose driver provided by the OS. Therefore, the driver installation method of the present embodiment can generate a driver print queue provided by the device manufacturer while deleting the general-purpose driver print queue provided by the OS, which is generated in association with the device. .
[実施形態2]
実施形態1によれば、デバイスに関連付けて生成された、OSが提供する汎用ドライバ(Inboxドライバ)の印刷キューを削除しつつ、デバイスの製造元が提供するドライバ(Outboxドライバ)の印刷キューを生成することができる。しかし、実施形態1の手法では、以下のユースケースにおいて問題が発生する。すなわち、複数のOutboxドライバが既にインストールされており、これら複数のOutboxドライバのうち一部を更新する場合、非更新対象のOutboxドライバの印刷キューが削除されてしまう。実施形態2のドライバのインストール手法は、上記問題に鑑み、非更新対象のOutboxドライバの印刷キューを保持しつつ、更新対象のOutboxドライバを更新することができる。以下、実施形態1と共通する部分については説明を簡略化ないし省略し、以下では本実施形態に特有な点を中心に説明する。
[Embodiment 2]
According to the first embodiment, the print queue of the driver (Outbox driver) provided by the device manufacturer is generated while deleting the print queue of the general-purpose driver (Inbox driver) provided by the OS generated in association with the device. be able to. However, the method of the first embodiment causes a problem in the following use cases. In other words, when a plurality of Outbox drivers are already installed and a part of the plurality of Outbox drivers is updated, the print queue of the non-update target Outbox driver is deleted. In view of the above problem, the driver installation method according to the second exemplary embodiment can update the update target Outlook driver while holding the print queue of the non-update target Outlook driver. Hereinafter, the description of the parts common to the first embodiment will be simplified or omitted, and the following description will focus on the points peculiar to the present embodiment.
(印刷キューの生成手順)
S601〜S605は、実施形態1と同じため説明を省略する。
S701において、S606の判定結果が補助記憶装置106などの記憶領域に記憶される。すなわち、PnP−X IDが取得された印刷ポートに割り当てられている印刷キュー名が、S605〜S702の処理ループごとに記憶される。S701で記憶された印刷キュー名は、後述のS703の判定処理において参照される。
(Print queue creation procedure)
Since S601 to S605 are the same as those in the first embodiment, description thereof is omitted.
In S701, the determination result in S606 is stored in a storage area such as the auxiliary storage device 106. That is, the print queue name assigned to the print port from which the PnP-X ID has been acquired is stored for each processing loop of S605 to S702. The print queue name stored in S701 is referred to in the determination process in S703 described later.
S607は、実施形態1と同じため説明を省略する。
S702において、S607の判定結果が補助記憶装置106などの記憶領域に記憶される。すなわち、登録されたドライバ(例えば、Outboxドライバ)と一致すると判定された印刷キュー名が、S605〜S702の処理ループごとに記憶される。S702で記憶された印刷キュー名は、後述のS703の判定処理において参照される。全ての印刷キューについて処理が完了している場合(S605:YES)、S703に移行し、対象デバイスをOSのデータベースから削除するか否かが判定される。
Since S607 is the same as that of the first embodiment, description thereof is omitted.
In S <b> 702, the determination result in S <b> 607 is stored in a storage area such as the auxiliary storage device 106. In other words, the print queue name determined to match the registered driver (for example, the Outbox driver) is stored for each processing loop of S605 to S702. The print queue name stored in S702 is referred to in the determination process in S703 described later. If the processing has been completed for all the print queues (S605: YES), the process proceeds to S703 to determine whether or not to delete the target device from the OS database.
S703において、S701で記憶された判定結果が参照され、PnP−X IDが取得された印刷ポートに割り当てられている印刷キューが少なくとも1つ以上存在するか否かが判定される。条件を満たす印刷キューが少なくとも1つ以上存在する場合(S703:YES)、S704に移行する。条件を満たす印刷キューが存在しない場合(S703:NO)、S704〜S609をスキップしてS610に移行する。 In step S703, the determination result stored in step S701 is referred to, and it is determined whether there is at least one print queue assigned to the print port for which the PnP-X ID has been acquired. If there is at least one print queue that satisfies the conditions (S703: YES), the process proceeds to S704. If there is no print queue that satisfies the conditions (S703: NO), S704 to S609 are skipped and the process proceeds to S610.
S704において、S702で記憶された判定結果が参照され、S703の条件を満たす印刷キューに対応するドライバが、いずれもS505で登録されたドライバと一致するか否かが判定される。いずれも登録されたドライバと一致しない場合(S704:YES)、S608に移行する。登録されたドライバと一致する印刷キューが存在する場合(S704:NO)、S608〜S609をスキップしてS610に移行する。
S608〜S611は、実施形態1と同じため説明を省略する。S611の処理を完了すると、本フローチャートを終了し、再び図5のフローチャートに復帰する。
In S704, the determination result stored in S702 is referred to, and it is determined whether or not any driver corresponding to the print queue satisfying the condition in S703 matches the driver registered in S505. If none of them matches the registered driver (S704: YES), the process proceeds to S608. If there is a print queue that matches the registered driver (S704: NO), S608 to S609 are skipped and the process proceeds to S610.
Since S608 to S611 are the same as those in the first embodiment, description thereof is omitted. When the process of S611 is completed, this flowchart is ended, and the process returns to the flowchart of FIG.
以上説明した通り、本実施形態におけるドライバのインストール手法によれば、非更新対象のOutboxドライバの印刷キューを保持しつつ、更新対象のOutboxドライバを更新することができる。 As described above, according to the driver installation method of the present embodiment, it is possible to update the update target Outlook driver while holding the print queue of the non-update target Outlook driver.
以下、対象デバイス200について、更新対象のGDIドライバと、非更新対象のXPSドライバとがコンピュータ100に既にインストールされている場合を具体例として説明する。GDIドライバおよびXPSドライバは双方Outboxドライバであり、これらの印刷キューはWSD通信ポートに割り当てられているものとする。この場合、実施形態1の手法では、非更新対象のXPSドライバが登録済みドライバと一致しないと判定されるので(S607:NO)、XPSドライバの印刷キューが削除対象の印刷キーと判定されてしまう。一方、本実施形態の手法では、複数のOutboxドライバ(GDIドライバおよびXPSドライバが含まれる)を考慮した判定処理(S703〜S704)が実行されるため、非更新対象のXPSドライバの印刷キューが削除対象の印刷キーと判定されない。かかる構成により、本実施形態の手法では、非更新対象のOutboxドライバの印刷キューを保持しつつ、更新対象のOutboxドライバを更新することができる。
Hereinafter, the case where the update target GDI driver and the non-update target XPS driver are already installed in the
(その他の実施例)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
(Other examples)
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program This process can be realized. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
1・・・・情報処理システム
100・・コンピュータ
200・・デバイス
400・・デバイス
110・・アプリケーション(インストーラ)
111・・デバイス検出部
112・・TCP/IPデバイス検索部
113・・WSDデバイス検索部
114・・UUID取得部
115・・Inboxドライバ検出部
116・・WSDデバイス登録部
1.
111 ··
Claims (12)
デバイスの製造元が提供するドライバを登録する登録手段と、
前記デバイスのUUIDと前記情報処理装置の印刷ポート名とを用いてPnP−X IDを取得する取得手段と、
前記情報処理装置にインストール済みのドライバの印刷キューが、前記PnP−X IDが取得された印刷ポートに割り当てられており、かつ、前記印刷キューに対応するドライバが前記登録されたドライバと一致しない場合、前記印刷キューを削除する削除手段と、
前記登録されたドライバの印刷キューをWSD通信ポートに割り当てて生成する生成手段と、を有する
ことを特徴とする情報処理装置。 An information processing apparatus,
A registration means for registering a driver provided by the device manufacturer;
Obtaining means for obtaining a PnP-X ID using the UUID of the device and the print port name of the information processing apparatus;
The print queue of the driver installed in the information processing apparatus is assigned to the print port from which the PnP-X ID has been acquired, and the driver corresponding to the print queue does not match the registered driver Deleting means for deleting the print queue;
An information processing apparatus comprising: a generation unit configured to allocate and generate a print queue of the registered driver to a WSD communication port.
デバイスの製造元が提供するドライバを登録する登録手段と、
前記デバイスのUUIDと前記情報処理装置の印刷ポート名とを用いてPnP−X IDを取得する取得手段と、
前記PnP−X IDが取得された印刷ポートに割り当てられている印刷キューが少なくとも1つ以上存在し、かつ、前記印刷キューに対応するドライバが、いずれも前記登録されたドライバと一致しない場合、前記印刷キューを削除する削除手段と、
前記登録されたドライバの印刷キューをWSD通信ポートに割り当てて生成する生成手段と、を有する
ことを特徴とする情報処理装置。 An information processing apparatus,
A registration means for registering a driver provided by the device manufacturer;
Obtaining means for obtaining a PnP-X ID using the UUID of the device and the print port name of the information processing apparatus;
When there is at least one print queue assigned to the print port from which the PnP-X ID has been acquired and none of the drivers corresponding to the print queue match the registered driver, A deletion means for deleting the print queue;
An information processing apparatus comprising: a generation unit configured to allocate and generate a print queue of the registered driver to a WSD communication port.
デバイスの製造元が提供するドライバを登録する登録ステップと、
前記デバイスのUUIDと前記情報処理装置の印刷ポート名とを用いてPnP−X IDを取得する取得ステップと、
前記情報処理装置にインストール済みのドライバの印刷キューが、前記PnP−X IDが取得された印刷ポートに割り当てられており、かつ、前記印刷キューに対応するドライバが前記登録されたドライバと一致しない場合、前記印刷キューを削除する削除ステップと、
前記登録されたドライバの印刷キューをWSD通信ポートに割り当てて生成する生成ステップと、を有する
ことを特徴とするドライバのインストール方法。 A method for installing a driver in an information processing apparatus,
A registration step for registering a driver provided by the device manufacturer;
An acquisition step of acquiring a PnP-X ID using the UUID of the device and the print port name of the information processing apparatus;
The print queue of the driver installed in the information processing apparatus is assigned to the print port from which the PnP-X ID has been acquired, and the driver corresponding to the print queue does not match the registered driver Deleting the print queue; and
A driver installation method comprising: generating a print queue of the registered driver by assigning it to a WSD communication port.
デバイスの製造元が提供するドライバを登録する登録ステップと、
前記デバイスのUUIDと前記情報処理装置の印刷ポート名とを用いてPnP−X IDを取得する取得ステップと、
前記PnP−X IDが取得された印刷ポートに割り当てられている印刷キューが少なくとも1つ以上存在し、かつ、前記印刷キューに対応するドライバが、いずれも前記登録されたドライバと一致しない場合、前記印刷キューを削除する削除ステップと、
前記登録されたドライバの印刷キューをWSD通信ポートに割り当てて生成する生成ステップと、を有する
ことを特徴とするドライバのインストール方法。 A method for installing a driver in an information processing apparatus,
A registration step for registering a driver provided by the device manufacturer;
An acquisition step of acquiring a PnP-X ID using the UUID of the device and the print port name of the information processing apparatus;
When there is at least one print queue assigned to the print port from which the PnP-X ID has been acquired and none of the drivers corresponding to the print queue match the registered driver, A delete step to delete the print queue;
A driver installation method comprising: generating a print queue of the registered driver by assigning it to a WSD communication port.
デバイスの製造元が提供するドライバを登録する登録手段と、
前記デバイスのUUIDと前記情報処理装置の印刷ポート名とを用いてPnP−X IDを取得する取得手段と、
前記情報処理装置にインストール済みのドライバの印刷キューが、前記PnP−X IDが取得された印刷ポートに割り当てられており、かつ、前記印刷キューに対応するドライバが前記登録されたドライバと一致しない場合、前記印刷キューを削除する削除手段と、
前記登録されたドライバの印刷キューをWSD通信ポートに割り当てて生成する生成手段と、を有する情報処理装置として機能させるためのプログラム。 A program for causing an information processing apparatus to function.
A registration means for registering a driver provided by the device manufacturer;
Obtaining means for obtaining a PnP-X ID using the UUID of the device and the print port name of the information processing apparatus;
The print queue of the driver installed in the information processing apparatus is assigned to the print port from which the PnP-X ID has been acquired, and the driver corresponding to the print queue does not match the registered driver Deleting means for deleting the print queue;
A program for causing an information processing apparatus to function as an information processing apparatus including: a generation unit that allocates and generates a print queue of the registered driver to a WSD communication port.
デバイスの製造元が提供するドライバを登録する登録手段と、
前記デバイスのUUIDと印刷ポート名とを用いてPnP−X IDを取得する取得手段と、
前記PnP−X IDが取得された印刷ポートに割り当てられている印刷キューが少なくとも1つ以上存在し、かつ、前記印刷キューに対応するドライバが、いずれも前記登録されたドライバと一致しない場合、前記印刷キューを削除する削除手段と、
前記登録されたドライバの印刷キューをWSD通信ポートに割り当てて生成する生成手段と、を有する情報処理装置として機能させるためのプログラム。 A program for causing an information processing apparatus to function.
A registration means for registering a driver provided by the device manufacturer;
Obtaining means for obtaining a PnP-X ID using the UUID and print port name of the device;
When there is at least one print queue assigned to the print port from which the PnP-X ID has been acquired and none of the drivers corresponding to the print queue match the registered driver, A deletion means for deleting the print queue;
A program for causing an information processing apparatus to function as an information processing apparatus including: a generation unit that allocates and generates a print queue of the registered driver to a WSD communication port.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017095883A JP6882060B2 (en) | 2017-05-12 | 2017-05-12 | Information processing device, driver installation method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017095883A JP6882060B2 (en) | 2017-05-12 | 2017-05-12 | Information processing device, driver installation method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018194910A true JP2018194910A (en) | 2018-12-06 |
JP6882060B2 JP6882060B2 (en) | 2021-06-02 |
Family
ID=64569060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017095883A Active JP6882060B2 (en) | 2017-05-12 | 2017-05-12 | Information processing device, driver installation method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6882060B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020126319A (en) * | 2019-02-01 | 2020-08-20 | ブラザー工業株式会社 | Support program, information processor, and printing method |
JP2020170330A (en) * | 2019-04-03 | 2020-10-15 | 株式会社デンソーウェーブ | Driver setting method and program |
EP3945408A1 (en) | 2020-07-29 | 2022-02-02 | Canon Kabushiki Kaisha | Information processing apparatus, control method, and program |
JP7433874B2 (en) | 2019-12-11 | 2024-02-20 | キヤノン株式会社 | Information processing device, method, and program |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010160616A (en) * | 2009-01-07 | 2010-07-22 | Seiko Epson Corp | Host device, method for controlling the same, image forming system, and computer program |
KR101424293B1 (en) * | 2006-05-15 | 2014-08-01 | 마이크로소프트 코포레이션 | Mechanism to convey discovery information in a wireless network |
US20140233050A1 (en) * | 2013-02-19 | 2014-08-21 | Canon Kabushiki Kaisha | Information processing apparatus and method therefor |
JP2016224731A (en) * | 2015-05-29 | 2016-12-28 | キヤノン株式会社 | Information processing apparatus, information processing method, and computer program |
-
2017
- 2017-05-12 JP JP2017095883A patent/JP6882060B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101424293B1 (en) * | 2006-05-15 | 2014-08-01 | 마이크로소프트 코포레이션 | Mechanism to convey discovery information in a wireless network |
JP2010160616A (en) * | 2009-01-07 | 2010-07-22 | Seiko Epson Corp | Host device, method for controlling the same, image forming system, and computer program |
US20140233050A1 (en) * | 2013-02-19 | 2014-08-21 | Canon Kabushiki Kaisha | Information processing apparatus and method therefor |
JP2014160318A (en) * | 2013-02-19 | 2014-09-04 | Canon Inc | Information processor and method thereof |
JP2016224731A (en) * | 2015-05-29 | 2016-12-28 | キヤノン株式会社 | Information processing apparatus, information processing method, and computer program |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020126319A (en) * | 2019-02-01 | 2020-08-20 | ブラザー工業株式会社 | Support program, information processor, and printing method |
JP2020170330A (en) * | 2019-04-03 | 2020-10-15 | 株式会社デンソーウェーブ | Driver setting method and program |
JP7218657B2 (en) | 2019-04-03 | 2023-02-07 | 株式会社デンソーウェーブ | Driver setting method and program |
JP7433874B2 (en) | 2019-12-11 | 2024-02-20 | キヤノン株式会社 | Information processing device, method, and program |
EP3945408A1 (en) | 2020-07-29 | 2022-02-02 | Canon Kabushiki Kaisha | Information processing apparatus, control method, and program |
US11523020B2 (en) | 2020-07-29 | 2022-12-06 | Canon Kabushiki Kaisha | Information processing apparatus, control method, and non-transitory computer-readable storage medium storing program |
Also Published As
Publication number | Publication date |
---|---|
JP6882060B2 (en) | 2021-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4485997B2 (en) | Print control apparatus, print control system, print control method, print control program, and recording medium | |
JP6882060B2 (en) | Information processing device, driver installation method and program | |
JP6787115B2 (en) | Image forming device, function addition method, program, | |
US20130301069A1 (en) | Information processing device, computer program product, and image forming apparatus | |
JP2009054027A (en) | Information processor, display screen customizing method, and display screen customizing program | |
KR20170019226A (en) | Method for using cloud print service, and apparatus for performing the same | |
JP6520404B2 (en) | Mobile terminal and output program | |
JP2011180681A (en) | Installer and method for installing printer driver | |
JP5396847B2 (en) | Printing apparatus and control method thereof | |
JP2018084893A (en) | Information processing apparatus, control method and program | |
JP6365247B2 (en) | Information processing apparatus, information processing system, and information processing method | |
JP6226694B2 (en) | Information processing apparatus, control method therefor, and program | |
US20210314455A1 (en) | Appliance setting apparatus and non-transitory computer-readable recording medium storing appliance setting program | |
JP2016126604A (en) | Terminal device, program, information processing system and output method | |
JP6061730B2 (en) | Management server device, client device, information processing method, and program | |
JP2020140394A (en) | Information processor and control method thereof and program and system | |
JP2015121887A (en) | Information processing device and control method thereof, and program | |
US9456096B2 (en) | Recording medium | |
JP2015049862A (en) | Information processing device, system, method, and program | |
JP2019160065A (en) | Job system, job execution method, information processing device, and program | |
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 | |
JP2019016221A (en) | Information processing apparatus, program, and control method | |
JP2018147300A (en) | Information processing apparatus, information processing method, and program | |
JP2018156467A (en) | Information processing system, information processing apparatus and information processing method | |
JP2011248729A (en) | Print control apparatus, image processing apparatus, print control system, print control method, print control program, and storage medium storing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200511 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210311 |
|
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: 20210406 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210506 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6882060 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |