JP2008193217A - Automatic scanner connection program - Google Patents

Automatic scanner connection program Download PDF

Info

Publication number
JP2008193217A
JP2008193217A JP2007023060A JP2007023060A JP2008193217A JP 2008193217 A JP2008193217 A JP 2008193217A JP 2007023060 A JP2007023060 A JP 2007023060A JP 2007023060 A JP2007023060 A JP 2007023060A JP 2008193217 A JP2008193217 A JP 2008193217A
Authority
JP
Japan
Prior art keywords
scanner
command
usb device
function
virtual
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
JP2007023060A
Other languages
Japanese (ja)
Other versions
JP4555926B2 (en
Inventor
Eishoku Hayashi
栄植 林
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.)
Silex Technology Inc
Original Assignee
Silex Technology 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 Silex Technology Inc filed Critical Silex Technology Inc
Priority to JP2007023060A priority Critical patent/JP4555926B2/en
Publication of JP2008193217A publication Critical patent/JP2008193217A/en
Application granted granted Critical
Publication of JP4555926B2 publication Critical patent/JP4555926B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Facsimiles In General (AREA)
  • Information Transfer Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide an automatic scanner connection program which automatically connects a USB scanner to a PC when a user executes scanning, and which disconnects the USB scanner from the PC after completing the scanning. <P>SOLUTION: In a system wherein a client terminal is connected to a USB device server to which a scanner is locally connected through a network, a computer in the client terminal is made to achieve: a function for acquiring a command from a DSM when a scanning command is issued from a scanning application in the client terminal; a function for reading out the network information of the USB device server for managing the scanner and information capable of specifying the scanner from a setting storage part when a command target is a scanner to be automatically connected; a function for transmitting the command together with the information of the USB device server and the scanner information to a virtual USB port driver; and a function for executing an image acquisition request and image data acquisition through a DS. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、スキャナの標準的なインタフェースであるTWAIN(Tool Without An Interesting Name)を利用したリモート・スキャナの自動接続プログラムに関するものである。   The present invention relates to an automatic connection program for a remote scanner using TWAIN (Tool Without An Interesting Name) which is a standard interface of a scanner.

昨今、インターネットの普及に伴い、小規模であってもコンピュータ同士をネットワークで接続し、データの共有やプリンタ等コンピュータ周辺機器の共用が一般的である。また、USB(Universal Serial Bus)規格の実用化に伴い、USBケーブルでコンピュータに接続できる手軽さから、数多くのコンピュータ周辺機器(以下、USBデバイスと称する)にUSB端子が実装されている。   In recent years, with the spread of the Internet, it is common to connect computers via a network even on a small scale, and share data and computer peripheral devices such as printers. In addition, along with the practical use of the USB (Universal Serial Bus) standard, USB terminals are mounted on many computer peripheral devices (hereinafter referred to as USB devices) because they can be easily connected to a computer with a USB cable.

しかしながら、本来USBデバイスはコンピュータと1対1で接続することを前提に設計されており、ネットワークで共有しようとしてもその具体的手段が見当たらなかった。かかる問題を解決するため、USBデバイスとは独立した装置である周辺機器サーバ装置が用いられる。この周辺機器サーバ装置が用いられることにより、場合によっては、あらかじめ接続するUSBデバイスのドライバをコンピュータ(PC)にインストールしておくことで、多くの種類のUSBデバイスをネットワーク環境下で共有することが可能となる。プリンタだけでなくスキャナやストレージなど様々な種類のUSBデバイスをネットワーク環境下で共有し得る周辺機器サーバ装置として、USBデバイスサーバが知られている(非特許文献1)。   However, the USB device is originally designed on the assumption that it is connected to a computer on a one-to-one basis, and no specific means has been found even if it is shared on a network. In order to solve such a problem, a peripheral server device that is an independent device from the USB device is used. By using this peripheral device server apparatus, in some cases, it is possible to share many types of USB devices in a network environment by installing a driver of a USB device to be connected in advance in a computer (PC). It becomes possible. A USB device server is known as a peripheral server device that can share various types of USB devices such as scanners and storages as well as printers in a network environment (Non-Patent Document 1).

特に、スキャナに関しては、専有面積が比較的大きく、常時利用されることが多くないといった理由から、ネットワーク化が強く要望されていた。このような要望に対し、上記したUSBデバイスサーバを用いることで、スキャナをネットワーク越しに利用することが可能となり、この結果、スキャナの利便性を大きく向上させることができる。   In particular, the scanner has been strongly requested to be networked because it has a relatively large area and is not frequently used at all times. In response to such a demand, by using the USB device server described above, the scanner can be used over the network, and as a result, the convenience of the scanner can be greatly improved.

このようにUSBデバイスサーバは、従来1台のPCからしか接続使用できなかったUSBデバイスを、ネットワーク上の任意のPCからネットワークを介して共用できるようにするものである。   As described above, the USB device server allows a USB device that has been conventionally connected and used from only one PC to be shared from any PC on the network via the network.

各PCでは、このUSBデバイスサーバに接続されたUSBデバイスを、自ら備えるローカルインタフェースに接続されているUSBデバイスと同様に利用できる。すなわち、USBデバイスサーバに接続されたUSBデバイスのステータスを画面上でモニタしたり、データファイルを送受信したりすることができる。より具体的には、USBデバイスサーバに接続されたUSBデバイスであるプリンタやスキャナを、ネットワーク上のPCから選択してプリンタ出力やスキャニングデータの取込みを行えることができる。   Each PC can use the USB device connected to the USB device server in the same manner as the USB device connected to the local interface provided by itself. That is, the status of the USB device connected to the USB device server can be monitored on the screen, and a data file can be transmitted and received. More specifically, a printer or scanner that is a USB device connected to the USB device server can be selected from a PC on the network, and printer output and scanning data can be captured.

ここで、USBデバイスサーバのシステム(以下、USBデバイスサーバシステム)を、図1のシステム概略図を用いて説明する。かかるシステムは、PC(101a、101b、101c)と、USBデバイスサーバ103と、USBデバイスサーバ103に接続されたUSBデバイス104から構成される。PC(101a,101b,101c)とUSBデバイスサーバ103との間はLAN(ローカルエリアネットワーク)などのネットワーク102によって接続され、USBデバイスサーバ103とUSBデバイス104との間はUSBケーブルによって接続されている。
USBデバイスサーバ103の有するUSBポートの数以上のUSBデバイス103を利用する場合、USBハブを介してUSBデバイス104をUSBデバイスサーバ103に接続すればよい。また、複数のUSBデバイスサーバ103がネットワーク102上に存在し、それぞれにUSBデバイスを接続するようにしても良い。
Here, a USB device server system (hereinafter referred to as a USB device server system) will be described with reference to a system schematic diagram of FIG. Such a system includes a PC (101a, 101b, 101c), a USB device server 103, and a USB device 104 connected to the USB device server 103. The PC (101a, 101b, 101c) and the USB device server 103 are connected by a network 102 such as a LAN (local area network), and the USB device server 103 and the USB device 104 are connected by a USB cable. .
When using more USB devices 103 than the number of USB ports of the USB device server 103, the USB device 104 may be connected to the USB device server 103 via a USB hub. Also, a plurality of USB device servers 103 may exist on the network 102, and USB devices may be connected to each.

次に、USBデータの送受信のプロセスについて説明する。
PC(101a,101b,101c)からUSBデバイス104へデータを送信する場合、PC(101a,101b,101c)は、アプリケーションから発行されるUSBデバイス104へのコマンドやデータをTCP/IP等のネットワークプロトコル内部にカプセル化し、USBデバイスサーバ103に向けて送信する。
このカプセル化処理は、PCに予め組み込んである仮想USBポートドライバ(図示せず)により行われる。USBデバイスサーバ103は、これを受信すると、カプセル化を解除し、コマンドやデータを抽出し、かかるコマンドやデータをUSBデバイス104へ与える。このようにしてUSBデバイスサーバのシステムは、PC(101a,101b,101c)からネットワーク102を経由したUSBデバイス104のリモートコントロールを可能としている。逆にPC(101a,101b,101c)が、USBデバイス104からデータを受信する場合は、前述した送信プロセスとは逆の方法で動作している。
Next, a USB data transmission / reception process will be described.
When transmitting data from the PC (101a, 101b, 101c) to the USB device 104, the PC (101a, 101b, 101c) sends a command or data to the USB device 104 issued from the application to a network protocol such as TCP / IP. It is encapsulated inside and sent to the USB device server 103.
This encapsulation process is performed by a virtual USB port driver (not shown) that is incorporated in the PC in advance. Upon receiving this, the USB device server 103 releases the encapsulation, extracts the command and data, and gives the command and data to the USB device 104. In this way, the USB device server system enables remote control of the USB device 104 via the network 102 from the PC (101a, 101b, 101c). On the other hand, when the PC (101a, 101b, 101c) receives data from the USB device 104, it operates in the reverse manner to the transmission process described above.

次に実際の使用方法について説明する。
USBデバイスサーバ103に接続されたUSBデバイス104をユーザがPCから利用する場合、まず、USBデバイスサーバ103に付属のアプリケーションをユーザが操作して、USBデバイスサーバ103とPC間の接続を確立する必要がある。
より具体的には、前述したアプリケーションの画面にはネットワーク上に存在するUSBデバイスサーバ103とこれに接続されているUSBデバイス104の一覧が表示されており、ユーザがこの一覧から所望の機器を手動で選択し、アプリケーション上の接続ボタンを押下することにより接続する。即ち、USBデバイス104を利用する前に、必ず上記した接続のプロセスが必要になる。
一方、USBデバイス104使用後は、逆に切断作業が必要になり、この作業を行わない限り、当該USBデバイス104は他PCから利用できないことになる。
Next, actual usage will be described.
When a user uses a USB device 104 connected to the USB device server 103 from a PC, first, the user must operate an application attached to the USB device server 103 to establish a connection between the USB device server 103 and the PC. There is.
More specifically, a list of the USB device server 103 existing on the network and the USB device 104 connected thereto is displayed on the application screen described above, and the user manually selects a desired device from the list. Select with and press the connection button on the application to connect. That is, before using the USB device 104, the connection process described above is necessarily required.
On the other hand, after the USB device 104 is used, a disconnection work is necessary, and the USB device 104 cannot be used from another PC unless this work is performed.

このような操作は、頻繁にUSBデバイス104を利用する場合、面倒な作業となり、特に使用頻度の多いプリンタでは利便性を欠いていた。また、このような作業は、コンピュータに不慣れなユーザにとっては敷居の高い作業となっていた。
上述した問題を解決するため、印刷のスプール領域を監視するプログラムをPCに組み込んでおき、印刷データがスプールされると、予め指定しておいたUSBデバイス104と自動的に接続し、スプール領域が空になると切断する、自動接続・切断技術が公開されている(特許文献1)。
Such an operation is troublesome when the USB device 104 is frequently used, and lacks convenience in a printer that is frequently used. Moreover, such a work has become a work with a high threshold for a user unfamiliar with a computer.
In order to solve the above problem, a program for monitoring the print spool area is built in the PC, and when the print data is spooled, it automatically connects to the USB device 104 specified in advance, and the spool area is An automatic connection / disconnection technique for disconnecting when empty is disclosed (Patent Document 1).

国際公開公報第2006082782号International Publication No. 20066082782 サイレックス・テクノロジー社のHP「USBデバイスサーバ」(URLアドレス:http://www.silex.jp/japan/products/network/what/index3.html)Silex Technology's HP USB Device Server (URL address: http://www.silex.jp/japan/products/network/what/index3.html)

上述した自動接続・切断技術は、PCにおける印刷スプール領域を監視するものであり、プリンタ以外のスキャナなどその他USBデバイスには利用できない。また、上述したように、スキャナはネットワーク化が強く要望されている。USBデバイスサーバシステムを利用することにより、ネットワーク上での利用が可能になるものの、依然としてUSBデバイスサーバシステム特有の接続・切断作業が必要となる。このような作業は面倒であり、また、コンピュータに不慣れなユーザにとっては敷居の高い作業である。   The automatic connection / disconnection technique described above monitors the print spool area in the PC and cannot be used for other USB devices such as scanners other than printers. Further, as described above, the scanner is strongly required to be networked. By using the USB device server system, it becomes possible to use it on the network, but connection / disconnection work specific to the USB device server system is still required. Such work is troublesome, and is a high threshold for a user who is not familiar with computers.

本発明は、上記した課題に鑑みたものであり、USBデバイスサーバシステムにおいて、 ユーザがスキャンを実行した際、自動的にUSBスキャナとPCを接続し、スキャンが完了すると切断する、スキャナに関する自動接続プログラムを提供することである。   The present invention has been made in view of the above-described problems, and in a USB device server system, when a user executes a scan, the USB scanner and the PC are automatically connected and disconnected when the scan is completed. Is to provide a program.

上記目的を達成するため、本発明のスキャナ自動接続プログラムは、1または複数のクライアントPCと、スキャナが接続されたUSBデバイスサーバとがネットワークで接続されたシステムにおいて、
自動接続に指定されたスキャナ選択情報を設定保持部に設定保存する機能と、データソースマネージャ(DSM)からスキャン開始コマンドを受け取る機能と、スキャン開始コマンドの処理対象が自動接続に指定されているスキャナであった場合に、スキャナが接続されたUSBデバイスサーバのネットワーク情報とスキャナを特定可能な情報とを設定保持部から読み込む機能と、読み込んだUSBデバイスサーバのネットワーク情報およびスキャナに関する情報を、仮想USBポートドライバに対して送信する機能と、データソース(DS)より画像取得コマンドを受け取り、これを透過的に仮想USBポートドライバへ送信する機能と、をクライアントPCに実現させるためのものである。
In order to achieve the above object, an automatic scanner connection program of the present invention is a system in which one or more client PCs and a USB device server to which a scanner is connected are connected via a network.
A function for setting and saving scanner selection information designated for automatic connection in the setting holding unit, a function for receiving a scan start command from the data source manager (DSM), and a scanner for which the processing target of the scan start command is designated for automatic connection The function of reading the network information of the USB device server to which the scanner is connected and the information that can specify the scanner from the setting holding unit, the network information of the read USB device server and the information about the scanner, the virtual USB This is for causing the client PC to realize a function of transmitting to the port driver and a function of receiving an image acquisition command from the data source (DS) and transparently transmitting the command to the virtual USB port driver.

上記した本発明のスキャナ自動接続プログラムにより、ユーザがスキャンを実行した際、自動的にUSBスキャナとクライアントPCを接続することが可能となる。
本発明のスキャナ自動接続プログラムは、実質的には後述する仮想データソース(仮想DS)のことである。
なお、データソース(DS)より画像取得コマンドを受け取り、これを透過的に仮想USBポートドライバへ送信するとは、DSより受け取った画像取得コマンドに対し、特に加工を加えずに、仮想USBポートドライバへ送信するという意味である。
The above-described scanner automatic connection program of the present invention makes it possible to automatically connect the USB scanner and the client PC when the user executes a scan.
The scanner automatic connection program of the present invention is substantially a virtual data source (virtual DS) described later.
Note that receiving an image acquisition command from the data source (DS) and transparently transmitting it to the virtual USB port driver means that the image acquisition command received from the DS is sent to the virtual USB port driver without any particular processing. It means to send.

また、本発明のスキャナ自動接続プログラムは、上記のプログラムにおいて、好適には、DSMよりクローズコマンドを受け取ると、仮想USBポートドライバに対し、クライアントPCとスキャナとの切断を指示する要求を送信する機能をさらにクライアントPCに実現させるためのものである。   The scanner automatic connection program according to the present invention preferably has a function of transmitting a request for instructing disconnection between the client PC and the scanner to the virtual USB port driver when receiving the close command from the DSM in the above program. Is further realized in the client PC.

上記した本発明のスキャナ自動接続プログラムにより、ユーザがスキャンを実行した際、自動的にUSBスキャナとクライアントPCを接続し、スキャンが完了すると切断することが可能となる。   With the above-described scanner automatic connection program of the present invention, when the user executes a scan, the USB scanner and the client PC are automatically connected, and the scan can be disconnected when the scan is completed.

また、本発明のスキャナ自動接続プログラムは、上記のプログラムにおいて、好適には、自動接続に指定されているスキャナが他のクライアントPCによって使用されているか否かを監視する機能と、スキャナが他のクライアントPCによって使用中と判断する、または、当該スキャナが他のクライアントPCによる使用から解放されたと判断する場合に、メッセージを画面に表示する機能と、をさらにクライアントPCに実現させるためのものである。   The scanner automatic connection program according to the present invention preferably includes a function for monitoring whether the scanner designated for automatic connection is being used by another client PC in the above program, This is for causing the client PC to further realize a function of displaying a message on the screen when it is determined that the client PC is in use, or when it is determined that the scanner is released from use by another client PC. .

自動接続に指定されているスキャナが他のクライアントPCによって使用されているか否かを監視する機能と、スキャナが他のクライアントPCによって使用中と判断する、または、当該スキャナが他のクライアントPCによる使用から解放されたと判断する場合に、メッセージを画面に表示する機能により、ユーザがスキャナ操作のリトライを行う手間を省くことができ、利便性が向上する。   A function for monitoring whether or not the scanner designated for automatic connection is being used by another client PC, and determining that the scanner is being used by another client PC, or that the scanner is being used by another client PC The function of displaying a message on the screen when it is determined that the user has been released can save the user from having to retry the scanner operation, improving convenience.

また、本発明のスキャナ自動接続プログラムは、上記のプログラムにおいて、好適には、タイマ機能を備え、DSMから自動接続に指定されているスキャナに対するスキャン開始コマンドを受け取った際、タイマ機能により設定されている所定の時間が経過するまでその後の処理を中断する機能をさらにクライアントPCに実現させるためのものである。   The scanner automatic connection program of the present invention preferably has a timer function in the above program, and is set by the timer function when a scan start command is received from the DSM for a scanner designated for automatic connection. This is to allow the client PC to further realize a function of interrupting subsequent processing until a predetermined time elapses.

設定されている所定の時間が経過するまでその後の処理を中断するタイマ機能により、ユーザがクライアントPCの場所からスキャナの場所まで移動する時間を考慮してスキャニング処理の開始を遅らせることが可能となる。   The timer function that interrupts subsequent processing until a predetermined time has elapsed allows the start of the scanning process to be delayed in consideration of the time required for the user to move from the location of the client PC to the location of the scanner. .

本発明のスキャナ自動接続プログラムによれば、ユーザがスキャンを実行した際、自動的にUSBスキャナとPCを接続し、スキャンが完了すると自動的に切断するといったユーザにフレンドリーなスキャナ使用環境を提供できるといった効果がある。   According to the scanner automatic connection program of the present invention, it is possible to provide a user-friendly scanner usage environment in which a USB scanner and a PC are automatically connected when a user performs a scan and automatically disconnects when the scan is completed. There is an effect.

以下、本発明の実施形態について、特にスキャナの標準的なインタフェースであるTWAIN(Tool Without An Interesting Name)を利用したものを例に挙げ、図面を参照しながら詳細に説明していく。以下、USBデバイスサーバシステムにおけるスキャナ自動接続プログラムの一実施形態を説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings, taking as an example an example using TWAIN (Tool Without An Interesting Name) which is a standard interface of a scanner. Hereinafter, an embodiment of a scanner automatic connection program in the USB device server system will be described.

本発明は、スキャナの標準的なインタフェースであるTWAIN(Tool Without An Interesting Name)を利用したプログラムである。先ず、図2にUSBデバイスサーバシステムを使用しない場合におけるPC内部の機能ブロック図を示す。
図2においてスキャニングアプリケーションは、画像取り込みに使用するソフトウェアを示している。具体的にはイメージ処理を行うアプリケーションの場合が多い。また、DSM(データソースマネージャ)は、通常OS(オペレーティングシステム)に予め組み込まれており、スキャニングアプリケーションと後述するDS(データソース)との間に位置し、PCに組み込まれているDSの一覧を持つなど、DSを管理するものである。
The present invention is a program using TWAIN (Tool Without An Interesting Name) which is a standard interface of a scanner. First, FIG. 2 shows a functional block diagram inside the PC when the USB device server system is not used.
In FIG. 2, the scanning application indicates software used for image capture. Specifically, there are many applications that perform image processing. The DSM (Data Source Manager) is normally installed in advance in the OS (Operating System) and is located between the scanning application and the DS (Data Source) described later, and displays a list of DS installed in the PC. It manages DS, such as having it.

なお、スキャニングアプリケーションとDSMおよびDSMとDSとのインタフェースは、TWAINを用いている。
DSは、通常各スキャナベンダから提供されるものであり、DSMを介して得られたTWAINコマンドを各スキャナ独自のコマンドに置き換える。置き換えられたコマンドはUSBインタフェースを介してスキャナに送られる。
Note that TWAIN is used as an interface between the scanning application and DSM and DSM and DS.
The DS is normally provided by each scanner vendor, and replaces the TWAIN command obtained via the DSM with a command unique to each scanner. The replaced command is sent to the scanner via the USB interface.

図3に、本発明を用いない従来のUSBデバイスサーバシステムにおけるPC内部の機能ブロック図を示す。図2と比較して、PC内に、DSとネットワークインタフェースの間に位置する仮想USBポートドライバおよび設定アプリケーションが追加されている。   FIG. 3 shows a functional block diagram inside the PC in a conventional USB device server system not using the present invention. Compared to FIG. 2, a virtual USB port driver and a setting application located between the DS and the network interface are added in the PC.

また、図15に本発明を用いない従来のUSBデバイスサーバシステムの処理フローチャートを示す。仮想USBポートドライバは、背景技術で記載した通り、スキャナに対するコマンドをカプセル化し、これをネットワークパケットとしてUSBデバイスサーバに送信するコンポーネントである。ここでは、DSから得られたスキャナ操作に関するコマンドをネットワークパケットにカプセル化し、ネットワークインタフェースを通じてUSBデバイスサーバに送信する。   FIG. 15 shows a process flowchart of a conventional USB device server system not using the present invention. As described in the background art, the virtual USB port driver is a component that encapsulates a command for the scanner and transmits it as a network packet to the USB device server. Here, a command related to the scanner operation obtained from the DS is encapsulated in a network packet and transmitted to the USB device server through the network interface.

一方、USBデバイスサーバから得られるカプセル化された応答データは、送信とは逆にカプセル化を解除して、DSに送る。また、仮想USBポートドライバは、上記したカプセル化に関する処理だけでなく、後述する設定アプリケーションからの接続の指示により、PCとUSBデバイスサーバに接続されたスキャナとの接続を実行し、このPCに対してスキャナを仮想的に認識させるようプラグアンドプレイ(PnP)通知処理も行う。設定アプリケーションは、ネットワーク上に存在するUSBデバイスサーバおよびこれに接続されているUSBデバイス情報を検索・取得し、これらの全てまたは一部分の一覧を設定アプリケーション画面に表示する。ここでいう情報とは、具体的には、USBデバイスサーバのIPアドレスを含むネットワーク情報およびUSBデバイスの名称等である。ユーザは設定アプリケーションに表示されるUSBデバイスサーバおよびUSBデバイスを手動で選択し、接続を実行することにより、PCからUSBデバイスを使用する。ここでは図示していないが、後述するように、設定アプリケーションが取得したこれらの情報を記憶領域に保存しても良い。なお、同図に示す他のコンポーネントであるDSMやDSの動作については後述する実施例にて説明する。 On the other hand, the encapsulated response data obtained from the USB device server is decapsulated and sent to the DS contrary to the transmission. Further, the virtual USB port driver executes not only the above-described processing related to the encapsulation but also the connection between the PC and the scanner connected to the USB device server according to the connection instruction from the setting application described later. Plug and play (PnP) notification processing is also performed so that the scanner is virtually recognized. The setting application searches and acquires the USB device server existing on the network and the USB device information connected thereto, and displays a list of all or part of them on the setting application screen. Specifically, the information here is network information including the IP address of the USB device server, the name of the USB device, and the like. The user manually selects the USB device server and the USB device displayed in the setting application, and executes the connection to use the USB device from the PC. Although not shown here, as described later, these pieces of information acquired by the setting application may be stored in a storage area. The operation of DSM and DS, which are other components shown in FIG.

図4に、本発明におけるPC内部の機能ブロック図を示す。図3のPC側と比較して、DSMと仮想USBポートドライバとの間に位置する仮想DS(データソース)、設定保持部およびコマンドバッファ部が追加されている。DSMからみた場合、仮想DSは通常のDSと同様に認識される。即ち、DSMにとって仮想DSとDSは等価のものであり、DSMは、これらの差異を意識する必要がない。 FIG. 4 shows a functional block diagram inside the PC in the present invention. Compared with the PC side in FIG. 3, a virtual DS (data source), a setting holding unit, and a command buffer unit located between the DSM and the virtual USB port driver are added. When viewed from the DSM, the virtual DS is recognized in the same way as a normal DS. That is, the virtual DS and the DS are equivalent to the DSM, and the DSM does not need to be aware of these differences.

設定保持部は、通常PCに備え付けられているハードディスク(HDD)等の記憶装置であり、上述したように、設定アプリケーションが取得したデータを保存する領域である。なお、保存されるデータは上述した情報に加え、どのスキャナに対し自動接続するかを示す選択情報が付加されている。コマンドバッファ部については後述する。 The setting holding unit is a storage device such as a hard disk (HDD) usually provided in the PC, and is an area for storing data acquired by the setting application as described above. In addition to the information described above, selection information indicating which scanner is automatically connected is added to the data to be stored. The command buffer unit will be described later.

設定保持部が持つ情報テーブルの一例を図12に示す。「IPアドレス」は、ネットワーク上に存在するUSBデバイスサーバのIPアドレスである。「ホスト」はUSBデバイスサーバのホスト名である。「デバイス」はUSBデバイスサーバに接続されているUSBデバイスの名称であり、これはUSBデバイスサーバ上において、USBデバイスが接続されている物理ポートなどの情報を含むロケーション情報(図示せず)に関連づけられている。「DS」は、デバイスであるスキャナに対応するDS名である。「自動接続」は、自動接続する際、どのスキャナに接続するかを示す選択情報である。 An example of the information table held by the setting holding unit is shown in FIG. “IP address” is an IP address of a USB device server existing on the network. “Host” is the host name of the USB device server. “Device” is the name of the USB device connected to the USB device server, and this is associated with location information (not shown) including information such as a physical port to which the USB device is connected on the USB device server. It has been. “DS” is a DS name corresponding to a scanner which is a device. “Automatic connection” is selection information indicating which scanner to connect to when performing automatic connection.

即ち、図12の場合、ホスト名Server2のUSBデバイスサーバに接続されている、Scanner2が自動接続の対象である。この自動接続の選択情報は、通常、設定アプリケーションからユーザ操作により与えられる。また、設定保持部を設けることで、設定アプリケーションを介さずとも、仮想DSが、直接、接続先スキャナ情報を読み込み、取得することができる。コマンドバッファ部は、DSMから得られるTWAINコマンドを必要に応じて一時保存する領域である。これは、通常PCに備えるRAM(図示せず)等により実現される。
以下の実施例では、本発明の仮想DSの一実施形態について説明する。
That is, in the case of FIG. 12, Scanner 2 connected to the USB device server with the host name Server 2 is the target of automatic connection. The automatic connection selection information is usually given by a user operation from a setting application. Further, by providing the setting holding unit, the virtual DS can directly read and acquire the connection destination scanner information without going through the setting application. The command buffer unit is an area for temporarily storing a TWAIN command obtained from the DSM as necessary. This is usually realized by a RAM (not shown) provided in the PC.
In the following example, an embodiment of the virtual DS of the present invention will be described.

先ず、本発明である第1の実施形態について説明する。図5は、第1の実施形態における仮想DSの機能ブロック図を示している。
図5において、TWAINインタフェースはDSMと通信するインタフェースであり、このDSMを通じてスキャニングアプリケーションからのスキャナに対するTWAINコマンドを受け取る。また、コマンド処理部は、DSMからのTWAINコマンドを監視し予め指定されたコマンドを検出すると、後述する所定の処理を実行する。また、DSインタフェースは、TWAINインタフェースを介して受け取ったTWAINコマンドをDSとやりとりするインタフェースである。そして、仮想USBポートドライバ制御部は、仮想USBポートドライバと仮想DSとの間のやりとりを制御する。
First, a first embodiment of the present invention will be described. FIG. 5 shows a functional block diagram of the virtual DS in the first embodiment.
In FIG. 5, the TWAIN interface is an interface for communicating with the DSM, and receives a TWAIN command for the scanner from the scanning application through the DSM. Further, the command processing unit monitors a TWAIN command from the DSM and executes a predetermined process to be described later when a command designated in advance is detected. The DS interface is an interface for exchanging the TWAIN command received via the TWAIN interface with the DS. The virtual USB port driver control unit controls the exchange between the virtual USB port driver and the virtual DS.

図6は、PCからスキャナに対し自動接続し、画像取得を行う際のシーケンスを示している。以下、図6に示すシーケンスを用いて、第1の実施形態における処理の流れを説明する。   FIG. 6 shows a sequence when the PC is automatically connected to the scanner and image acquisition is performed. Hereinafter, the flow of processing in the first embodiment will be described using the sequence shown in FIG.

(1)先ず、ユーザが設定アプリケーションを用いて、自動接続したいスキャナに対応するDSを選択する(S601)。
このときの選択画面の一例を図13に示す。この選択画面では、仮想DSを「SX Virtual TWAIN」と言う名称で表示しており、仮想DSであるSX Virtual TWAINと自動接続したいスキャナに対応するDSであるTWAIN2とが関連づけられている。これにより、図12に示す設定保持部が持つデータである自動接続カラムの対象スキャナが選択され、仮想DSと選択したDSとが関連づけられる。
(1) First, the user selects a DS corresponding to a scanner to be automatically connected using a setting application (S601).
An example of the selection screen at this time is shown in FIG. In this selection screen, the virtual DS is displayed with the name “SX Virtual TWAIN”, and SX Virtual TWAIN, which is the virtual DS, is associated with TWAIN2, which is the DS corresponding to the scanner to be automatically connected. As a result, the target scanner of the automatic connection column, which is data held in the setting holding unit shown in FIG. 12, is selected, and the virtual DS and the selected DS are associated with each other.

(2)ユーザがスキャニングアプリケーションのDS選択画面を開くと(S602)、スキャニングアプリケーションからDSMに対し、PCに組み込まれているDSのリストが要求される(S603)。DSMはDSリストの要求に対し、管理しているDSのリストをスキャニングアプリケーションに応答する(S604)。 (2) When the user opens the DS selection screen of the scanning application (S602), the scanning application requests the DSM from the DS list incorporated in the PC (S603). In response to the request for the DS list, the DSM responds to the scanning application with the list of managed DSs (S604).

(3)DSMよりDSリストを受け取ったスキャニングアプリケーションは、スキャニングアプリケーション上にDSのリストを表示する(S605)。このとき、正規のDSと共に仮想DS(SX Virtual TWAIN)も表示される。図14にDS選択画面例を示す。ここでは、ユーザは自動接続機能を利用するため、仮想DSである「SX Virtual TWAIN」を選択する。 (3) Upon receiving the DS list from the DSM, the scanning application displays the DS list on the scanning application (S605). At this time, a virtual DS (SX Virtual TWAIN) is displayed together with the regular DS. FIG. 14 shows an example of the DS selection screen. Here, in order to use the automatic connection function, the user selects “SX Virtual TWAIN” which is a virtual DS.

(4)ユーザがDSのリストから仮想DSを選択し(S606)、スキャニングアプリケーションからスキャンの指示を出すことで(S607)、DSMに対しOPENコマンドが送信される(S608)。S606に示すように、スキャニングアプリケーションから仮想DSをDSとして選択することで、スキャニングアプリケーションからのコマンドは全て仮想DSに対して送られることとなる。
ここでOPENコマンドとは、DSMを使用する際、最初に必要となる複数のTWAINコマンド群の総称である。これら一連のコマンド群の処理が完了した後、実際のスキャンデータの通信が可能になる。また、S606に示す仮想DSを選択する処理は、必ずしも毎回必須ではなく、既に選択されている場合は不要としても良い。
(4) When the user selects a virtual DS from the DS list (S606) and issues a scan instruction from the scanning application (S607), an OPEN command is transmitted to the DSM (S608). As shown in S606, all the commands from the scanning application are sent to the virtual DS by selecting the virtual DS as the DS from the scanning application.
Here, the OPEN command is a generic name for a plurality of TWAIN command groups that are first required when using DSM. After the processing of the series of commands is completed, actual scan data can be communicated. Further, the process of selecting the virtual DS shown in S606 is not necessarily required every time, and may be unnecessary when already selected.

(5)アプリケーションからOPENコマンドを受け取ったDSMは、このOPENコマンドを仮想DSに送る(S609)。仮想DSではコマンド制御部がDSMからのTWAINコマンドを監視しており、特定のコマンドを検出すると、これに従った処理を実行する。ここで、DSMから受けとったOPENコマンドは特定の処理に関連づけられている。 (5) The DSM that has received the OPEN command from the application sends this OPEN command to the virtual DS (S609). In the virtual DS, the command control unit monitors the TWAIN command from the DSM, and when a specific command is detected, processing according to this is executed. Here, the OPEN command received from the DSM is associated with a specific process.

(6)コマンド処理部はこのOPENコマンドを受け取ったことに反応し、次の処理を実行する。先ずは、このOPENコマンドをコマンドバッファ部に保存(S610)する。(7)次に、設定保持部から自動接続の選択がなされているスキャナに対応するUSBデバイスサーバのIPアドレスおよびスキャナ名等、接続に必要な情報を読み込む(S611)。さらに、読み込んだ情報に従って、仮想USBポートドライバ制御部を介して、仮想USBポートドライバに対し、PCとスキャナとの接続を指示する(S612)。 (6) In response to receiving this OPEN command, the command processing unit executes the next processing. First, the OPEN command is saved in the command buffer unit (S610). (7) Next, information necessary for connection such as the IP address and scanner name of the USB device server corresponding to the scanner for which automatic connection is selected is read from the setting holding unit (S611). Further, according to the read information, the virtual USB port driver is instructed to connect the PC and the scanner via the virtual USB port driver control unit (S612).

(8)仮想USBポートドライバは、S612により受け取った接続要求指示に応答して、USBデバイスサーバに対し接続されているスキャナのディスクリプタ情報を要求する(S613)。
(9)次に、USBデバイスサーバよりこれに対する応答を受信すると(S614)、OSに対しスキャナのプラグアンドプレイ(PnP)を通知すると同時に、PCとスキャナとの間の接続を確立する(S615)。
(8) In response to the connection request instruction received in S612, the virtual USB port driver requests descriptor information of the connected scanner from the USB device server (S613).
(9) Next, when a response is received from the USB device server (S614), the plug-and-play (PnP) of the scanner is notified to the OS, and at the same time, the connection between the PC and the scanner is established (S615). .

(10)この後、接続が完了した旨を仮想DSの仮想USBポートドライバ制御部に対して通知する(S616)。この処理が完了した時点で、USBデバイスサーバに接続されたスキャナとPCは、ネットワーク越しに接続される事となる。
(11)接続完了通知を受け取った仮想DSは、これに反応してS610で保持しておいたOPENコマンドをDSに対して送信し(S640)、DSよりこれに対する完了応答(S641)を受け取る。次いで、仮想DSは、この完了応答をDSMに返し(S617)、同時にコマンドバッファ部に保存しておいたOPENコマンドを消去する(図示せず)。
(10) Thereafter, the virtual USB port driver controller of the virtual DS is notified that the connection has been completed (S616). When this process is completed, the scanner and the PC connected to the USB device server are connected over the network.
(11) Upon receiving the connection completion notification, the virtual DS responds to this by transmitting the OPEN command held in S610 to the DS (S640) and receives a completion response (S641) from the DS. Next, the virtual DS returns this completion response to the DSM (S617), and at the same time, deletes the OPEN command stored in the command buffer unit (not shown).

(12)OPENコマンドに対する完了応答を受け取ったDSMは、この旨をスキャニングアプリケーションに応答する(S618)。
(13)スキャニングアプリケーションはS618を受け取ることにより、DSMに対するOPEN処理が完了したことを認識する。即ち、画像取得コマンドが発行可能な状態になる。
(12) Upon receiving the completion response to the OPEN command, the DSM responds to this to the scanning application (S618).
(13) Upon receiving S618, the scanning application recognizes that the OPEN process for the DSM has been completed. That is, the image acquisition command can be issued.

(14)スキャニングアプリケーションは、画像取得コマンドをDSMに対して発行する(S619)。
(15)DSMはこのコマンドを仮想DSに対し送り(S620)、仮想DSではこのコマンドを透過的に(S621)DSに送る(S622)。ここで透過的とは、DSMより受け取った画像取得コマンドに対し、一切の処理を加えないというのではなく、コマンドの要旨を変えない範囲での処理は含む。
例えば、各ベンダ若しくはスキャナごとに異なるDSの動作に合わせ、コマンドの送るタイミング等を変化させるなどである。即ちこの場合、タイミングは変更しても、コマンド自身に加工は加えない。
(14) The scanning application issues an image acquisition command to the DSM (S619).
(15) The DSM sends this command to the virtual DS (S620), and the virtual DS sends this command transparently (S621) to the DS (S622). Here, “transparent” does not mean that no processing is applied to the image acquisition command received from the DSM, but includes processing within a range in which the gist of the command is not changed.
For example, the command transmission timing may be changed in accordance with the DS operation that is different for each vendor or scanner. That is, in this case, even if the timing is changed, no processing is added to the command itself.

(16)DSはステップS622により画像取得コマンドを受け取ると、これを仮想USBポートドライバに送る(S623)。
(17)仮想USBポートドライバは、ステップS623による画像取得コマンドを、ネットワーク越しに接続されているスキャナに対して送信し(S624)、これに対する応答であるスキャナからの画像データを受信する(S625)。
(16) Upon receiving the image acquisition command in step S622, the DS sends this to the virtual USB port driver (S623).
(17) The virtual USB port driver transmits the image acquisition command in step S623 to the scanner connected over the network (S624), and receives image data from the scanner as a response to the command (S625). .

(18)仮想USBポートドライバは、この画像データをそのままDSに対して送り(S626)、DSは受け取った画像データを仮想DSに送る(S627)。
(19)仮想DSでは、この画像データを透過的(S628)にDSMに送る(S629)。DSMはこの画像データをスキャニングアプリケーションに送る(S630)。
(20)画像データを受信したスキャニングアプリケーションは、これを画面上にスキャンデータとして表示する(S631)。
(18) The virtual USB port driver sends the image data as it is to the DS (S626), and the DS sends the received image data to the virtual DS (S627).
(19) In the virtual DS, this image data is transmitted transparently (S628) to the DSM (S629). The DSM sends this image data to the scanning application (S630).
(20) The scanning application that has received the image data displays it as scan data on the screen (S631).

以上が一連の画像取得の流れであるが、実際には、スキャニングアプリケーションが画像取得コマンドを発行してから(S619)、画像データを受け取る(S630)までのシーケンスが繰り返し実行されることで、スキャニングアプリケーションが画像データを得る。   The above is the flow of a series of image acquisition. Actually, the sequence from the scanning application issuing the image acquisition command (S619) to receiving the image data (S630) is repeatedly executed. The application gets image data.

次に、第1の実施形態におけるPCからスキャナに対する自動切断シーケンスについて説明する。図7は自動切断処理のシーケンスを示している。
(1)先ず、スキャニングアプリケーションから画像取得指示を出すと、TWAIN画面が起動するが、自動切断処理では、このTWAIN画面が閉じられることをトリガとして処理が開始する。TWAIN画面が閉じられたことにより(S701)、スキャニングアプリケーションからはCLOSEコマンドがDSMに送られる(S702)。
ここでCLOSEコマンドとは、OPENコマンドと同様、クローズ処理に必要な一連のTWAINコマンド群の総称である。
Next, an automatic cutting sequence from the PC to the scanner in the first embodiment will be described. FIG. 7 shows a sequence of automatic cutting processing.
(1) First, when an image acquisition instruction is issued from the scanning application, the TWAIN screen is activated. In the automatic disconnection process, the process starts with the closing of the TWAIN screen as a trigger. When the TWAIN screen is closed (S701), a CLOSE command is sent from the scanning application to the DSM (S702).
Here, the CLOSE command is a general term for a series of TWAIN commands necessary for the close process, as with the OPEN command.

(2)DSMはこのコマンドを仮想DSに送り(S703)、仮想DSはDSMにCLOSEコマンドに対する完了応答をする(S704)。
(3)DSMはこの完了応答をスキャニングアプリケーションに返し(S705)、この処理を以て、CLOSEコマンドに対する、全てのクローズ処理が完了する。
(4)一方、仮想DSは、S704にてCLOSEコマンドに対する応答を返した後、仮想USBポートドライバに対し、スキャナとPCとの接続を切断するよう要求する(S706)。
(5)この要求を受け取った仮想USBポートドライバは、OSに対し該当スキャナが取り外されたことを示すPnPを発行する(S707)。
(6)次いで、PCとスキャナとの接続を切断する(S708)。
(7)この後、切断が完了した旨を仮想DSの仮想USBポートドライバ制御部に対して通知する(S709)。
この処理を以て、自動切断処理は完了する。
(2) The DSM sends this command to the virtual DS (S703), and the virtual DS sends a completion response to the CLOSE command to the DSM (S704).
(3) The DSM returns this completion response to the scanning application (S705). With this process, all the close processes for the CLOSE command are completed.
(4) On the other hand, after returning a response to the CLOSE command in S704, the virtual DS requests the virtual USB port driver to disconnect the scanner from the PC (S706).
(5) Upon receiving this request, the virtual USB port driver issues PnP indicating that the corresponding scanner has been removed to the OS (S707).
(6) Next, the connection between the PC and the scanner is disconnected (S708).
(7) Thereafter, the virtual USB port driver control unit of the virtual DS is notified that the disconnection has been completed (S709).
With this process, the automatic cutting process is completed.

なお、スキャナとの切断を要求するS706の処理は、DSMからのCLOSEコマンドの全てに応答した後でなければならないわけでなくこの処理と同時に進めても良い。即ち、ステップS703とS704の間に実行しても良い。さらに、この自動切断処理は必ずしも実行される必要はなく、設定アプリケーション等の手段によって、この実行のON/OFFを切り換えるようにしても良い。   Note that the processing of S706 for requesting disconnection from the scanner does not have to be after responding to all CLOSE commands from the DSM, and may be performed simultaneously with this processing. That is, it may be executed between steps S703 and S704. Further, the automatic disconnection process does not necessarily have to be executed, and the execution may be switched on / off by means such as a setting application.

第1の実施形態によれば、USBデバイスサーバシステムにおいて、ユーザがスキャナを利用する際、予めPCとスキャナを手動で接続する必要がなくなる。このため、第1の実施形態にかかる発明は、面倒な作業が不要になるだけでなく、ローカルに接続されたスキャナと同様の手順で利用できることから、ネットワークを意識する必要が無くコンピュータに不慣れなユーザにとっても利用しやすいものである。
また、スキャナの使用が終わると自動的にPCとスキャナとの接続を切断するので、切断をし忘れた事によるスキャナの占有が発生せず、リソースを有効に共有できる。
According to the first embodiment, in the USB device server system, when the user uses the scanner, there is no need to manually connect the PC and the scanner in advance. For this reason, the invention according to the first embodiment is not only troublesome work, but also can be used in the same procedure as a locally connected scanner, so it is not necessary to be aware of the network and is unfamiliar with the computer. It is easy for users to use.
Further, since the connection between the PC and the scanner is automatically disconnected after the use of the scanner is finished, the occupation of the scanner due to forgetting to disconnect does not occur, and resources can be effectively shared.

次に、第2の実施形態として、自動接続対象のスキャナが他のPCによって利用中かどうかの状態を監視し、対象のスキャナが利用可能になるとメッセージにて通知され得ることが可能な実施形態について説明する。図8は、第2の実施形態における仮想DSの機能ブロック図を示している。
第2の実施形態では、図8に示すように第1の実施形態と比較し、仮想DSにリソース確認部およびメッセージ表示部が追加されている。リソース確認部は、任意のPCとスキャナとの接続が確立されているか否かを確認するものである。
Next, as a second embodiment, an embodiment in which the status of whether or not the scanner to be automatically connected is being used by another PC can be monitored and a message can be notified when the target scanner becomes available Will be described. FIG. 8 shows a functional block diagram of the virtual DS in the second embodiment.
In the second embodiment, as shown in FIG. 8, a resource confirmation unit and a message display unit are added to the virtual DS as compared to the first embodiment. The resource confirmation unit confirms whether or not a connection between an arbitrary PC and the scanner is established.

USBデバイスサーバシステムにおいて、スキャナは排他的に利用するものである。即ち接続を確立している1台のPCからしかスキャンが行えない。スキャナを利用したい複数のPCが存在する場合に、既に確立されているPCとスキャナとの接続が解除された後でなければ、他のPCが当該スキャナとの間で接続を確立できない。
第2の実施形態では、スキャニングアプリケーションから画像取得が指示された際、接続先スキャナの接続状態を把握するため、リソース確認部がUSBデバイスサーバに問い合わせを行うようにしている。この結果を以て、PCとスキャナとの接続を実行するか否かを決定する。以下、図9に示すフローチャートを用いて、第2の実施形態における仮想DSの処理の流れを説明する。
In the USB device server system, the scanner is exclusively used. That is, scanning can be performed only from one PC that has established a connection. When there are a plurality of PCs that want to use the scanner, other PCs cannot establish a connection with the scanner unless the connection between the already established PC and the scanner is released.
In the second embodiment, when an image acquisition is instructed from the scanning application, the resource confirmation unit makes an inquiry to the USB device server in order to grasp the connection state of the connection destination scanner. Based on this result, it is determined whether or not the connection between the PC and the scanner is executed. Hereinafter, the flow of processing of the virtual DS in the second embodiment will be described using the flowchart shown in FIG.

図9に示す第2の実施形態における仮想DSの処理フローチャートは、図6に示される第1の実施形態の自動接続シーケンス図のうち、ステップS611以降における仮想DSの処理を示すものである。即ち、コマンド処理部がDMSからのOPENコマンドを受信したことに反応して、設定保持部から接続先情報を読み込んだ後の処理である。   The virtual DS processing flowchart in the second embodiment shown in FIG. 9 shows the virtual DS processing in step S611 and subsequent steps in the automatic connection sequence diagram of the first embodiment shown in FIG. That is, it is processing after the connection destination information is read from the setting holding unit in response to the command processing unit receiving the OPEN command from the DMS.

第2の実施形態における仮想DSの処理フローについて以下に説明する。
(1)先ず、リソース確認部が接続先情報を下に、該当のUSBデバイスサーバに対し所望のスキャナが利用可能かどうかを問い合わせる(S901)。
(2)受信した応答の結果(S902)、利用可能ならば本処理は終了し、図6に示すステップS612以降の処理を続ける。一方、他のPCが接続しているなど、利用可能でないならば、リソース確認部はメッセージ表示部に対し、利用中の旨を示すメッセージを表示させる(S903)。
(3)次に、コマンド処理部は、図6に示すステップS610で保存したOPENコマンドに対する応答を返す(S904)。なお、この応答はOPENに失敗した旨を含むものである。
(4)メッセージ表示部は、ステップS905で接続先スキャナの接続状態を監視するかどうかのメッセージを表示し、得られたユーザの判断によりこの後の処理を分岐させる(S905)。監視しないならば、本処理は終了し、スキャニングアプリケーションからの操作待ち状態、即ちユーザからの操作を待つ状態になる。監視するなら、リソース確認部は、ステップS906,S907に示すように、該当スキャナの接続状態が利用可能になるまで繰り返し確認する。
(5)この結果、利用可能になったことを検出すると、メッセージ表示部に対し利用可能になった旨を表示させ(S908)、本処理は終了する。
The processing flow of the virtual DS in the second embodiment will be described below.
(1) First, the resource confirmation unit makes an inquiry to the corresponding USB device server as to whether or not a desired scanner can be used under the connection destination information (S901).
(2) As a result of the received response (S902), if it can be used, this processing ends, and the processing from step S612 shown in FIG. 6 is continued. On the other hand, if it is not available, such as another PC is connected, the resource confirmation unit displays a message indicating that it is in use on the message display unit (S903).
(3) Next, the command processing unit returns a response to the OPEN command stored in step S610 shown in FIG. 6 (S904). This response includes that the OPEN has failed.
(4) In step S905, the message display unit displays a message as to whether or not to monitor the connection status of the connection destination scanner, and branches subsequent processing based on the obtained user's judgment (S905). If it is not monitored, this process ends, and a state of waiting for an operation from the scanning application, that is, a state of waiting for an operation from the user is entered. When monitoring, the resource confirmation unit repeatedly confirms the connection status of the corresponding scanner until it becomes available as shown in steps S906 and S907.
(5) As a result, when it is detected that it can be used, the message display unit displays that it can be used (S908), and this processing ends.

第2の実施形態によれば、あるPCから画像取得を実行した際、他のPCが既にこのスキャナを使用中の場合でも、画像取得を実行したPCのスキャニングアプリケーションがタイムアウト等の好ましくない処理を実行することを防ぐことができる。
また、他のPCによる利用中の状態を監視し、リソースが利用可能になるとこの旨がメッセージにて通知されるため、ユーザは何度もタイムアウト等のエラー処理に遭遇したり、手動で接続状態を何度もチェックする必要がない。
According to the second embodiment, when an image is acquired from a certain PC, even if another PC is already using this scanner, the scanning application of the PC that has performed the image acquisition performs an undesirable process such as a timeout. It can be prevented from executing.
In addition, the status of use by other PCs is monitored, and when a resource becomes available, this fact is notified by a message, so the user may encounter error processing such as timeouts many times, or manually connect There is no need to check repeatedly.

次に、第3の実施形態として、スキャン指示が出されてから実際にスキャンが開始されるまでにタイムラグを設けることが可能な実施形態について説明する。図10は、第3の実施形態における仮想DSの機能ブロック図を示している。
図10に示すように第3の実施形態では、第1の実施形態と比較し、仮想DSにタイマ部を追加する。以下、図11に示すフローチャートを用いて、第3の実施形態における仮想DSの処理の流れを説明する。
Next, as a third embodiment, an embodiment in which a time lag can be provided from when a scan instruction is issued to when scanning is actually started will be described. FIG. 10 shows a functional block diagram of the virtual DS in the third embodiment.
As shown in FIG. 10, in the third embodiment, a timer unit is added to the virtual DS as compared with the first embodiment. Hereinafter, the flow of processing of the virtual DS in the third embodiment will be described using the flowchart shown in FIG.

図11に示す第3の実施形態における仮想DSの処理フローチャートは、図6に示される第1の実施形態の自動接続シーケンス図におけるステップS621に相当する部分である。即ち、第3の実施形態における自動接続シーケンス図は、図6のシーケンス図において、ステップS621の部分が図11に示されるフローに替わり、その他の部分は図6と同じである。   The processing flowchart of the virtual DS in the third embodiment shown in FIG. 11 is a part corresponding to step S621 in the automatic connection sequence diagram of the first embodiment shown in FIG. That is, the automatic connection sequence diagram of the third embodiment is the same as that of FIG. 6 except that the step S621 in the sequence diagram of FIG. 6 is replaced with the flow shown in FIG.

第3の実施形態における仮想DSの処理フローについて以下に説明する。
(1)先ず、仮想DSはDSMより画像取得コマンドを受信すると、コマンド処理部がこの画像取得コマンドを検出する(S1101)。
(2)画像取得コマンドを検出すると、このコマンドをコマンドバッファ部に保存し(S1102)、さらにタイマ部を起動(S1103)する。
(3)タイマ部では所定の時間を保持しており、この時間に達するまでの判定を繰り返し実行する(S1104)。
(4)所定の時間に達した場合、コマンド処理部はステップS1102で保存しておいた画像取得コマンドを読み込み、DSに対してこのコマンドを送る(S1105)。
(5)次に、コマンド処理部はタイマ部のタイマを初期値“0”にリセットする(S1106)。なお、タイマ部に設定されている所定の時間は、設定アプリケーションなどの手段により任意の値を設定することができる。
The processing flow of the virtual DS in the third embodiment will be described below.
(1) First, when the virtual DS receives an image acquisition command from the DSM, the command processing unit detects the image acquisition command (S1101).
(2) When an image acquisition command is detected, the command is stored in the command buffer unit (S1102), and the timer unit is started (S1103).
(3) The timer unit holds a predetermined time, and the determination until this time is reached is repeatedly executed (S1104).
(4) When the predetermined time is reached, the command processing unit reads the image acquisition command stored in step S1102, and sends this command to the DS (S1105).
(5) Next, the command processing unit resets the timer of the timer unit to the initial value “0” (S1106). The predetermined time set in the timer unit can be set to an arbitrary value by means such as a setting application.

以上の処理(1)〜(5)から明らかなように、第3の実施形態のタイマ部は、第1の実施形態だけでなく、第2の実施形態に付加することも可能である。   As is clear from the above processes (1) to (5), the timer unit of the third embodiment can be added to the second embodiment as well as the first embodiment.

第3の実施形態によれば、スキャン指示を出してから実際にスキャンが開始されるまでのタイムラグを、ユーザが任意に設定できる。USBデバイスサーバは、ネットワークで利用されるものであり、これに接続されているスキャナはPCから離れた位置にある場合が多い。
スキャナの場合、まずスキャナ本体にスキャン対象(紙など)をセットする必要があるが、予めユーザがこれをセットし、PCに戻りスキャンを実行し、さらにスキャン完了後、再びスキャナ本体に赴き、スキャン対象を回収する。この場合、ユーザはPCとスキャナ本体との間を2往復しなくてはならない。本実施形態では、予め設定された時間だけ画像取得コマンドを保持するので、実際のスキャン動作はユーザがスキャンの実行を指示してから、所定のタイムラグの後、開始されることになる。
即ち、ユーザは、PCにてスキャンを指示し、スキャナ本体に赴きスキャナ対象をセットした後、実際のスキャンが開始され、これが終わるとスキャン対象を取り出しPCに戻ればよいだけである。
なお、コマンドを保持する時間はユーザが任意に設定できるので、例えばスキャニングアプリケーション毎に異なるタイムアウトの時間に対し、柔軟に対応できる。
According to the third embodiment, the user can arbitrarily set the time lag from when the scan instruction is issued until the actual scan is started. The USB device server is used in a network, and a scanner connected to the USB device server is often located away from the PC.
In the case of a scanner, it is necessary to first set the scan target (paper, etc.) on the scanner body, but the user sets it in advance, returns to the PC and executes the scan. Collect the subject. In this case, the user must make two reciprocations between the PC and the scanner body. In the present embodiment, since the image acquisition command is held for a preset time, the actual scanning operation is started after a predetermined time lag after the user instructs the execution of scanning.
That is, the user instructs scanning on the PC, sets the scanner target on the scanner body, starts the actual scanning, and when this is finished, the user only needs to take out the scanning target and return to the PC.
In addition, since the user can arbitrarily set the time for holding the command, for example, it is possible to flexibly cope with a time-out time that differs for each scanning application.

本発明のスキャナ自動接続プログラムは、スキャナをネットワーク上で共用するシステムに利用できる。   The scanner automatic connection program of the present invention can be used in a system that shares a scanner on a network.

USBデバイスサーバのシステム概略図System diagram of USB device server USBデバイスサーバシステムを使用しない場合におけるPC内部の機能ブロック図Functional block diagram inside the PC when the USB device server system is not used 本発明の仮想DSを用いないUSBデバイスサーバシステムにおけるPC内部の機能ブロック図Functional block diagram inside PC in USB device server system not using virtual DS of the present invention 本発明の仮想DSを組み込んだPC内部の機能ブロック図Functional block diagram inside a PC incorporating the virtual DS of the present invention 第1の実施形態の仮想DSの機能ブロック図Functional block diagram of the virtual DS of the first embodiment 第1の実施形態における自動接続シーケンス図Automatic connection sequence diagram in the first embodiment 第1の実施形態における自動切断シーケンス図Automatic cutting sequence diagram in the first embodiment 第2の実施形態の仮想DSの機能ブロック図Functional block diagram of the virtual DS of the second embodiment 第2の実施形態における仮想DSの処理フローチャートProcess flow of virtual DS in the second embodiment 第3の実施形態の仮想DSの機能ブロック図Functional block diagram of the virtual DS of the third embodiment 第3の実施形態における仮想DSの処理フローチャートProcess flow of virtual DS in the third embodiment 設定保持部が持つ情報テーブルの一例An example of the information table held by the setting holding unit ユーザが自動接続したいスキャナに対応するDSを選択する画面の一例An example of a screen for selecting a DS corresponding to the scanner that the user wants to automatically connect DS選択画面の一例Example of DS selection screen 本発明を用いないUSBデバイスサーバシステムの処理フローチャートProcess flowchart of USB device server system not using the present invention

符号の説明Explanation of symbols

101a,101b,101c PC
102 ネットワーク
103 USBデバイスサーバ
104 USBデバイス
101a, 101b, 101c PC
102 Network 103 USB Device Server 104 USB Device

Claims (4)

1または複数のクライアントPCと、スキャナが接続されたUSBデバイスサーバとがネットワークで接続されたシステムにおいて、
自動接続に指定されたスキャナ選択情報を設定保持部に設定保存する機能と、
データソースマネージャ(DSM)からスキャン開始コマンドを受け取る機能と、
前記スキャン開始コマンドの処理対象が自動接続に指定されているスキャナであった場合に、前記スキャナが接続されたUSBデバイスサーバのネットワーク情報と前記スキャナを特定可能な情報とを前記設定保持部から読み込む機能と、
読み込んだ前記USBデバイスサーバの前記ネットワーク情報および前記スキャナに関する情報を、仮想USBポートドライバに対して送信する機能と、
データソース(DS)より画像取得コマンドを受け取り、これを透過的に前記仮想USBポートドライバへ送信する機能と、
を前記クライアントPCに実現させることを特徴とするスキャナ自動接続プログラム。
In a system in which one or more client PCs and a USB device server to which a scanner is connected are connected via a network,
A function to save the scanner selection information specified for automatic connection in the setting holding unit;
A function of receiving a scan start command from the data source manager (DSM);
When the processing target of the scan start command is a scanner designated for automatic connection, the network information of the USB device server to which the scanner is connected and information that can identify the scanner are read from the setting holding unit. Function and
A function of transmitting the read network information of the USB device server and information on the scanner to a virtual USB port driver;
A function of receiving an image acquisition command from a data source (DS) and transparently transmitting the command to the virtual USB port driver;
Is realized by the client PC.
請求項1記載のスキャナ自動接続プログラムにおいて、
前記DSMよりクローズコマンドを受け取ると、前記仮想USBポートドライバに対し、前記クライアントPCと前記スキャナとの切断を指示する要求を送信する機能、
をさらに前記クライアントPCに実現させることを特徴とするスキャナ自動接続プログラム。
The scanner automatic connection program according to claim 1,
A function of transmitting a request to instruct the virtual USB port driver to disconnect the client PC and the scanner upon receiving a close command from the DSM;
Is further realized by the client PC.
請求項1又は2に記載のスキャナ自動接続プログラムにおいて、さらに、
前記自動接続に指定されているスキャナが他のクライアントPCによって使用されているか否かを監視する機能と、
当該スキャナが他のクライアントPCによって使用中と判断する、または、当該スキャナが他のクライアントPCによる使用から解放されたと判断する場合に、メッセージを画面に表示する機能とを、
前記クライアントPCに実現させることを特徴とするスキャナ自動接続プログラム。
The scanner automatic connection program according to claim 1, further comprising:
A function for monitoring whether the scanner designated for the automatic connection is being used by another client PC;
A function for displaying a message on the screen when the scanner determines that the scanner is being used by another client PC, or when the scanner determines that the scanner is released from use by another client PC;
A scanner automatic connection program which is implemented in the client PC.
請求項1乃至3のいずれか1項に記載のスキャナ自動接続プログラムにおいて、
タイマ機能を備え、
前記DSMから自動接続に指定されているスキャナに対するスキャン開始コマンドを受け取った際、前記タイマ機能により設定されている所定の時間が経過するまでその後の処理を中断する機能を、
さらに前記クライアントPCに実現させることを特徴とするスキャナ自動接続プログラム。
In the scanner automatic connection program according to any one of claims 1 to 3,
It has a timer function,
A function of interrupting subsequent processing until a predetermined time set by the timer function elapses when a scan start command is received from the DSM for a scanner designated for automatic connection;
Further, a scanner automatic connection program which is implemented in the client PC.
JP2007023060A 2007-02-01 2007-02-01 Scanner automatic connection program Active JP4555926B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007023060A JP4555926B2 (en) 2007-02-01 2007-02-01 Scanner automatic connection program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007023060A JP4555926B2 (en) 2007-02-01 2007-02-01 Scanner automatic connection program

Publications (2)

Publication Number Publication Date
JP2008193217A true JP2008193217A (en) 2008-08-21
JP4555926B2 JP4555926B2 (en) 2010-10-06

Family

ID=39752914

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007023060A Active JP4555926B2 (en) 2007-02-01 2007-02-01 Scanner automatic connection program

Country Status (1)

Country Link
JP (1) JP4555926B2 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011014023A (en) * 2009-07-03 2011-01-20 Nec Corp Relay means, relay system, relay method, and program
JP2011014036A (en) * 2009-07-03 2011-01-20 Silex Technology Inc Device and program for managing peripheral equipment
EP2343647A3 (en) * 2010-01-12 2012-01-04 KCODES Corporation Processing system and method for connecting a remote USB device automatically
JP2012137878A (en) * 2010-12-24 2012-07-19 Canon Imaging Systems Inc Client device, device control device, control method thereof and device control system
JP2012173910A (en) * 2011-02-21 2012-09-10 Seiko Epson Corp Network system, device server, and control method for network system
JP2012190092A (en) * 2011-03-09 2012-10-04 Silex Technology Inc Device utilization system with interface switching function
JP2013012247A (en) * 2012-10-04 2013-01-17 Canon Imaging Systems Inc Device sharing client and device sharing method
JP2013038784A (en) * 2011-08-08 2013-02-21 Pfu Ltd Scanning apparatus, scanning method, and computer program
JP2013058018A (en) * 2011-09-07 2013-03-28 Toshiba Corp Remote access system, electronic equipment and remote access processing method
JP2015138526A (en) * 2014-01-24 2015-07-30 サイレックス・テクノロジー株式会社 Device information display apparatus, device server, device information display system, device information display method, and program
JP2016053836A (en) * 2014-09-03 2016-04-14 東芝テック株式会社 Information processor, terminal apparatus and program
US9426312B2 (en) 2013-11-28 2016-08-23 Fuji Xerox Co., Ltd. Management apparatus implementing cancellation condition, information processing apparatus, distribution apparatus, management system, management method, and non-transitory computer readable medium
CN112311943A (en) * 2019-08-01 2021-02-02 深信服科技股份有限公司 Data scanning optimization method, device and system and related components
JP2022532604A (en) * 2019-05-14 2022-07-15 華為技術有限公司 How to remotely access data on a USB device with a virtual machine

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006139587A (en) * 2004-11-12 2006-06-01 Seiko Epson Corp Control for network device corresponding to network type plug-and-play
JP2007072793A (en) * 2005-09-07 2007-03-22 Seiko Epson Corp Control of network device responding to network type plug and play

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006139587A (en) * 2004-11-12 2006-06-01 Seiko Epson Corp Control for network device corresponding to network type plug-and-play
JP2007072793A (en) * 2005-09-07 2007-03-22 Seiko Epson Corp Control of network device responding to network type plug and play

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011014036A (en) * 2009-07-03 2011-01-20 Silex Technology Inc Device and program for managing peripheral equipment
JP2011014023A (en) * 2009-07-03 2011-01-20 Nec Corp Relay means, relay system, relay method, and program
EP2343647A3 (en) * 2010-01-12 2012-01-04 KCODES Corporation Processing system and method for connecting a remote USB device automatically
JP2012137878A (en) * 2010-12-24 2012-07-19 Canon Imaging Systems Inc Client device, device control device, control method thereof and device control system
US9398074B2 (en) 2011-02-21 2016-07-19 Seiko Epson Corporation Network system, device server, and network system control method
JP2012173910A (en) * 2011-02-21 2012-09-10 Seiko Epson Corp Network system, device server, and control method for network system
US10063731B2 (en) 2011-02-21 2018-08-28 Seiko Epson Corporation Network system, device server, and network system control method
US9977639B2 (en) 2011-02-21 2018-05-22 Seiko Epson Corporation Network system, device server, and network system control method
JP2012190092A (en) * 2011-03-09 2012-10-04 Silex Technology Inc Device utilization system with interface switching function
JP2013038784A (en) * 2011-08-08 2013-02-21 Pfu Ltd Scanning apparatus, scanning method, and computer program
US9037629B2 (en) 2011-09-07 2015-05-19 Kabushiki Kaisha Toshiba Remote access system, electronic apparatus and method of processing remote access
JP2013058018A (en) * 2011-09-07 2013-03-28 Toshiba Corp Remote access system, electronic equipment and remote access processing method
JP2013012247A (en) * 2012-10-04 2013-01-17 Canon Imaging Systems Inc Device sharing client and device sharing method
US9426312B2 (en) 2013-11-28 2016-08-23 Fuji Xerox Co., Ltd. Management apparatus implementing cancellation condition, information processing apparatus, distribution apparatus, management system, management method, and non-transitory computer readable medium
JP2015138526A (en) * 2014-01-24 2015-07-30 サイレックス・テクノロジー株式会社 Device information display apparatus, device server, device information display system, device information display method, and program
JP2016053836A (en) * 2014-09-03 2016-04-14 東芝テック株式会社 Information processor, terminal apparatus and program
US9792237B2 (en) 2014-09-03 2017-10-17 Toshiba Tec Kabushiki Kaisha Information processing apparatus capable of connecting with peripheral device and terminal apparatus capable of communicating with the information processing apparatus
JP2022532604A (en) * 2019-05-14 2022-07-15 華為技術有限公司 How to remotely access data on a USB device with a virtual machine
CN112311943A (en) * 2019-08-01 2021-02-02 深信服科技股份有限公司 Data scanning optimization method, device and system and related components
CN112311943B (en) * 2019-08-01 2023-02-03 深信服科技股份有限公司 Data scanning optimization method, device and system and related components

Also Published As

Publication number Publication date
JP4555926B2 (en) 2010-10-06

Similar Documents

Publication Publication Date Title
JP4555926B2 (en) Scanner automatic connection program
US10291800B2 (en) Apparatus, method and storage medium that stores program
US20090019187A1 (en) Peripheral Device Using Method, and Peripheral Device Server
US20230269338A1 (en) Printing apparatus for displaying predetermined display screen for requesting printing to the printing apparatus and control method thereof, and non-transitory computer-readable medium
JP2007219711A (en) Remote device control program
JP6155607B2 (en) Communication relay program and communication relay device
JP4333764B2 (en) Device control system
JP6182904B2 (en) COMMUNICATION TERMINAL DEVICE, COMMUNICATION CONTROL METHOD, AND COMMUNICATION CONTROL PROGRAM
JP6011167B2 (en) Communication relay program and communication relay device
EP3567467B1 (en) Mobile terminal device, and method and computer readable medium for the same
US20080043110A1 (en) Image Input Device, Control Method Thereof and Image Input System
US20170366701A1 (en) Image processing system, control apparatus, image processing apparatus, and methods of controlling these
JP2008245046A (en) Multifunction peripheral, and device control system
JP6696169B2 (en) Function executing device, function executing method, and storage medium
JP2008242975A (en) Compound machine and device control system
JP2008097587A (en) Client apparatus, network system and program
JP4105010B2 (en) Digital camera, digital camera image data transmission method, and image data transmission / reception system
JP4649584B2 (en) Peripheral device driver installation system
US11079983B2 (en) Information processing apparatus that saves, in a shared memory, information for accessing a device using a URL via a USB, and method of controlling same
US20170031668A1 (en) Peripheral apparatus and method
JP5837189B2 (en) Shared access to local device
JP6086183B2 (en) Information processing system, information processing method, server, control method thereof, and control program
US9380199B2 (en) Recording medium and control method thereof
JP5311996B2 (en) Image processing apparatus, image processing apparatus control method, and computer program
JP2020166466A (en) Combination of programs and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100129

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20100319

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20100402

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100423

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100531

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: 20100615

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100616

R150 Certificate of patent or registration of utility model

Ref document number: 4555926

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130730

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250